在出现常见的“你的 /boot 已满”消息后,我尝试使用 byobu 清理旧内核
sudo purge-old-kernels
No kernels are eligible for removal
然而当我跑步时ls /boot
,我得到了这个
abi-4.4.0-78-generic initrd.img-4.4.0-51-generic.old-dkms initrd.img-4.4.0-70-generic.old-dkms memtest86+.bin
config-4.4.0-78-generic initrd.img-4.4.0-53-generic.old-dkms initrd.img-4.4.0-71-generic.old-dkms memtest86+.elf
efi initrd.img-4.4.0-57-generic.old-dkms initrd.img-4.4.0-72-generic.old-dkms memtest86+_multiboot.bin
grub initrd.img-4.4.0-59-generic.old-dkms initrd.img-4.4.0-75-generic System.map-4.4.0-78-generic
initrd.img-4.4.0-38-generic.old-dkms initrd.img-4.4.0-62-generic.old-dkms initrd.img-4.4.0-75-generic.old-dkms vmlinuz-4.4.0-78-generic
initrd.img-4.4.0-42-generic.old-dkms initrd.img-4.4.0-63-generic.old-dkms initrd.img-4.4.0-77-generic.old-dkms vmlinuz-4.4.0-78-generic.efi.signed
initrd.img-4.4.0-43-generic.old-dkms initrd.img-4.4.0-64-generic.old-dkms initrd.img-4.4.0-78-generic
initrd.img-4.4.0-45-generic.old-dkms initrd.img-4.4.0-66-generic.old-dkms initrd.img-4.4.0-79-generic.old-dkms
initrd.img-4.4.0-47-generic.old-dkms initrd.img-4.4.0-67-generic.old-dkms lost+found
当我运行时dpkg --list | egrep -i 'linux-image|linux-headers'
,输出包括
rc linux-image-extra-4.4.0-xx-generic 4.4.0-xx amd64 Linux kernel extra modules for version 4.4.0 on 64 bit x86 SMP
前面的是什么rc
意思?为什么会有这些残留图像?如何修复?
编辑 1:我删除了所有残留的包,现在dpkg --list | egrep -i 'linux-image|linux-headers'
看起来很正常
ii linux-headers-4.4.0-78 4.4.0-78.99 all Header files related to Linux kernel version 4.4.0
ii linux-headers-4.4.0-78-generic 4.4.0-78.99 amd64 Linux kernel headers for version 4.4.0 on 64 bit x86 SMP
ii linux-image-4.4.0-78-generic 4.4.0-78.99 amd64 Linux kernel image for version 4.4.0 on 64 bit x86 SMP
ii linux-image-extra-4.4.0-78-generic 4.4.0-78.99 amd64 Linux kernel extra modules for version 4.4.0 on 64 bit x86 SMP
apt purge
给出0 to upgrade, 0 to newly install, 0 to remove and 0 not to upgrade.
grub 中仍然充满了 initrd.img。
答案1
要了解 的含义rc
,请检查输出的标题dpkg --list
。
$ dpkg --list | head -n3
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
第一个字母是期望,r
这里的意思是消除.第二封信是地位,c
这里的意思是配置文件。
换句话说,包本身被删除,但其配置被保留。您apt purge <package>
也可以运行以删除配置。配置文件大多很小,它们被保留以便于重新安装。
必须手动删除这些initrd.img-*.old-dkms
文件。查看答案
了解更多信息。