Home » Program » VirtualBox 仮想ディスク サイズ圧縮・縮小 (Tag: )

自宅や出張時に使用しているノート PC (hp dv5 has broken again) はホスト OS を Windows 7, ゲスト OS に FreeBSD をインストールしています。

今回 Windows 7 は 32bit -> 64bit に入れ替えたついでに、FreeBSD 9.1-RELEASE (amd64) を新規インストールしました。

FreeBSD は大半を ports により構築しますが、完了直後は仮想ディスク (可変サイズ) は 10GB を超えていました。

ディスクサイズ 圧縮前

ディスクサイズ 圧縮前

portsclean -C や構築時に仮設置したファイルを削除した時点で、

Filesystem  1K-blocks    Used    Avail Capacity  Mounted on
/dev/ada0p2  58905148 5159152 49033588    10%    /
devfs               1       1        0   100%    /dev

ゲスト OS 側は 5GB 程度に収まっても、仮想ディスクのサイズは変わりません。

一度広げた領域は未使用分の領域も確保されたままとなり、ゲスト OS の使用サイズとは必ずしも一致しません。ファイルの参照情報のみ削除されて実体は残っているためです。

空き領域の 0 (ゼロ) 書き込み

FreeBSD (や Linux) がゲスト OS の場合は、dd コマンドによる 0 (ゼロ) 書き込みで空き領域を埋めます。

# dd if=/dev/zero of=zero bs=4k; \rm zero

/: write failed, filesystem is full
dd: zero: No space left on device
13414185+0 records in
13414184+0 records out
54944497664 bytes transferred in 1308.556569 secs (41988630 bytes/sec)

試してはいませんが、Windows がゲスト OS の場合は SDelete をダウンロードし、sdelete -z C: 等で同等の様です。

対象仮想ディスク 特定

UUID または Location を取得します。

VBoxManage list hdds

VBoxManage list hdds

–compact による仮想ディスク圧縮

UUID はタイプが手間なので、補完も効くファイルのパスで指定しましたが、

VBoxManage modifyhd [file] --compact (NG)

VBoxManage modifyhd [file] --compact (NG)

ゲスト OS が稼働している場合はエラーとなり、進みません。ゲスト OS をシャットダウンして再度実行すると

VBoxManage modifyhd [file] --compact (OK)

VBoxManage modifyhd [file] --compact (OK)

3, 4 分程度掛かりましたが、無事に成功しました。再度エクスプローラ側の表示を確認すると、

ディスクサイズ 圧縮後

ディスクサイズ 圧縮後

6GB を超えていますが、10GB からは明らかに縮小しました。ゲスト OS をエクスポートして保存する直前にも実行すると時間が短縮出来るでしょう。

Random Select

ESXi 5.1 Install (19)
VMware ESXi 5.1 Install (Part 1) の続きです。キーボードレイアウト選択root パスワード設定入力後、Enter を押すとインストール開始まで 1 – 2
Herb
記事を書くに際し、"褒める" と "ほめる" でどちらが検索エンジンにヒットするか調べた時に、褒めるトレーニングだとか、褒める技術の様なタイトルを目にしました。
豆カレー (ルー大盛り, 辛さ 70 倍)
前回の投稿 カリーライス専門店 エチオピア 本店 (No. 12 – 豆カレー 辛さ 50 倍) よりほぼ 1 年ぶりとなりました。その後 3 回程訪れた後は半年以上ブランクが開き、久しぶ
三鷹の森ジブリ美術館 (4)
三鷹の森ジブリ美術館 は 10 年程前に一度訪れていますが、今回連休中に再び訪れる機会がありました。まずは JR 三鷹駅まで電車の旅で、南口に降りるとコミュニティバスがあると聞いていました。てっきり無
クリスマスツリー 2012
銀座・有楽町は最低でも 1 ヶ月に 2, 3 回は訪れるスポットです。クリスマス付近になると恒例の 「ミキモト ジャンボクリスマスツリー」点灯中です。カメラも解像度もまちまちなので統一感がありませんが
東崎展望台 (2)
与那国島 (No. 11 – 海底遺跡) の続きです。朝食は滞在している 旅の館 阿檀 でいただいています。その際 "昨日はどこを周りましたか ?" という話になり、西
FreeBSD Logo
FreeBSD kernel compile に続いて /etc/sysctl.conf のチューニングサンプルです。ここでは、radserv 向けにチューニングし、動作実績のある設定ファイルを紹介し
きつねうどん (温, 中盛)
うどん 丸香 (改修工事) で久しぶりに訪れた日は、まだ試したことのない温かいきつねうどん (かけ) を試してみました。このどーんと大きなお揚げはうどんの量に関わらず豪快ですが、つゆ同様あっさりして優
FreeBSD Logo
Migrate 32bit to 64bit (FreeBSD, GDBM) に続いて、ionCube PHP Loader も問題が発生する要因の 1 つです。従来より amd64 で動作している環
My Select (2013/05/31)
沖縄出張 (No. 21 ? てぃーだ社員食堂 Part 1) の続きです。05/20 から 2 週間の沖縄出張で、ランチ時に社食をいただいたのは 4 回でした。Part 1 に引き続いて残り 3 回
Valid HTML5 Valid CSS3 Another HTML Lint