/var/www/yatta47.log

/var/www/yatta47.log

やったのログ置場です。スクラップみたいな短編が多いかと。

VBoxManageを使用したLinux容量拡張

普段家で使っているPCでの開発環境は、VirtualBoxLinuxをインストールし、そこで開発を行っています。

しかし、最近そのLinuxが容量不足になってしまいました。

ディスクが勝手に拡張されるものかと思っていたのですが、以前再構築した際にその辺の設定をし忘れたのか、そもそも出来なくなったのかわからないけれど結果で言うと容量増やすのにちょっと手間取ったのでメモに残しておきます。

やったこと

PowerShell上での実行コマンドと、ゲストOS(Ubuntu)上でのパーティション拡張手順をまとめる。

概要フロー

  1. VBoxManage のパスを通す
  2. .vmdk を .vdi に変換
  3. .vdi をリサイズ(例:50GB) 4, VirtualBox仮想マシンのディスクを .vdi に変更 5, Ubuntu上でパーティションを拡張

PowerShell:ホスト側作業

VBoxManageというコマンドを使うので、とりあえずPATHを通します。
PowerShellで以下を実行:

$env:Path += ";C:\Program Files\Oracle\VirtualBox"

ファイルがvmdkになっていたので変換を行います。以前はvdiだった気がするのだけれど作った時に変わっちゃったのかな。 ってことで、 .vmdk → .vdi に変換。

VBoxManage clonehd "C:\Users\yatta47\VirtualBox VMs\development22\ubuntu-jammy-22.04-cloudimg.vmdk" "C:\Users\yatta47\VirtualBox VMs\development22\ubuntu-jammy-22.04-cloudimg_resized.vdi" --format vdi

変換したvdiの拡張をします。

VBoxManage modifyhd "C:\Users\yatta47\VirtualBox VMs\development22\ubuntu-jammy-22.04-cloudimg_resized.vdi" --resize 51200
(MB単位 → 51200MB = 50GB)

そして変更した仮想マシンを切り替える。

  1. VirtualBoxから .vdi を仮想マシンに設定
  2. VirtualBoxマネージャーで該当VMを選択 「設定」→「記憶域」

  3. 既存の .vmdk を削除(リンク解除)

「追加」から .vdi を選択して割り当て

ここまでで下準備は完了。この後は、Linux側にて拡張したディスクを認識させる作業になります。

Ubuntu(ゲストOS)上での作業:パーティション拡張

以下は、ゲストOS(Ubuntu)を起動した後の作業です。

どのディスクか確認。自分の場合は以下のように出てきました。

lsblk
NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINTS
loop0    7:0    0 63.7M  1 loop /snap/core20/2496
loop1    7:1    0 44.4M  1 loop /snap/snapd/23771
loop2    7:2    0 89.4M  1 loop /snap/lxd/31333
sda      8:0    0  100G  0 disk
  sda1   8:1    0   40G  0 part /

おそらく /dev/sda や /dev/vda として出てくるはずです。

そしてパーティションの拡張(1パーティションのみならこれでOK)

sudo growpart /dev/sda 1
# /dev/sda1 を拡張します(数字はパーティション番号)

その後ファイルシステムの拡張(ext4の場合)

sudo resize2fs /dev/sda1
df -h

拡張されていれば、ルートパーティションのサイズが大きくなっているはずです。

まとめ

仮想マシンがなぜかvmdkで出来ていたせいで、返還をする必要がありました。

何でそれで作ってしまっていたのかは全く覚えていないですが、まぁディスク容量増やせたのでよかったよかったという感じです。

それでは~。