uwu

プログラミングの備忘録を書いています。誰かの為になれば幸いです

Windows版!VirtualBoxの仮想マシンの容量を増やす方法

ある日VirtualBoxを使ってCentOs7にheroku CLIをインストールしようとしたらこんな表示が、、



 Error: No space left on device


ターミナルからdf -hを使ってスペースの使用率を見てみるとなんと、とある場所のuse%が100%になっていました。




こうなると何もインストールできないのでまずは仮想マシンの容量を増やさなければなりません。
簡単にできるだろうと思っていたのですがなんやかんやエラーが出て大変だったのでここに残して置きます😉




環境:
VM Box6.1
ホストOS:Windows10, ゲストOS:CentOs7


仮想マシンの容量を増やす方法~


VM BOXを起動。ホーム上部の「ツール」の右側の三本線 → メディア → プロパティ をクリック







②対象のゲストOSを選択、画面下部にある拡張後の容量を入力し、適用をクリック






以上。これで簡単にできるはずですが、私の場合このようなエラーが出ました。






エラー内容:

Resizing to new size 85899345920 is not yet supported for
medium 'C:\Users\miii0\VirtualBox VMs\CentOs\CentOs.vdi'.


仮想ハードディスクを固定サイズで作成したにもかかわらずサイズの変更をしようとしていることが原因でエラーになっている様です。このエラーは元の仮想マシンのクローンを作ってあげると解決します。
クローンの作成にはVMManageのclonehdというものを使います。




コマンドプロンプトを開きます。




Windowsの場合、VMManageはC:\Program Files\Oracle\VirtualBox\VBoxManage.exeというパスであると思うのでVirtualBoxフォルダーまで移動します。



cd C:\Program Files\Oracle\VirtualBox\


先ほど②で使った画面に仮想ディスクのパスが書いてあるのでそれをコピーしましょう。



VBoxManage.exe clonehd "仮想ディスクのパス" "新しい仮想ディスクのパス" --format VDI

私の場合、こんな感じです。



VBoxManage.exe clonehd "C:\Users\miii0\VirtualBox VMs\CentOs\CentOs.vdi" "C:\Users\miii0\VirtualBox VMs\CentOs\CentOsCloned.vdi" --format VDI


もしお使いの仮想ディスクの形式がvmdk形式の場合、
リサイズに対応しておらずvdi形式でないと容量を増やすことができないので一度vdi形式にする必要があります。




vmdkとvdiの違いはこちらに詳しく載せている方がいるので気になる方はどうぞ!
https://techtoge.com/difference-virtual-disk-formats/




このような表示になっていればOKです



0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%
Clone medium created in format 'VDI'. UUID: *********************




こうすることで、新しい元のハードディスクのデータを含んだ、「可変サイズ」の新しいハードディスクが作成されます。

新しく作ったディスクは上記~仮想マシンの容量の増やし方~①→②の手順で容量を増やせます。




容量が増やせたら、ストレージを新しく作ったハードディスクに乗り換えます




①今お使いのハードディスクを右クリック→設定
②ストレージ→使用中の仮想ディスクを選択
③ハードディスク(D)の右にあるアイコンをクリック→仮想ディスクの選択から新しくクローンしたディスクをクリックして選択







次は実際の中身(ゲストOS)の容量を拡張します。




ゲストOSのパーティション拡張、これについてはこちらの記事

仮想マシンのディスク拡張方法(CentOS7) | クラウドエスエスアイ・ラボ

を参考にやっていったら問題なくできました。




以上仮想マシンの容量を増やす方法でした😊