VirtualBoxにおける仮想マシンの仮想ディスク容量を拡張するための手順
VirtualBoxでは、仮想マシン作成時に仮想ディスク容量を決めますが、仮想マシンを使用していると仮想ディスクの容量が不足してくることがあると思います。ここでは、このような場合に仮想マシンの仮想ディスク容量を拡張して増やすための手順をメモします。
試した環境とやりたいこと
- ホストOS : Mac OS X 10.9 (Marvericks)
- ディスク容量を拡張したい仮想マシンOS : Linux Mint 16(仮想マシン名を「mintia」としています)
ホストOSでの作業
ホストOSであるMacでの作業では、VirutalBoxが用意しているコマンドラインツールである「VBoxManage」を使用します。そして仮想ディスクの拡張には、「modifyhd」というコマンドを使用します。このコマンドはターミナル上で以下のように使います。
VBoxManage modifyhd 拡張したい仮想マシンの仮想ディスクのパス —-resize 拡張後のディスク容量
拡張したい仮想マシンの仮想ディスクのパスが「/Users/ユーザ名/VirtualBox\ VMs/mintia/mintia.vdi」で、20GBに拡張したい場合は、以下のようになります。
VBoxManage modifyhd /Users/ユーザ名/VirtualBox\ VMs/mintia/mintia.vdi --resize 20480
なお、拡張後のディスク容量はMB単位での指定です。よって、1GBが1024MBなので、20GBの場合は20480MBです。
ちなみに、上記の「modifyhd」コマンドを実行して下記のようなエラーが出る場合があります。
Progress state: VBOX_E_NOT_SUPPORTED
VBoxManage: error: Resize hard disk operation for this format is not implemented yet!
これは、仮想マシン作成時に仮想ディスクを可変サイズに指定しておらず、仮想ディスクが固定サイズであることが原因です。この場合は、仮想ディスクを可変サイズにする必要があります。可変サイズに変換するには、以下のコマンドを実行して変換して下さい。
VBoxManage clonehd --format VDI 元の仮想ディスク名 変換後の仮想ディスク名
変換したあと、「modifyhd」コマンドを実行すれば仮想ディスク容量を拡張できると思います。 ホストOS側の作業はこれだけで完了です。
仮想マシンでの作業
上記の手順によって、仮想マシンの仮想ディスク容量を拡張できますが、これだけでは仮想マシンは拡張された分のディスクを使用できません。ここでは、仮想マシンが拡張されたディスクを使用できるようにするための手順をメモします。
なお、仮想マシンでの作業とは言っていますが、仮想マシンを起動し仮想マシン上で行う作業はありません。仮想マシンにLiveCDをセットし、LiveCDから仮想マシンの仮想ディスクをいじります。
以降の作業の流れは、以下の通りです。
- 仮想マシンをLiveCDから起動する
- Gpartedで仮想マシンが使用するパーティションを拡張
仮想マシンをLiveCDから起動する
仮想マシンmintiaをLiveCDから起動するために、まず仮想マシンmintiaのドライブにLiveCDをセットします。ここでは、まぎわらしいですがLiveCDとしてLinux Mintを使用しました。
はじめに、以下のように仮想マシンmintiaが選択された状態で「設定」を開きます。
以下の画面が表示されるので、「ストレージ」タブに移動します。
ストレージタブに移動したら、以下のように、「コントローラー:IDE」の下にある「空」となっている部分をクリックします。ここで、右側に「属性」の部分に「CD/DVDドライブ(D):」とあり、その横の赤線枠で囲んだ部分のようにCDのマークがあるので、これをクリックします。
CDマークをクリックすると、isoイメージファイルを選択できるので、好きなisoイメージを選択します。ここで選択したisoイメージをLiveCDとして使用することになります。私はLinux mintのisoイメージを選択しました。リストになかった場合は「仮想CD/DVDディスクファイルの選択...」から選択できます。なお、LiveCDとして起動するOSはubuntuやCentOSなどGpartedというソフトウェアが使えるものならば何でもOKです。もちろん、Gparted自体のisoイメージをセットしてもOKです。
あとは、以下のように「Live CD/DVD」にチェックを入れます。
以上でLiveCDのセットは完了ですが、最後に「システム」タブに移り、以下のように「起動順序(B):」の中の「CD/DVD」にチェックが入っていること、「CD/DVD」が一番上になっていることを確認して、右下の「OK」をクリックして下さい。これで仮想マシンをLiveCDで起動する準備ができました。
Gpartedで仮想マシンが使用するパーティションを拡張
上記の手順の後、通常どおり仮想マシンmintiaを起動すると、仮想マシンがLiveCDから起動します。 起動したら、Gpartedを起動して下さい。Linux Mintの場合は、以下のように「Menu」の「Administration」の中に「Gparted」があるので、これをクリックして起動します。
起動すると、以下のようにパーティションの内訳が表示されます。見て分かるとおり、画面右上の「/dev/sda/」は20.00GBとなっているものの、「unallocated」が12GB分あることが分かります。この「unlocated」の部分を仮想マシンmintiaの「/dev/sda1/」の拡張部分として割り当てます。
ただ、「/dev/sda1」と「unallocated」の間に「linux_swap」というパーティションがあり、このままでは「dev/sda1」を拡張できないので、一旦「linux_swap」を削除します。後でこのパーティションは復活させるので、同じ環境にしたい方は「linux_swap」のサイズをメモしておいて下さい。 パーティションを削除するには以下の赤線部分のように「linux_swap」が選択された状態で、赤線枠内のツールバーの×印をクリックします。
もし、×印が赤色になっておらずクリックできない場合は、「linux_swap」が現在使われていることが原因なので、「linux_swap」の上で以下のように右クリックし、「swap_off」をクリックして下さい。これで削除できるようになるはずです。
「linux_swap」を削除しても、以下のように水色で囲まれた「extended」が残っているので、同様の手順で削除します。
この段階で、以下のようになります。見て分かる通り、「/dev/sda1/」以外は「unallocated」になっています。
ここから「/dev/sda1」の容量を拡張していきます。まず「/dev/sda1」を選択して右クリックすると、以下のように「Resize/Move」があるので、これをクリックします。
すると、以下の画面が表示されるので、ここで、赤線枠の矢印を右に動かすか、「Free space following (MiB)」に数値を入れて、「/dev/sda1」を好きなだけ拡張します。「Free space following (MiB)」に入力する値が0であると、それは「unallocated」の全てを「/dev/sda1」に割り当てることになりますが、後で「linux_swap」用のパーティションを復活させるので、「Free space following (MiB)」の値を0にはせず、「linux_swap」分の容量を残しておいて下さい。
今回は以下のように「linux_swap」用に2048MB分残し、それ以外は全て「/dev/sda1」に割り当てます。サイズを決めたら、右下の「Resize/Move」をクリックします。
すると以下のように警告が出ますが、「OK」をクリックして下さい。
これで「/dev/sda1」の拡張が出来たので、後は元々あった「linux_swap」を復活させます。以下のように残っている灰色の部分を選択して右クリックし、「New」をクリックします。
すると以下の画面が表示されます。
ここで以下のように、「Create as:」を「Extended Partition」にして、「Add」をクリックします。
以下のように「unallocated」がまた出来るので、これを右クリックして、「New」をクリックします。
今度はこのパーティションの「File system:」を「linux-swap」にして「Add」をクリックします。
すると以下のようになります。一番後ろに1MB分の「unallocated」が出来ますが、気にしなくて大丈夫です。後は以下の赤線枠内のエンターキーのようなボタンを押して、パーティションの変更を実行します。
以下のメッセージでますが、「Apply」をクリックします。
パーティションの変更が完了すると以下のように「All operations successfully completed」と出るので、「Close」をクリックして完了です。
後は、仮想マシンmintiaをシャットダウンし、以下のように「仮想ドライブからディスクを除去」して、LiveCDから起動しないようにします。以上で作業は完了です。
仮想マシンが無事に起動できれば完了です。
参考資料
以下のサイト様を参考にさせて頂きました。大変役に立ちました。ありがとうございました。 ・VirtualBoxの仮想ディスクを固定サイズから可変サイズへ変換。コマンドでディスク容量を拡張する方法 | Time to live forever ・ VirtualBox: 仮想ディスクのサイズを拡張する (VDI) | Natz's Digital 漂流記
関連記事
- 公開日:2014/02/07 更新日:2014/02/07
VirtulBox上のfedora20にGuest Additionsがインストールできない場合の対処方法
Virtualbox上のfedora20にGuest Additionsをインストールしようとしたら、”Building the main Guest Additions module [failed]”というエラーが出てうまくいかなかったので、その対処方法をメモします。
- 公開日:2014/01/15 更新日:2014/01/15
VirtualBoxが仮想マシンの仮想ディスクなどを格納するフォルダの変更方法
VirtualBoxを使用していると、仮想マシンの仮想ディスクがハードディスクを圧迫してきます。この対策として、仮想マシンの仮想フォルダを、別のハードディスクや別のパーティションに変更することが挙げられます。ここではこの方法についてメモします。簡単です。