ミシシッピ川以東のルイジアナ

わたしのブログへようこそ!出てけ

気がついたら /boot が満杯になっていたのでいい感じのツールを見つけてきた

虚無です、備忘録なので。

なんか知らんけど、天皇賞・春の予想をしようとパソコンをつけたらポップアップウィンドウが表示された。

boot領域が0バイトしかありません

いや、それはもはや無では? ボブは訝しんだが、とりあえず様子を見てみる。

jj1lis@localhost:~ $ df -h
Filesystem      Size  Used Avail Use% Mounted on
udev            7.8G     0  7.8G   0% /dev
tmpfs           1.6G  1.6M  1.6G   1% /run
(中略)
/dev/sda5       922M  922M     0 100% /boot

マジやんけ。 ちなみに/bootに1GiB近くも振ってあるのは、今のパソコンのストレージを特に意味もなく1TBにしたとき、使い道に迷ったからである。

実は同じような症状は以前にもあった。確か今までのカーネルイメージが全部残ってたとか、そんな感じだった気がする。その時は、

$ sudo apt purge linux-image-x.xx.xxx-generic

という具合に一個一個丹精込めて手作業でpurgeした。

jj1lis@localhost:/boot $ ls
System.map-4.15.0-106-generic  config-4.15.0-124-generic      initrd.img-5.0.0-32-generic
System.map-4.15.0-117-generic  config-4.15.0-132-generic      initrd.img-5.4.0-100-generic
System.map-4.15.0-122-generic  config-4.15.0-137-generic      initrd.img-5.4.0-107-generic
System.map-4.15.0-124-generic  config-4.15.0-142-generic      initrd.img-5.4.0-109-generic
System.map-4.15.0-132-generic  config-4.15.0-144-generic      initrd.img-5.4.0-91-generic
System.map-4.15.0-137-generic  config-4.15.0-156-generic      lost+found
System.map-4.15.0-142-generic  config-4.15.0-162-generic      memtest86+.bin
System.map-4.15.0-144-generic  config-4.15.0-163-generic      memtest86+.elf
System.map-4.15.0-156-generic  config-4.15.0-169-generic      memtest86+_multiboot.bin
System.map-4.15.0-162-generic  config-4.15.0-175-generic      retpoline-4.15.0-20-generic
System.map-4.15.0-163-generic  config-4.15.0-176-generic      vmlinuz-4.15.0-156-generic
System.map-4.15.0-169-generic  config-4.15.0-20-generic       vmlinuz-4.15.0-162-generic
System.map-4.15.0-175-generic  config-5.0.0-32-generic        vmlinuz-4.15.0-163-generic
System.map-4.15.0-176-generic  config-5.4.0-100-generic       vmlinuz-4.15.0-169-generic
System.map-4.15.0-20-generic   config-5.4.0-107-generic       vmlinuz-4.15.0-175-generic
System.map-5.0.0-32-generic    config-5.4.0-109-generic       vmlinuz-4.15.0-176-generic
System.map-5.4.0-100-generic   config-5.4.0-91-generic        vmlinuz-4.15.0-20-generic
System.map-5.4.0-107-generic   grub                           vmlinuz-5.0.0-32-generic
System.map-5.4.0-109-generic   initrd.img-4.15.0-156-generic  vmlinuz-5.4.0-100-generic
System.map-5.4.0-91-generic    initrd.img-4.15.0-162-generic  vmlinuz-5.4.0-107-generic
abi-4.15.0-20-generic          initrd.img-4.15.0-163-generic  vmlinuz-5.4.0-109-generic
config-4.15.0-106-generic      initrd.img-4.15.0-169-generic  vmlinuz-5.4.0-91-generic
config-4.15.0-117-generic      initrd.img-4.15.0-175-generic
config-4.15.0-122-generic      initrd.img-4.15.0-20-generic

なんかいっぱいあった。

さすがにこれを全部手作業でrmするのは骨が折れるし、そのうち触れてはいけない何かを消してしまいそうなので簡単にパパっとできる方法が欲しい。

調べてみると、 purge-old-kernels というツールがいいらしい。現在のカーネルバージョンから2,3個を除いて、カーネルイメージと関連ファイルを削除してくれる。

byobu というパッケージに入っているらしいので、早速aptで入れて使ってみよう。

