为什么 Linux 安装程序会安装多个内核?

为什么 Linux 安装程序会安装多个内核?

例如,我的启动菜单有三个内核版本,每个版本都有一个恢复选项。这些额外的选项是用于调试和故障排除的吗?

答案1

安装新内核后,由于 Linux 领域严重分散,因此无法保证新内核能够完美运行。因此,启动菜单将提供轻松启动到上一个内核的可能性。较早的内核可以轻松删除或从启动菜单中直接删除。

是的,它也可以被开发人员用于调试目的。

完全删除旧内核,示例

为了举例,我将使用 Ubuntu/Debian 机器。在执行此操作之前,请确保新内核正常工作且与当前安装兼容。首先,我们需要列出已安装的内核,因此打开一个终端窗口并执行:

dpkg --list 'linux-image*'

这应该输出类似下面的内容

||/ Name                          Version                       Description
+++-=============================-=============================-==========================================================================
ii  linux-image                   2.6.22.14.21                  Generic Linux kernel image.
un  linux-image-2.6                                       (no description available)
rc  linux-image-2.6.20-15-generic 2.6.20-15.27                  Linux kernel image for version 2.6.20 on x86/x86_64
ii  linux-image-2.6.20-16-generic 2.6.20-16.32                  Linux kernel image for version 2.6.20 on x86/x86_64
ii  linux-image-2.6.22-14-generic 2.6.22-14.47                  Linux kernel image for version 2.6.22 on x86/x86_64
ii  linux-image-generic           2.6.22.14.21                  Generic Linux kernel image

现在我们有了已安装内核的列表,我们可以通过调用包管理来轻松删除内核。假设我们想删除内核2.6.22-14-generic,我们执行:

sudo apt-get remove linux-image-2.6.22-14-generic

您可能需要输入您的凭据,之后您选择的内核将被永久删除。如果它仍存在于启动列表(GRUB)中,请在终端中执行以下命令:

sudo update-grub

答案2

当您更新到新的内核版本时,旧版本通常会保留在那里,以防新内核出现问题。

您没有提到您的发行版,但这里有一个清除它们的示例方法:http://www.cyberciti.biz/faq/proper-way-to-remove-old-linux-kernels/

相关内容