![/boot 磁盘空间不足时应删除哪个内核版本?](https://linux22.com/image/1072992/%2Fboot%20%E7%A3%81%E7%9B%98%E7%A9%BA%E9%97%B4%E4%B8%8D%E8%B6%B3%E6%97%B6%E5%BA%94%E5%88%A0%E9%99%A4%E5%93%AA%E4%B8%AA%E5%86%85%E6%A0%B8%E7%89%88%E6%9C%AC%EF%BC%9F.png)
在 Ubuntu 20.04 上运行时,尝试更新时出现 /boot 磁盘空间不足错误消息。
The upgrade needs a total of 228 M free space on disk '/boot'. Please free at least an additional 24,8 M of disk space on '/boot'.
在我的 /boot 文件夹中,我有以下文件:
/boot
total 460452
drwx------ 3 root root 4096 Jan 1 1970 efi
-rw-r--r-- 1 root root 184884 Aug 18 2020 memtest86+_multiboot.bin
-rw-r--r-- 1 root root 184380 Aug 18 2020 memtest86+.elf
-rw-r--r-- 1 root root 182704 Aug 18 2020 memtest86+.bin
drwx------ 2 root root 16384 Feb 2 2021 lost+found
-rw------- 1 root root 6219821 Jan 6 17:21 System.map-5.15.0-58-generic
-rw-r--r-- 1 root root 262181 Jan 6 17:21 config-5.15.0-58-generic
-rw------- 1 root root 11450528 Jan 6 17:21 vmlinuz-5.15.0-58-generic
-rw-r--r-- 1 root root 217500477 Jan 20 06:33 initrd.img-5.15.0-58-generic
-rw------- 1 root root 6221223 Jan 25 10:27 System.map-5.15.0-60-generic
-rw-r--r-- 1 root root 262215 Jan 25 10:27 config-5.15.0-60-generic
-rw------- 1 root root 11458344 Jan 25 10:29 vmlinuz-5.15.0-60-generic
lrwxrwxrwx 1 root root 25 Feb 9 06:53 vmlinuz.old -> vmlinuz-5.15.0-58-generic
lrwxrwxrwx 1 root root 25 Feb 9 06:53 vmlinuz -> vmlinuz-5.15.0-60-generic
lrwxrwxrwx 1 root root 28 Feb 9 06:53 initrd.img.old -> initrd.img-5.15.0-58-generic
lrwxrwxrwx 1 root root 28 Feb 9 06:53 initrd.img -> initrd.img-5.15.0-60-generic
-rw-r--r-- 1 root root 217514515 Feb 9 06:53 initrd.img-5.15.0-60-generic
drwxr-xr-x 4 root root 4096 Feb 9 06:54 grub
命令“uname -a”返回:
uname -a
Linux balazskocsis 5.15.0-60-generic #66~20.04.1-Ubuntu SMP Wed Jan 25 09:41:30 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux
当我列出 dpkg 包时,我得到了:
dpkg -l 'linux-*' | sed '/^ii/!d;/'"$(uname -r | sed "s/\(.*\)-\([^0-9]\+\)/\1/")"'/d;s/^[^ ]* [^ ]* \([^ ]*\).*/\1/;/[0-9]/!d'
linux-generic-hwe-20.04
linux-headers-5.15.0-58-generic
linux-headers-5.8.0-63-generic
linux-headers-generic-hwe-20.04
linux-hwe-5.15-headers-5.15.0-58
linux-hwe-5.8-headers-5.8.0-63
linux-image-5.15.0-58-generic
linux-image-generic-hwe-20.04
linux-libc-dev:amd64
linux-modules-5.15.0-58-generic
linux-modules-extra-5.15.0-58-generic
我相信我需要用清除命令清理内核版本 5-15.0-58:
sudo apt-get -y purge linux-modules-5.15.0-58-generic
但我不太确定。
如果我理解正确的话:
lrwxrwxrwx 1 root root 25 Feb 9 06:53 vmlinuz.old -> vmlinuz-5.15.0-58-generic
lrwxrwxrwx 1 root root 25 Feb 9 06:53 vmlinuz -> vmlinuz-5.15.0-60-generic
当前版本是5.15.0-60,5.15.0-58的版本可以删除。
鉴于 /boot 文件夹列表和 uname -a 的输出,删除 5.15.0-58 版本是否可以安全?
答案1
如果您确定内核版本 5.15.0-60 运行正常,那么您可以删除内核版本 5-15.0-58。
在我的系统上,旧内核的以下文件会被自动删除:
linux-modules-extra-5.15.0-xx-generic
linux-modules-5.15.0-xx-generic
linux-image-5.15.0-xx-generic
linux-headers-5.15.0-xx-generic
linux-headers-5.15.0-xx
因此你可以运行:
sudo apt remove --purge linux-modules-extra-5.15.0-58-generic linux-modules-5.15.0-58-generic linux-image-5.15.0-58-generic linux-headers-5.15.0-58-generic linux-headers-5.15.0-58
但是,请注意,这样做,你拆除安全网安装备份内核(前一个内核)一个工作内核在系统上。
从长远来看,扩展/boot
分区会更加明智,这样 Ubuntu 就可以在安装 2 个工作内核的情况下正常运行。