![为什么 16.04 LTS 上的“/lib/modules”下有两个内核?](https://linux22.com/image/1142704/%E4%B8%BA%E4%BB%80%E4%B9%88%2016.04%20LTS%20%E4%B8%8A%E7%9A%84%E2%80%9C%2Flib%2Fmodules%E2%80%9D%E4%B8%8B%E6%9C%89%E4%B8%A4%E4%B8%AA%E5%86%85%E6%A0%B8%EF%BC%9F.png)
磁盘使用情况分析器显示 /lib/modules 下有 4.4.0-45 和 4.4.0-47,这是为什么?是否需要两个内核,还是更新后旧内核仍然保留?删除旧内核安全吗?
答案1
保留一个旧内核版本以防新版本出现故障是很常见的。
先前的版本可以在 grub 的Advanced Options
菜单中找到。
Ubuntu 自动安装的内核可以通过使用以下命令自动删除:
sudo apt autoremove
这会删除旧内核(Ubuntu 自动安装的),但保留当前版本和之前的版本。
当您手动安装内核时(通常需要获得新的硬件支持或解决某个“故障”),您需要手动删除它们。
答案2
该内核版本4.4.0-47
是Canonical Kernel Team发布的内核的最新更新。
您可以使用工具从命令行清除旧内核purge-old-kernels
。
要安装它,请运行:
sudo apt-get install bikeshed
要保留最新内核并清除旧内核:
sudo purge-old-kernels --keep 1
答案3
存在这两个目录是因为为内核构建的内核模块4.4.0-45
与为内核构建的内核模块不兼容4.4.0-47
。
删除内核很困难,尤其是对于新手来说。很容易破坏系统、遗留文件,而且通常迫使你学习比你想学习的更多有关 Linux 内部的知识。学习是件好事,但当你试图修复一个损坏的系统时就不合适了。
幸运的是,有一个工具可以提供帮助。它被称为purge-old-kernels
,是软件包的一部分(随附)byobu
。(如果man purge-old-kernels
失败,请执行sudo apt-get install byobu
并重试)。
从http://manpages.ubuntu.com/manpages/xenial/en/man1/purge-old-kernels.1.html
xenial (1) purge-old-kernels.1.gz
Provided by: byobu_5.105-0ubuntu1_all
NAME
purge-old-kernels - remove old kernel and header packages from the
system
答案4
一旦您验证当前内核适用于您的系统,您就可以轻松删除旧内核。
打开终端并输入以下命令:
sudo apt autoremove --purge
输入您的密码,然后获利..