VirtualBoxにおける仮想マシンの仮想ディスク容量を拡張するための手順

VirtualBoxでは、仮想マシン作成時に仮想ディスク容量を決めますが、仮想マシンを使用していると仮想ディスクの容量が不足してくることがあると思います。ここでは、このような場合に仮想マシンの仮想ディスク容量を拡張して増やすための手順をメモします。

試した環境とやりたいこと

  • ホストOS : Mac OS X 10.9 (Marvericks)
  • ディスク容量を拡張したい仮想マシンOS : Linux Mint 16(仮想マシン名を「mintia」としています)

以上の環境で、仮想マシン「mintia」の現状の仮想ディスク容量8GBから、これを20GBまで拡張して増やします。手順としては、ホストOS側での作業と、仮想マシンのLiveCD側での作業が必要になります。

ホストOSでの作業

ホストOSであるMacでの作業では、VirutalBoxが用意しているコマンドラインツールである「VBoxManage」を使用します。そして仮想ディスクの拡張には、「modifyhd」というコマンドを使用します。このコマンドはターミナル上で以下のように使います。


拡張したい仮想マシンの仮想ディスクのパスが「/Users/ユーザ名/VirtualBox\ VMs/mintia/mintia.vdi」で、20GBに拡張したい場合は、以下のようになります。



なお、拡張後のディスク容量はMB単位での指定です。よって、1GBが1024MBなので、20GBの場合は20480MBです。

ちなみに、上記の「modifyhd」コマンドを実行して下記のようなエラーが出る場合があります。

これは、仮想マシン作成時に仮想ディスクを可変サイズに指定しておらず、仮想ディスクが固定サイズであることが原因です。この場合は、仮想ディスクを可変サイズにする必要があります。可変サイズに変換するには、以下のコマンドを実行して変換して下さい。



変換したあと、「modifyhd」コマンドを実行すれば仮想ディスク容量を拡張できると思います。
ホストOS側の作業はこれだけで完了です。

仮想マシンでの作業

上記の手順によって、仮想マシンの仮想ディスク容量を拡張できますが、これだけでは仮想マシンは拡張された分のディスクを使用できません。ここでは、仮想マシンが拡張されたディスクを使用できるようにするための手順をメモします。

なお、仮想マシンでの作業とは言っていますが、仮想マシンを起動し仮想マシン上で行う作業はありません。仮想マシンにLiveCDをセットし、LiveCDから仮想マシンの仮想ディスクをいじります。

以降の作業の流れは、以下の通りです。

  • 仮想マシンをLiveCDから起動する
  • Gpartedで仮想マシンが使用するパーティションを拡張


仮想マシンをLiveCDから起動する

仮想マシンmintiaをLiveCDから起動するために、まず仮想マシンmintiaのドライブにLiveCDをセットします。ここでは、まぎわらしいですがLiveCDとしてLinux Mintを使用しました。

はじめに、以下のように仮想マシンmintiaが選択された状態で「設定」を開きます。
first_disp_mod

以下の画面が表示されるので、「ストレージ」タブに移動します。
setting_mint_mod

ストレージタブに移動したら、以下のように、「コントローラー:IDE」の下にある「空」となっている部分をクリックします。ここで、右側に「属性」の部分に「CD/DVDドライブ(D):」とあり、その横の赤線枠で囲んだ部分のようにCDのマークがあるので、これをクリックします。
set_disk_mod

CDマークをクリックすると、isoイメージファイルを選択できるので、好きなisoイメージを選択します。ここで選択したisoイメージをLiveCDとして使用することになります。私はLinux mintのisoイメージを選択しました。リストになかった場合は「仮想CD/DVDディスクファイルの選択…」から選択できます。なお、LiveCDとして起動するOSはubuntuやCentOSなどGpartedというソフトウェアが使えるものならば何でもOKです。もちろん、Gparted自体のisoイメージをセットしてもOKです。
set_mint_iso_mod

あとは、以下のように「Live CD/DVD」にチェックを入れます。
after_set_mod

以上でLiveCDのセットは完了ですが、最後に「システム」タブに移り、以下のように「起動順序(B):」の中の「CD/DVD」にチェックが入っていること、「CD/DVD」が一番上になっていることを確認して、右下の「OK」をクリックして下さい。これで仮想マシンをLiveCDで起動する準備ができました。
boot_order_mod

Gpartedで仮想マシンが使用するパーティションを拡張

上記の手順の後、通常どおり仮想マシンmintiaを起動すると、仮想マシンがLiveCDから起動します。
起動したら、Gpartedを起動して下さい。Linux Mintの場合は、以下のように「Menu」の「Administration」の中に「Gparted」があるので、これをクリックして起動します。
menu_gparted _mod

起動すると、以下のようにパーティションの内訳が表示されます。見て分かるとおり、画面右上の「/dev/sda/」は20.00GBとなっているものの、「unallocated」が12GB分あることが分かります。この「unlocated」の部分を仮想マシンmintiaの「/dev/sda1/」の拡張部分として割り当てます。
gparted_disp_mod

ただ、「/dev/sda1」と「unallocated」の間に「linux_swap」というパーティションがあり、このままでは「dev/sda1」を拡張できないので、一旦「linux_swap」を削除します。後でこのパーティションは復活させるので、同じ環境にしたい方は「linux_swap」のサイズをメモしておいて下さい。
パーティションを削除するには以下の赤線部分のように「linux_swap」が選択された状態で、赤線枠内のツールバーの×印をクリックします。
swap_delete_mod

