#author("2018-02-27T23:05:21+09:00","default:tanak0to","tanak0to")
RIGHT:[[Mac 関係覚え書き]]

#contents
----
*コマンドによるボリューム名の変更 [#zebd9aa3]
 # diskutil rename /Volumes/現在のボリューム名  新しいボリューム名

----------------------------------------
*コマンドによるディスクイメージのマウント [#uaa3b1dd]
マウント
 # hdiutil mount イメージファイル

アンマウント
 # hdiutil unmount マウントパス
マウントパスは例えば /Volumes/Firefox など.

----------------------------------------
*ボリュームの再フォーマット [#c520d9b9]
 /usr/sbin/diskutil reformat /Volumes/${HOST}file

--------
*イメージのタイプを表示 [#kdd7ef15]
 $ hdiutil imageinfo -format System.dmg 
--------
*圧縮イメージを非圧縮イメージに [#i1483c78]
 $ hdiutil convert System.dmg -format UDRW -o OutFile.dmg

----------------------------------------
*ディスクイメージのフォーマットを増やす [#b5288198]
ディスクユーティリティで作成できるディスクイメージの
フォーマットを Mac 標準のもの以外のものに増やす.
 $ defaults write com.apple.DiskUtility advances-image-options -bool ture

----------------------------------------
*ボリュームが壊れてマウントできないときの対処 [#w961c0ef]
/Volumes/usr2 のマウントが外れている.

ディスクユーティリティでディスクをマウントしようとするが,
以下のようなエラーがsystem.logに記録されマウントされない.

 Aug 27 12:58:53 macnfs1 kernel: jnl: open: journal magic is bad (0x0 != 0x4a4e4c78)
 Aug 27 12:58:53 macnfs1 kernel: hfs: early jnl init: failed to open/create the journal (retval 0).

処置
-1) usr2 ボリュームが認識されているかどうか

管理者ユーザ(admin)でログインし,以下のコマンドを入力.

 admin$ diskutil list

次のような出力があり,name 欄に usr2 と表示されている行があれば,
OS からは認識されていると考えられる.

....
/dev/disk2
   #:                   type name               size      identifier
   0: Apple_partition_scheme                    *1.1 TB   disk2
   1:    Apple_partition_map                    31.5 KB   disk2s1
   2:             Apple_Boot                    8.5 MB    disk2s2
   3:              Apple_UFS usr1               992.3 GB  disk2s3
   4:              Apple_HFS space              144.7 GB  disk2s5
/dev/disk3
   #:                   type name               size      identifier
   0: Apple_partition_scheme                    *1.1 TB   disk3
   1:    Apple_partition_map                    31.5 KB   disk3s1
   2:             Apple_HFSX usr2               1.1 TB    disk3s3
....
 

-2) usr2 ボリュームのマウント

1) でボリュームが認識されているようであれば,次のコマンドで
ボリュームをマウントしてみてる.

 admin$ sudo diskutil mount /dev/disk3s3
 (ここで,disk3s3 の部分は,1) で出力させた結果の usr2 が書かれている行の
  identifier 欄に出ているデバイス名です.)

-3) fsck
 admin$ sudo fsck_hfs -f /dev/disk3s3

-4) 手動 mount
 admin$ sudo mkdir /tmp/a
 admin$ sudo mount /dev/disk3s3 /tmp/a


-5)強制的にジャーナル無効でマウントしてみる.念のため読み出し専用.

    % mkdir /tmp/a
    % sudo /System/Library/Filesystems/hfs.fs/hfs.util -MU disk3s3 \
    /tmp/a fixed readonly nosuid nodev

hfs.util コマンドに何もオプションを与えないと説明が出てくる.
(あるいは "man hfs.util").
ここでは
「ジャーナル無効で /dev/disk3s3 を読み出し専用の固定ディスクとして,
/tmp/a へ強制マウントせよ」
といった感じ.

マウントできたなら,あとは cp コマンドなどで別のディスクへ移す.
作業が終わったら一度シャットダウン.

で,一度これをやったらそれ以降は何もなかったように動くらしいのだが…
ログになんか出てる(ジャーナル情報をリセットしたようなことが出力されて
いる)

ちなみに,コマンドラインでジャーナリングの OFF をしてもいいかも.
 macnfs1 $ sudo diskutil disableJournal /dev/disk3s3
 Journaling disabled on /Volumes/usr2
 Journaling has been disabled on /dev/disk3s3


----
*[[tunefs>Mac/tunefs]] [#o8f1ca09]

----
*S.M.A.R.T エラー [#o54f35f0]
ディスクに S.M.A.R.T エラーが検出されるとディスクユーティリティに
次のような表示さされる..
で,OS は電源を入れ,白い画面のまま進まなくなる.
#ref(smarterror.JPG)

----
*Live Verification [#ob8caeeb]
Mac OS X 10.4.3 移以降では 起動中に Mac OS X ボリュームを検証卯できるようだ.
http://support.apple.com/kb/TS1417?viewlocale=ja_JP

**方法 1 [#y1a56eac]
管理者でディスクユーティリティを使う.

**方法 2 [#va4358e8]
管理者で以下のコマンドを実行する.
 $ diskutil verify /

**方法 3 [#caef91f8]
管理者で以下のコマンドを実行する.
 $ df -hl   (起動ディスクを確認)
 $ sudo fsck_hfs -l /dev/disk0s3

----
*SSD と HDD でFusion Drive を作成する [#oaeb5f6a]
ドライブの確認
 # diskutil 
 /dev/disk0
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *251.0 GB   disk0
   1:                        EFI EFI                     209.7 MB   disk0s1
   2:                  Apple_HFS Macintosh HD           +250.1 GB   disk0s2
   3:                 Apple_Boot Recovery HD             650.0 MB   disk0s3
 /dev/disk1
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *500.0 GB   disk1
   1:                        EFI EFI                     449.8 MB   disk1s1
 /dev/disk2
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *251.0 GB   disk2
   1:                        EFI EFI                     249.8 MB   disk2s1

ドライブをコンカチ(disk1 + disk2)
 # diskutil cs create "Fusion Drive" disk1 disk2
 ...
 Finished CoreStorage operation

ボリューム ID を調べる
 # diskutil cs list
 CoreStorage logical volume groups (1 found)
 |
 +-- Logical Volume Group XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX  <--
     =========================================================
     Name:         Macintosh HD
     Status:       Online
     Size:         250140434432 B (750.1 GB)
     Free Space:   18882560 B (748 GB)
 ......

ボリューム作成
 # diskutil coreStorage createVolume XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX jhfs+ "VolumeName" 100%

ちなみに,フージョンドライブを解除は
 # diskutil coreStorage delete XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX
で再起動.

----
*apfs_hfs_convert [#r7d00f45]
検証したい.


トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS