如何真正删除旧内核?

如何真正删除旧内核?

我已阅读了此网站上许多回答此问题的答案。我使用的是 16.04,因此以下内容应适用于旧内核:

sudo apt-get autoremove

如果失败了,我可以手动删除旧的(保留最近的内核作为备份):

sudo apt-get remove linux-image-3.*
sudo apt-get remove linux-image-extras-3.*
sudo apt-get remove linux-headers-3.*
sudo apt-get remove linux-image-4.0.0-x*
sudo apt-get remove linux-image-extras-4.0.0-x*
sudo apt-get remove linux-headers-4.0.0-x*

x我在其中执行了= 34567、的最后三个命令8。这确实导致磁盘空间被清除,500M在某些情况下最多清除 ~。但是,我仍然看到这些旧内核占用了许多 MB 的磁盘空间/boot

ls -lh /boot

...

-rw-r--r-- 1 root root  14M Dec 17  2016 initrd.img-3.19.0-33-generic.old-dkms
-rw-r--r-- 1 root root  14M Dec 17  2016 initrd.img-3.19.0-61-generic.old-dkms
-rw-r--r-- 1 root root  14M Dec 17  2016 initrd.img-3.19.0-64-generic.old-dkms
-rw-r--r-- 1 root root  14M Dec 17  2016 initrd.img-3.19.0-65-generic.old-dkms
-rw-r--r-- 1 root root  14M Dec 17  2016 initrd.img-3.19.0-66-generic.old-dkms
-rw-r--r-- 1 root root  14M Dec 17  2016 initrd.img-3.19.0-68-generic.old-dkms
-rw-r--r-- 1 root root  14M Dec 17  2016 initrd.img-3.19.0-74-generic.old-dkms
-rw-r--r-- 1 root root  14M Dec 17  2016 initrd.img-3.19.0-75-generic.old-dkms
-rw-r--r-- 1 root root  14M Dec 17  2016 initrd.img-3.19.0-77-generic.old-dkms
-rw-r--r-- 1 root root  39M Nov 28 09:41 initrd.img-4.4.0-101-generic
-rw-r--r-- 1 root root  15M Dec 17  2016 initrd.img-4.4.0-31-generic.old-dkms
-rw-r--r-- 1 root root  18M Aug 27 18:51 initrd.img-4.4.0-57-generic.old-dkms
-rw-r--r-- 1 root root  18M Aug 27 18:51 initrd.img-4.4.0-59-generic.old-dkms
-rw-r--r-- 1 root root  18M Aug 27 18:52 initrd.img-4.4.0-62-generic.old-dkms
-rw-r--r-- 1 root root  18M Aug 27 18:52 initrd.img-4.4.0-64-generic.old-dkms
-rw-r--r-- 1 root root  18M Aug 27 18:53 initrd.img-4.4.0-71-generic.old-dkms
-rw-r--r-- 1 root root  18M Aug 27 18:53 initrd.img-4.4.0-72-generic.old-dkms
-rw-r--r-- 1 root root  18M Aug 27 18:53 initrd.img-4.4.0-75-generic.old-dkms
-rw-r--r-- 1 root root  18M Sep 23 11:33 initrd.img-4.4.0-78-generic.old-dkms
-rw-r--r-- 1 root root  39M Nov  4 17:00 initrd.img-4.4.0-98-generic  

...

此外,旧内核仍然被列为大型安装包dpkg

dpkg-query -W --showformat='${Installed-Size} ${Package}\n' | sort -nr | less

...

158659 linux-image-extra-4.4.0-47-generic
158555 linux-image-extra-4.4.0-36-generic
158443 linux-image-extra-4.4.0-34-generic
158201 linux-image-extra-4.4.0-31-generic
157559 linux-image-extra-4.4.0-53-generic
157559 linux-image-extra-4.4.0-51-generic
156386 linux-image-extra-3.19.0-77-generic
156386 linux-image-extra-3.19.0-75-generic
156385 linux-image-extra-3.19.0-74-generic
156384 linux-image-extra-3.19.0-68-generic
156384 linux-image-extra-3.19.0-66-generic
156384 linux-image-extra-3.19.0-65-generic
156383 linux-image-extra-3.19.0-64-generic
156380 linux-image-extra-3.19.0-61-generic
156178 linux-image-extra-3.19.0-33-generic
150341 linux-image-extra-4.4.0-57-generic
150205 linux-image-extra-4.4.0-62-generic
150198 linux-image-extra-4.4.0-59-generic
149214 linux-image-extra-4.4.0-101-generic
149191 linux-image-extra-4.4.0-98-generic
149156 linux-image-extra-4.4.0-96-generic
148953 linux-image-extra-4.4.0-72-generic
148953 linux-image-extra-4.4.0-71-generic
148940 linux-image-extra-4.4.0-64-generic
148663 linux-image-extra-4.4.0-87-generic
148621 linux-image-extra-4.4.0-78-generic
148598 linux-image-extra-4.4.0-75-generic

...

我怎样才能彻底清除系统中的这些旧内核?

答案1

您需要的是purge内核,而不仅仅是remove

Ubuntu 16.04 软件包中purge-old-kernels附带了一个方便的工具。byobu

编辑:在 Ubuntu 18.04 及更高版本中,您也可以使用它apt autoremove来删除旧内核。

答案2

使用 获取所有与内核相关的软件包列表apt list --installed | grep linux,以及apt remove您不需要的软件包。就这么简单。--purge如果需要,您可以使用,但在这种情况下它不应该有任何显著的影响。

相关内容