VirtualBoxの仮装ディスクが気がついたら肥大化してたので圧縮する方法を調べた【WordPress開発環境】
ここ最近はワードプレスはvccwでwordmoveで本番環境に反映させるという古いだろうが神な方法をみつけて楽しくワードプレステーマ作ったりしてるんですが気がついたらVirtualBoxのサイズが16ギガになってたのでわからないなりに圧縮してみましたw
目次
とりあえずvagrant up
vccwで作ったフォルダにcdしてvagrant upしてsshしておきます。
cd ファイル名
vagrant ssh
ゼロ書き込みたるものを実行する
sshしてる状態で、よくわからないけどゼロっていうファイル作ってそれを消すことでストレージが綺麗にいろいろ消せるみたい。
dd if=/dev/zero of=zero bs=1M; \rm zero
//上記のコマンド実行後に下記が表示される
dd: error writing 'zero': No space left on device
57607+0 records in
57606+0 records out
60404719616 bytes (60 GB, 56 GiB) copied, 775.581 s, 77.9 MB/s
//もしくは下記のコマンドを実行
sudo dd if=/dev/zero of=/zero bs=4k
//そのあとにこれ
sudo rm /zero
vmdkファイルをvdiにする
vmdkファイルだと圧縮できないらしいからクローンを作ってその形式をvdiにするらしい。とりあえずsshからexitしてvagrant haltもしておく。
exit
vagrant halt
VBoxManage list hdds
するとボックスのリストが出てきます。
UUID: lalalalalalala
Parent UUID: base
State: created
Type: normal (base)
Location: /Users/myName/VirtualBox VMs/text.lo/box-disk001.vmdk
Storage format: VMDK
Capacity: 65536 MBytes
Encryption: disabled
Locationを参照してコピペ。
VBoxManage clonehd '/Users/myName/VirtualBox VMs/text.lo/box-disk001.vmdk' '/Users/myName/VirtualBox VMs/text.lo/box-disk001.vdi' --format vdi
0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%
Clone medium created in format 'vdi'. UUID: NEWUUID1111111111
セミコロンと–format vdi忘れずに。
新しくできたvdiファイルを圧縮
上記で新しくできたUUIDをコピペして下記のように書きます。
VBoxManage modifyhd NEWUUID1111111111 --compact
0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%
今日から英語学習
ディスクの入れ替えと消去
VirtualBoxを開きます。
file => Virtual Media Managerを開きます。
ポップアップが出てくるので、元あった.vmdkデータをクリックして上部のReleaseをクリック。
すると使用しているhostnameが表示されるのでリリースをクリック。ホストネームが出てくるので間違って意図したボックスをリリースしてしまうことはないと思います。
リリースすると消せるようになるので今消してしまっても良いし動作確認をして消すのもありです。
Closeしたあとに使用するサイズを小さくする予定だったboxを右クリック。Settingが出てくるのでクリック。
すると下記のようなボックスが出てくるので
Strage => Controller: SATA Controllerの右側のアイコンをクリック
Choose existing deskをクリック
すると下記のような状態になるので
Not attachedの中からvdiファイルを選択。
これにて作業は完了です。vagrant upして確認してみましょう。
しっかり動いたのであればvmdkファイルをリリースして(先程行ってないのであれば)、大本のファイルも消去しましょう。
こんな感じです。これで少しはVirtualBoxの占有範囲が少なくなればと思いますw
それではSee Yaaaa!!!