もし、×印が赤色になっておらずクリックできない場合は、「linux_swap」が現在使われていることが原因なので、「linux_swap」の上で以下のように右クリックし、「swap_off」をクリックして下さい。これで削除できるようになるはずです。
swap_off_mod

「linux_swap」を削除しても、以下のように水色で囲まれた「extended」が残っているので、同様の手順で削除します。
extended_delete_mod

この段階で、以下のようになります。見て分かる通り、「/dev/sda1/」以外は「unallocated」になっています。
anllocated_mod

ここから「/dev/sda1」の容量を拡張していきます。まず「/dev/sda1」を選択して右クリックすると、以下のように「Resize/Move」があるので、これをクリックします。
right_resize_move_mod

すると、以下の画面が表示されるので、ここで、赤線枠の矢印を右に動かすか、「Free space following (MiB)」に数値を入れて、「/dev/sda1」を好きなだけ拡張します。「Free space following (MiB)」に入力する値が0であると、それは「unallocated」の全てを「/dev/sda1」に割り当てることになりますが、後で「linux_swap」用のパーティションを復活させるので、「Free space following (MiB)」の値を0にはせず、「linux_swap」分の容量を残しておいて下さい。
resize_disp_mod

今回は以下のように「linux_swap」用に2048MB分残し、それ以外は全て「/dev/sda1」に割り当てます。サイズを決めたら、右下の「Resize/Move」をクリックします。
decide_size_mod

すると以下のように警告が出ますが、「OK」をクリックして下さい。
alert

これで「/dev/sda1」の拡張が出来たので、後は元々あった「linux_swap」を復活させます。以下のように残っている灰色の部分を選択して右クリックし、「New」をクリックします。
right_new_mod

すると以下の画面が表示されます。
forswap_disp

ここで以下のように、「Create as:」を「Extended Partition」にして、「Add」をクリックします。
extended_part_mod

以下のように「unallocated」がまた出来るので、これを右クリックして、「New」をクリックします。
swap_unallocated_mod

今度はこのパーティションの「File system:」を「linux-swap」にして「Add」をクリックします。
decide_swap_mod

すると以下のようになります。一番後ろに1MB分の「unallocated」が出来ますが、気にしなくて大丈夫です。後は以下の赤線枠内のエンターキーのようなボタンを押して、パーティションの変更を実行します。
last_disp_mod

以下のメッセージでますが、「Apply」をクリックします。
areyousure

パーティションの変更が完了すると以下のように「All operations successfully completed」と出るので、「Close」をクリックして完了です。
completed

後は、仮想マシンmintiaをシャットダウンし、以下のように「仮想ドライブからディスクを除去」して、LiveCDから起動しないようにします。以上で作業は完了です。
remove_livecd_mod_pixcel

仮想マシンが無事に起動できれば完了です。

参考資料

以下のサイト様を参考にさせて頂きました。大変役に立ちました。ありがとうございました。
VirtualBoxの仮想ディスクを固定サイズから可変サイズへ変換。コマンドでディスク容量を拡張する方法 | Time to live forever
VirtualBox: 仮想ディスクのサイズを拡張する (VDI) | Natz’s Digital 漂流記

このエントリーをはてなブックマークに追加

SPONSORED LINK

この投稿へのコメント

  1. hyponex said on 2014年7月15日 at 19:52

    誤字発見
    modified→modifyhd

    • virment said on 2014年7月29日 at 11:52

      ご指摘ありがとうございました!大変助かります。修正致しました。

  2. しろちゃん said on 2014年7月20日 at 01:58

    ディスクサイズ変更のコマンドが
    VBoxManage modified
    となっていますが、
    VBoxManage modifyhd
    の間違いではないでしょうか?

    • virment said on 2014年7月29日 at 11:53

      同じくご指摘ありがとうございました!大変助かります。修正致しました。

  3. anonymouse said on 2015年4月17日 at 09:59

    とてもわかりやすい記事で助かりました。ありがとうございました。

  4. sakagty said on 2016年1月31日 at 00:00

    記事参考になりました、ありがとうございます。
    さて、私もMaxOsXで作業しましたが、バックスラッシュの位置が1桁違う様でしたので、ご連絡しておきます。

    謝:VBoxManage modifyhd /Users/ユーザ名/VirtualBox \VMs/mintia/mintia.vdi –resize 20480

    正:VBoxManage modifyhd /Users/ユーザ名/VirtualBox\ VMs/mintia/mintia.vdi –resize 20480

    • virment said on 2016年2月2日 at 21:51

      ご指摘頂き誠にありがとうございます。修正させて頂きました。

コメントを残す

メールアドレスが公開されることはありません。

この投稿へのトラックバック

  1. […] ← Previous Post   […]

  2. […] VirtualBoxにおける仮想マシンの仮想ディスク容量を拡張するための手順 […]

  3. […] 参考URL Mac OS版VirtualBoxで仮想ディスクを拡張してみた。 – 大人になったら肺呼吸 VirtualBoxにおける仮想マシンの仮想ディスク容量を拡張するための手順 […]

  4. […] https://www.virment.com/extend-virtualbox-disk/ […]

トラックバック URL