さすがに、カーネルのアップデートが出る度にいちいち旧カーネルを先にパージなんてことをしていたらいつ起動不能になるかわかったものではないので、なんとか / パーティションを拡張する方法はないかと考えていたら、実は / パーティションはLVMで管理されていることに気がついた。 🙂
sudo /sbin/lvscan
ACTIVE ‘/dev/bam-system/root’ [332.00 MiB] inherit
ACTIVE ‘/dev/bam-system/usr’ [8.38 GiB] inherit
ACTIVE ‘/dev/bam-system/var’ [2.79 GiB] inherit
ACTIVE ‘/dev/bam-system/swap_1’ [5.52 GiB] inherit
ACTIVE ‘/dev/bam-system/tmp’ [380.00 MiB] inherit
ACTIVE ‘/dev/bam-system/home’ [38.27 GiB] inherit
しかもext4フォーマットだからオンラインで拡張処理が出来る。ということは、どこかのパーティションを減らせば、それを拡張に割り当てることが出来るというわけだ。
ただ、縮小処理はアンマウントしないといけないので、ありあまってる /home から取るのはちょっとリモート操作では躊躇われる。なので、ここはぐっと我慢してswapを少し減らしてそれを / に回すことにしよう。
ますは、swapをオフラインにする。
sudo swapoff -a
次に swap パーティションを300MBほど減らす。
sudo /sbin/lvreduce -L -300M /dev/bam-system/swap_1
lvscanで無事にサイズが減ってることを確認したら再びswapをオンにするために、新しいswapを作成する。
sudo /sbin/mkswap /dev/bam-system/swap_1
sudo swapon /dev/bam-system/swap_1
さて、pvscanを使って、LVMに空きが300MB出来てることを確認しよう。
sudo /sbin/pvscan
PV /dev/sda5 VG bam-system lvm2 [55.66 GiB / 300.00 MiB free]
Total: 1 [55.66 GiB] / in use: 1 [55.66 GiB] / in no VG: 0 [0 ]
よしよし。空きを300MB確保出来た。次はext4のオンライン拡張だが、これはまずボリューム割当を増やし、そしてファイルシステムを拡張するという二段階を踏む必要がある。
sudo /sbin/lvextend -L +300M /dev/bam-system/root
減らした300MB分だけ / パーティションを増やす。念のため、容量をlvscanで確認。
sudo /sbin/lvscan
ACTIVE ‘/dev/bam-system/root’ [632.00 MiB] inherit
ACTIVE ‘/dev/bam-system/usr’ [8.38 GiB] inherit
ACTIVE ‘/dev/bam-system/var’ [2.79 GiB] inherit
ACTIVE ‘/dev/bam-system/swap_1’ [5.22 GiB] inherit
ACTIVE ‘/dev/bam-system/tmp’ [380.00 MiB] inherit
ACTIVE ‘/dev/bam-system/home’ [38.27 GiB] inherit
というわけで、計632MBに増えていることが確認出来た。linux-imageのサイズがだいたい170MBぐらいなので、この分だと3カーネルは保持出来る。十分だ。
ここで、祈れるものには何でも祈りながら、ext4のオンライン拡張を実行する。
sudo /sbin/resize2fs /dev/bam-system/root 632M
無事に完了したらファイルシステムが実際に増えていることを確認しよう。
df -h
なんとか延命完了。