jj1lis@localhost: /boot $ sudo apt install byobu -y
jj1lis@localhost :/boot $ purge-old-kernels 
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following packages will be REMOVED:
  gir1.2-mate-desktop gir1.2-mate-panel libstd-rust-1.53 linux-headers-4.15.0-106
  linux-headers-4.15.0-106-generic linux-headers-4.15.0-117 linux-headers-4.15.0-117-generic
  linux-headers-4.15.0-122 linux-headers-4.15.0-122-generic linux-headers-4.15.0-124
  linux-headers-4.15.0-124-generic linux-headers-4.15.0-132 linux-headers-4.15.0-132-generic
  linux-headers-4.15.0-137 linux-headers-4.15.0-137-generic linux-headers-4.15.0-142
  linux-headers-4.15.0-142-generic linux-headers-4.15.0-144 linux-headers-4.15.0-144-generic
  linux-headers-4.15.0-156 linux-headers-4.15.0-156-generic linux-headers-4.15.0-162
  linux-headers-4.15.0-162-generic linux-headers-4.15.0-163 linux-headers-4.15.0-163-generic
  linux-headers-4.15.0-169 linux-headers-4.15.0-169-generic linux-headers-4.15.0-175
  linux-headers-4.15.0-175-generic linux-headers-5.4.0-100-generic
  linux-headers-5.4.0-91-generic linux-hwe-5.4-headers-5.4.0-100
  linux-hwe-5.4-headers-5.4.0-91 linux-image-4.15.0-156-generic
  linux-image-4.15.0-162-generic linux-image-4.15.0-163-generic
  linux-image-4.15.0-169-generic linux-image-4.15.0-175-generic linux-image-5.4.0-100-generic
  linux-image-5.4.0-91-generic linux-modules-4.15.0-106-generic
  linux-modules-4.15.0-117-generic linux-modules-4.15.0-122-generic
  linux-modules-4.15.0-124-generic linux-modules-4.15.0-132-generic
  linux-modules-4.15.0-137-generic linux-modules-4.15.0-142-generic
  linux-modules-4.15.0-144-generic linux-modules-4.15.0-156-generic
  linux-modules-4.15.0-162-generic linux-modules-4.15.0-163-generic
  linux-modules-4.15.0-169-generic linux-modules-4.15.0-175-generic
  linux-modules-5.4.0-100-generic linux-modules-5.4.0-91-generic
  linux-modules-extra-4.15.0-156-generic linux-modules-extra-4.15.0-162-generic
  linux-modules-extra-4.15.0-163-generic linux-modules-extra-4.15.0-169-generic
  linux-modules-extra-4.15.0-175-generic linux-modules-extra-5.4.0-100-generic
  linux-modules-extra-5.4.0-91-generic
0 upgraded, 0 newly installed, 62 to remove and 0 not upgraded.
1 not fully installed or removed.
After this operation, 3,880 MB disk space will be freed.
Do you want to continue? [Y/n] y
(Reading database ... 1241944 files and directories currently installed.)

(中略)

Found linux image: /boot/vmlinuz-5.0.0-32-generic
Found initrd image: /boot/initrd.img-5.0.0-32-generic
Found linux image: /boot/vmlinuz-4.15.0-176-generic
Found initrd image: /boot/initrd.img-4.15.0-176-generic
Found linux image: /boot/vmlinuz-4.15.0-20-generic
Found initrd image: /boot/initrd.img-4.15.0-20-generic
Found memtest86+ image: /memtest86+.elf
Found memtest86+ image: /memtest86+.bin
done

実行には数分くらい掛かった。

jj1lis@localhost: /boot $ ls
System.map-4.15.0-176-generic  config-5.4.0-107-generic       memtest86+.bin
System.map-4.15.0-20-generic   config-5.4.0-109-generic       memtest86+.elf
System.map-5.0.0-32-generic    grub                           memtest86+_multiboot.bin
System.map-5.4.0-107-generic   initrd.img-4.15.0-176-generic  retpoline-4.15.0-20-generic
System.map-5.4.0-109-generic   initrd.img-4.15.0-20-generic   vmlinuz-4.15.0-176-generic
abi-4.15.0-20-generic          initrd.img-5.0.0-32-generic    vmlinuz-4.15.0-20-generic
config-4.15.0-176-generic      initrd.img-5.4.0-107-generic   vmlinuz-5.0.0-32-generic
config-4.15.0-20-generic       initrd.img-5.4.0-109-generic   vmlinuz-5.4.0-107-generic
config-5.0.0-32-generic        lost+found                     vmlinuz-5.4.0-109-generic
jj1lis@locahost:/boot $ df -h
Filesystem      Size  Used Avail Use% Mounted on
udev            7.8G     0  7.8G   0% /dev
tmpfs           1.6G  1.6M  1.6G   1% /run
(中略)
/dev/sda5       922M  397M  462M  47% /boot

中身が半分くらいに減って、容量にも余裕が出来ていた。 これで暫くは持ちこたえるかな。

その前にとりあえず一回apt autoremoveしてみたほうがいいのでは? と思うなど。

補足

環境: Linux Mint 19.3 (linux 5.4.0-109-generic)」

Ubuntu 18.04 LTSベースなので、最近のUbuntu系ならだいたい同じ手口が使えると思います。知らんけど。

参考