VirtualBox + Ubuntuでのパーテーション拡張方法(CUI)

2024年6月7日

やっぱりVMのストレージって足りなくならない?

物理のストレージに限りがある以上、今後どれだけ使うかわからないVMのストレージとか最初は最小限にしちゃいますよね?
で、結局足りなくなって増やす羽目になるんですが…
その時にUbuntu+CUIの記事が見つからず、苦労したため手順を残してみます。
皆さんの参考になれば幸いです。
また注意事項としては、手順を間違えるとゲストマシンが起動不能になることもあるので、クローンを取得してから実施すると安心です。
※本記事通り実施しても破損する可能性がありますので、そこは自己責任でお願いいたします。

環境

  • ホストマシン : Windows10 Pro
    • Virtual Box : 6.0
  • ゲストマシン : Ubuntu 18.04
    • ストレージはvdiで作成済み

ホストマシンでの作業

該当ゲストマシンをシャットダウン

なるべく、ゲスト内からshutdownコマンドでシステムを終了しましょう。
VBのシャットダウンは、電源長押に近いので極力避けましょう。

仮想HDDの拡張

VirtualBox管理画面

該当の仮想HDDがどこに保存されているかを確認。
その後、VBのマネージャーから該当仮想マシンの設定画面を開くと画像のような画面が見える。

パスはコピーできるので、画像のように右クリックでコピーしておく

その後、コマンドプロンプトで下記コマンドを実施

"C:\Program Files\Oracle\VirtualBox\VBoxManage.exe" modifyhd "先程コピーしたパズ" --resize 20480

文字列で打ち込む必要があるので"もそのまま打ち込むこと。
VBboxManage.exeはのパスはデフォルトの場所です。変更してる場合は合わせて変更してください。
resizeの容量はMBで指定できます。
1GB=1024と記載してください。上記の例では20GBになります。
その後、ゲストマシンを起動。

ゲストマシンでの作業

# 現在のファイルシステムを確認
df -h 
# partedを起動
sudo parted
# 増やしたいパーティションの番号と終端アドレス(容量)を確認
(parted) p free
# 確認したパーティションの番号でリサイズを開始(今回は仮に2とする)
(parted) resize 2
Warning: Partition /dev/sda1 is being used. Are you sure you want to continue?
Yes/No? Yes
# 最大限拡張するなら先程確認した終端アドレスを入力  
End?  [10.0GB]? 20GB
# 確認
(parted) p free
# partedを終了
(parted) q
# fstabを変更(今回のファイルシステムは仮にsda2とする)
sudo resize2fs /dev/sda2
# 念の為に再起動
sudo reboot
# 再度ログインしたあと、ファイルシステムを確認
df -h

これで容量が増えていれば成功です!
お疲れさまでした。