自宅で運用しているUbuntu 20.04.3 LTS (GNU/Linux 5.4.0-86-generic x86_64)のディスク容量が小さいので、ディスクをコピーしてそのまま換装 その後システムにも認識させたので手順のメモ なおLVMを使用しているシステムになる。移設の前の/ は70%の利用率
$ df -h
Filesystem Size Used Avail Use% Mounted on
udev 3.8G 0 3.8G 0% /dev
tmpfs 787M 1.7M 786M 1% /run
/dev/mapper/ubuntu--vg-ubuntu--lv 58G 39G 17G 70% /
tmpfs 3.9G 0 3.9G 0% /dev/shm
tmpfs 5.0M 0 5.0M 0% /run/lock
tmpfs 3.9G 0 3.9G 0% /sys/fs/cgroup
/dev/sda2 976M 299M 610M 33% /boot
ディスクを物理的にコピーする
最初に抜き出したディスクから、新しいディスクにコピーを行う。これはddが使えるようなマシンに2台マウントして行っても良いし、裸族のお立ち台のような、2台差し込んでコピーボタンが押せるものでも良い。今回は以下のコピー機を使ったが、転送も非常に高速で快適だった。
ディスクコピー機は一家に一台あっても困らない
今回はSandiskのUltraがAmazonタイムセールで安くなっていたので、こちらに移す。
物理ディスクの拡張
最初に物理レベルで認識して貰う必要があるので、partedで拡張を行う。
$ sudo parted /dev/sda
GNU Parted 3.3
Using /dev/sda
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted)
(parted)
(parted) print
Warning: Not all of the space available to /dev/sda appears to be used, you can fix the GPT to use all of the space (an extra 3656959488 blocks) or
continue with the current setting?
Fix/Ignore? fix
Model: ATA SanDisk SDSSDH3 (scsi)
Disk /dev/sda: 2000GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:
Number Start End Size File system Name Flags
1 1049kB 2097kB 1049kB bios_grub
2 2097kB 1076MB 1074MB ext4
3 1076MB 128GB 127GB
#拡張させる End?と聞かれるので100%と入力 無事に認識した
(parted) resizepart 3
End? [128GB]? 100%
(parted)
(parted) print
Model: ATA SanDisk SDSSDH3 (scsi)
Disk /dev/sda: 2000GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:
Number Start End Size File system Name Flags
1 1049kB 2097kB 1049kB bios_grub
2 2097kB 1076MB 1074MB ext4
3 1076MB 2000GB 1999GB
PV/LVの拡張
$ sudo pvdisplay
--- Physical volume ---
PV Name /dev/sda3
VG Name ubuntu-vg
PV Size <118.24 GiB / not usable 1.00 MiB
Allocatable yes
PE Size 4.00 MiB
Total PE 30269
Free PE 14878
Allocated PE 15391
PV UUID 6p2ycO-V1sE-Csxs-uJmq-nCPJ-lje7-Chq5ZW
$ sudo pvresize /dev/sda3
Physical volume "/dev/sda3" changed
1 physical volume(s) resized or updated / 0 physical volume(s) not resized
$ sudo pvdisplay
--- Physical volume ---
PV Name /dev/sda3
VG Name ubuntu-vg
PV Size <1.82 TiB / not usable <2.07 MiB
Allocatable yes
PE Size 4.00 MiB
Total PE 476675
Free PE 461284
Allocated PE 15391
PV UUID 6p2ycO-V1sE-Csxs-uJmq-nCPJ-lje7-Chq5ZW
$ sudo lvextend -l 100%FREE /dev/ubuntu-vg/ubuntu-lv
Size of logical volume ubuntu-vg/ubuntu-lv changed from 60.12 GiB (15391 extents) to <1.76 TiB (461284 extents).
Logical volume ubuntu-vg/ubuntu-lv successfully resized.
$ df -h
Filesystem Size Used Avail Use% Mounted on
udev 3.8G 0 3.8G 0% /dev
tmpfs 787M 1.7M 786M 1% /run
/dev/mapper/ubuntu--vg-ubuntu--lv 58G 39G 17G 70% /
tmpfs 3.9G 0 3.9G 0% /dev/shm
tmpfs 5.0M 0 5.0M 0% /run/lock
tmpfs 3.9G 0 3.9G 0% /sys/fs/cgroup
/dev/sda2 976M 299M 610M 33% /boot
これだけでは実際のサイズが大きくならないため、ext4を拡張する
ボリュームを拡張する
最終的にext4を拡張しなければならない。コマンドは以下 なおここまでのコマンドはすべてオンラインで実行している。以下もオンラインで実行
$ sudo resize2fs /dev/mapper/ubuntu--vg-ubuntu--lv
resize2fs 1.45.5 (07-Jan-2020)
Filesystem at /dev/mapper/ubuntu--vg-ubuntu--lv is mounted on /; on-line resizing required
old_desc_blocks = 8, new_desc_blocks = 226
The filesystem on /dev/mapper/ubuntu--vg-ubuntu--lv is now 472354816 (4k) blocks long.
$ df -h
Filesystem Size Used Avail Use% Mounted on
udev 3.8G 0 3.8G 0% /dev
tmpfs 787M 1.7M 786M 1% /run
/dev/mapper/ubuntu--vg-ubuntu--lv 1.8T 39G 1.7T 3% /
tmpfs 3.9G 0 3.9G 0% /dev/shm
tmpfs 5.0M 0 5.0M 0% /run/lock
tmpfs 3.9G 0 3.9G 0% /sys/fs/cgroup
/dev/sda2 976M 299M 610M 33% /boot
無事に空き容量が1.7TBへと増強されました。