VMware の肥大化した仮想ディスクを shrink する (その3) [vmware]

ホストで新しい仮想マシンの vmx ファイルを編集し、CD ブートを止めます。
ide1:0 の記述を下記のように変更します。

ide1:0.present = "TRUE"
#ide1:0.startConnected = "FALSE"

ide1:0.deviceType = "cdrom-raw"
ide1:0.fileName = "auto detect"

#ide1:0.deviceType = "cdrom-image"
#ide1:0.fileName = "D:\systemrescued-x86-1.3.0.iso"


partimage からリストアした新しい仮想マシンを起動すると GRUB 表示のまま、止まってしまって起動しませんでした。

dd で MBR の回復を試してみました。
まず、肥大化した vmdx の仮想マシンを partimage のレスキュー CD から起動し、dd で MBR をバックアップ。

# mount /dev/sdb1 /mnt/backup
# dd if=/dev/sda of=/mnt/backup/mbr bs=512 count=1


新しい仮想マシンを partimage のレスキュー CD から起動し、dd で MBR をリストア。

# mount /dev/sdb1 /mnt/backup
# dd if=/mnt/backup/mbr of=/dev/sda bs=446 count=1


これでも GRUB 表示のまま、止まってしまって起動しませんでした。

次に試したのが、grub-install。
新しい仮想マシンを partimage のレスキュー CD から起動し、下記を実行。

# mount /dev/sda1 /mnt
# grub-install --root-directory=/mnt /dev/sda1


これで GRUB が無事起動しました。


以上でやっと空き容量のある新しい HDD で shirnk したい仮想マシンが起動したので、vmware-toolbox を起動し、shink します。

# sudo vmware-toolbox


[Shrink] タブを開き、shrink するパーティションを選択し、[Shrink] ボタンをクリックします。


"Shrink Disk" ダイアログが表示されるので、[Yes] をクリックします。