Guest/HostもmacなVirtualBoxのストレージの拡張方法

コマンドラインを使ってVMのストレージ容量を拡張

まずは、VMのUUIDを調べる。

$ VBoxManage list hdds
    UUID:           1fee78f5-ae4a-4d74-8571-7ac918ff56cb
    Parent UUID:    base
    State:          created
    Type:           normal (base)
    Location:       ~/VirtualBox VMs/VmMac_13/VmMac01.vdi
    Storage format: VDI
    Capacity:       30720 MBytes
    Encryption:     disabled

対象とする、ストレージののUUIDがわかったら、対象のストレージのサイズを変更する

$ VBoxManage modifyhd 1fee78f5-ae4a-4d74-8571-7ac918ff56cb --resize 51200
0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%

こんな面倒な事をやらなくてもGUIで設定画面があった。

../../../_images/mediaMgr.png

スライダーで容量を調整できる。

diskutilでパーティションの変更

マシンを再起動して、F12を押しまくり、BIOSに入る。

そこで、リカバリ用の boot file を選択してbootする。

Boot Maitenance Manger ‣ Boot From File ‣ HD(3,GPT….) ‣ <com.apple.recovery.boot> ‣ boot.efi を選ぶ。

起動プロセスを継続して、しばらくすると、こんな画面になるので日本語を選ぶ。

../../../_images/selectLang.png

この画面で、ユーティリティ ‣ ターミナル を選ぶ。

../../../_images/selectUtility.png

これで、ターミナルのコマンドが使える。が、コピペが使えないので、手打ち。

まず、デバイスの確認。

$ diskutil list

多分、表示が多すぎのはずなので、絞り込む。

$ diskutil list /dev/disk0

ここで、出てくる。”Apple_HFS Machintosh HD”のサイズを変更したい。この行の末尾にある文字列”disk0s2”を識別子として使う。

最大容量の確認をする。

$ diskutil resizeVolume /dev/disk0s2 limits

最大容量が表示されるので、その値を使う。ここでは”52G”

$ diskutil resizeVolume /dev/disk0s2 52G

なぜか、エラーが発生した。”diskutil repairDisk”を実効せいとの事。 素直に従う。

$ diskutil repairDisk /dev/disk0

その後、再び、resizeVolumeを実行する。

$ diskutil resizeVolume /dev/disk0s2 52G

その後再起動をすると、VMの中のHDの容量が増えている。