Ubuntu 22 升級需要啟動分割區中的大量空間

Ubuntu 22 升級需要啟動分割區中的大量空間

當嘗試從 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

這就成功了。

相關內容