Virtual Boxでゲストマシンのボリュームを拡張する
この記事を読むと得られる情報
- Virtual BoxのスナップショットをCLIで削除する方法
- Virtual BoxのゲストOSのボリューム拡張方法
概要
よくあることですが、VirtualBoxで作ったゲストマシンのディスクが足りなくなった際に拡張する方法をまとめています。
意外なところにハマりどころがあったので成功例をまとめています。
今回の環境
ホストマシン:Ubuntu 20.04
ゲストマシン:Ubuntu 18.04
仮想化ソフトウェア:Virtual Box 6.1
また今回は原則全てコマンドラインでの実行になります。
前準備
早速のハマりどころなんですが、まずストレージ容量を変更する際に
既存のスナップショットが存在するとストレージ容量を変更できません
なので、既存のスナップショットは全て削除しておきましょう。
ホストマシンから下記コマンドを実行
# スナップショットの削除
VBoxManage snapshot "VM名" delete *
スナップショットが残っているとボリューム容量が変更できないのは、VirtualBoxの仕様かと思いますが
きっとスナップショット復元の挙動は「取得時の状態に戻す」なので、ストレージ容量が過去と変わると不具合が生じるのでしょう。
本番作業
では、ここからは通常通りゲストマシンのボリュームを増やしていきましょう。
まずはゲストマシンの電源を切りまして、ホストマシンよりゲストマシンのストレージファイル変更を行います。
(今回はストレージ容量を20GBへ変更しています)
# ゲストマシンの容量変更
VBoxManage modifyhd "/home/hoge/VirtualBox VMs/huga/moge.vdi" --resize 20480
こちらがうまくいったら、ゲストマシンの電源をつけてログイン。
現在のストレージ状況を確認
# ストレージの確認
$ df -h
Filesystem Size Used Avail Use% Mounted on
udev 1.9G 0 1.9G 0% /dev
tmpfs 395M 1004K 394M 1% /run
/dev/sda2 10G 6.9G 12G 74% /
tmpfs 2.0G 0 2.0G 0% /dev/shm
tmpfs 5.0M 0 5.0M 0% /run/lock
tmpfs 2.0G 0 2.0G 0% /sys/fs/cgroup
/dev/loop0 97M 97M 0 100% /snap/core/9436
/dev/loop1 98M 98M 0 100% /snap/core/9289
tmpfs 395M 0 395M 0% /run/user/1000
今回は/dev/sda2が増設対象です。
ではパーティションの増設をpartedコマンドで実施していきます。
# パーティションの変更
$ sudo parted /dev/sda
GNU Parted 3.2
Using /dev/sda
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) p free
Model: ATA VBOX HARDDISK (scsi)
Disk /dev/sda: 21.5GB ⇠ここが前準備で設定した容量に近くなっていることを確認
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:
Number Start End Size File system Name Flags
17.4kB 1049kB 1031kB Free Space
1 1049kB 2097kB 1049kB bios_grub
2 2097kB 10.7GB 10.7GB ext4
10.7GB 21.5GB 10.8GB Free Space
(parted) resizepart 2
Warning: Partition /dev/sda2 is being used. Are you sure you want to continue?
Yes/No? Yes
End? [10.7GB]? 21.5GB ⇠Disk容量を設定します
(parted) p free
Model: ATA VBOX HARDDISK (scsi)
Disk /dev/sda: 21.5GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:
Number Start End Size File system Name Flags
17.4kB 1049kB 1031kB Free Space
1 1049kB 2097kB 1049kB bios_grub
2 2097kB 21.5GB 21.5GB ext4 ⇠先程入力した値になっていれば成功
(parted) q
Information: You may need to update /etc/fstab.
パーティションの拡張ができたところで一度再起動します。
# ゲストマシンの再起動
sudo reboot
再起動から復帰したら、最後にファイルシステムの拡張を行います。
# ファイルシステムの拡張
$ sudo resize2fs /dev/sda2
resize2fs 1.44.1 (24-Mar-2018)
Filesystem at /dev/sda2 is mounted on /; on-line resizing required
old_desc_blocks = 2, new_desc_blocks = 3
The filesystem on /dev/sda2 is now 5247483 (4k) blocks long.
最後に容量を確認して
# 最終確認
$ df -h
Filesystem Size Used Avail Use% Mounted on
udev 1.9G 0 1.9G 0% /dev
tmpfs 395M 1004K 394M 1% /run
/dev/sda2 20G 6.9G 12G 37% /
tmpfs 2.0G 0 2.0G 0% /dev/shm
tmpfs 5.0M 0 5.0M 0% /run/lock
tmpfs 2.0G 0 2.0G 0% /sys/fs/cgroup
/dev/loop0 97M 97M 0 100% /snap/core/9436
/dev/loop1 98M 98M 0 100% /snap/core/9289
tmpfs 395M 0 395M 0% /run/user/1000
/dev/sda2 が無事増えていることが無事確認できました!
ディスカッション
コメント一覧
まだ、コメントがありません