如何安全删除旧内核头文件和库

如何安全删除旧内核头文件和库

昨晚我们的系统耗尽了索引节点。幸运的是,我设法使用以下步骤删除了一些旧内核

  1. sudo dpkg --list 'linux-image*'|awk '{ if ($1=="ii") print $2}'|grep -v \ uname -r | xargs sudo apt-get purge $1

  2. sudo apt-get autoremove

  3. sudo update-grub

我设法找回一些 inode,但仍然有超过 85 个 inode 被占用。

使用ncdu我发现这些/usr/src/linux-headers-3.16.0.[69|71|73|..]目录仍然包含一些旧的内核头文件。

鉴于我当前的 Linux 版本是 ,我不确定是否需要它们3.19.0-80-generic

所以我在这里有两个问题:

  1. 删除它们安全吗?

  2. 如果是的话如何删除它们?

答案1

这在Ubuntu 维基;我在这里总结一下。

关于你的问题的第一部分,Ubuntu 内核设置了适当的配置,以确保apt autoremove不会删除正在运行的内核(以及最新的内核和一个备份内核);因此,您可以通过将所有过时的内核标记为自动安装来删除它们(以防它们丢失该标记):

sudo apt-mark auto '^linux-image-[34].*'

(这将为所有内核软件包产生警告不是已安装,但可以忽略它们),然后删除过时的软件包:

sudo apt autoremove

内核标头也可以安全删除,并且受到与内核映像相同的配置的保护,因此适用相同的方法:

sudo apt-mark auto '^linux-headers-[34].*'
sudo apt autoremove

相关内容