20.04 から 22.04 にアップグレードしようとしたところ、 に十分なスペースがないというエラーが発生しました/boot
。しかし、要求されたスペースの量は非常に大きい ( 617M
) ため、何か問題があるのではないかと疑っています。
生成されたエラーメッセージdo-release-upgrade
:
Not enough free disk space
The upgrade has aborted. The upgrade needs a total of 617 M free
space on disk '/boot'. Please free at least an additional 282 M of
disk space on '/boot'. You can remove old kernels using 'sudo apt
autoremove' and you could also set COMPRESS=xz in
/etc/initramfs-tools/initramfs.conf to reduce the size of your
initramfs.
の内容/boot
:
$ ls -lh /boot/
total 271M
-rw-r--r-- 1 root root 256K Jul 14 10:42 config-5.15.0-43-generic
-rw-r--r-- 1 root root 257K Aug 4 14:44 config-5.15.0-46-generic
drwx------ 3 root root 4.0K Dec 31 1969 efi
drwxr-xr-x 4 root root 4.0K Aug 10 12:50 grub
lrwxrwxrwx 1 root root 28 Aug 10 11:06 initrd.img -> initrd.img-5.15.0-46-generic
-rw-r--r-- 1 root root 118M Aug 11 17:48 initrd.img-5.15.0-43-generic
-rw-r--r-- 1 root root 119M Aug 11 17:47 initrd.img-5.15.0-46-generic
lrwxrwxrwx 1 root root 28 Aug 10 11:06 initrd.img.old -> initrd.img-5.15.0-43-generic
drwx------ 2 root root 16K Sep 17 2021 lost+found
-rw-r--r-- 1 root root 179K Aug 18 2020 memtest86+.bin
-rw-r--r-- 1 root root 181K Aug 18 2020 memtest86+.elf
-rw-r--r-- 1 root root 181K Aug 18 2020 memtest86+_multiboot.bin
-rw------- 1 root root 6.0M Jul 14 10:42 System.map-5.15.0-43-generic
-rw------- 1 root root 6.0M Aug 4 14:44 System.map-5.15.0-46-generic
lrwxrwxrwx 1 root root 25 Aug 10 11:06 vmlinuz -> vmlinuz-5.15.0-46-generic
-rw------- 1 root root 11M Jul 14 10:43 vmlinuz-5.15.0-43-generic
-rw------- 1 root root 11M Aug 4 14:47 vmlinuz-5.15.0-46-generic
lrwxrwxrwx 1 root root 25 Aug 10 11:06 vmlinuz.old -> vmlinuz-5.15.0-43-generic
そして、サイズ + ディスク使用量は次のようになります/boot
。
$ df -h /boot/
Filesystem Size Used Avail Use% Mounted on
/dev/nvme0n1p2 704M 279M 374M 43% /boot
アップデートでこれほど多くの/boot
スペースが要求される理由や、これを修正する方法に関するご提案があれば、ぜひお知らせください。
編集:理由は不明ですが、ツールを再度実行すると、429M
空き容量を要求されるようになりました。何も変更していないので、なぜ数値が低くなっているのかわかりません。それでも、必要な値よりはるかに大きいようです。
答え1
デスクトップトレイの警告アイコンからKDE Neonを更新しようとしたときにこの問題に遭遇しました。
を見てからリンク共有者グマウフ、私は組み合わせることで問題を解決することができましたこの答えそしてこの答えそのようです:
$ vim /etc/initramfs-tools/initramfs.conf
...
#
# COMPRESS: [ gzip | bzip2 | lz4 | lzma | lzop | xz ]
#
COMPRESS=lz4 # change lz4 to xz
...
# then after exiting/editing the file
$ sudo update-initramfs -u -k all
これにより、ファイルに加えられた変更が有効になります/etc/initramfs-tools/initramfs.conf
。その後、アップグレードを続行できるはずです。
sudo apt autoremove
以前見つけたこのワンライナーを使用して、一般的にスペースを解放し、古いカーネルを削除するために実行する価値はまだあります。
$ dpkg -l | egrep "linux-(signed|modules|image|headers)" | grep -v $(uname -r | cut -d - -f 1) | awk {'print $2'} | xargs sudo apt purge -y
使用しているカーネルを確認するには、短いバージョンを実行するだけで十分です。
$ dpkg -l | egrep "linux-(signed|modules|image|headers)" | grep $(uname -r)
ii
先頭にが付いているものは、インストールされたカーネルであることを意味します。
お役に立てれば。
答え2
同様の問題が発生している場合は、エラー メッセージで提案されたコマンドを実行します。
sudo apt autoremove
それでうまくいきました。