详解如何在 CentOS 7 中安装或升级最新的内核
1个回答
展开全部
第一步:检查已安装的内核版本
让我们安装了一个发行版,它包含了一个特定版本的内核。为了展示当前系统中已安装的版本,我们可以:
# uname -sr
下面的图片展示了在一台 CentOS 7 服务器上的输出信息:
如果我们现在进入,在撰写本文时,我们看到最新的内核版本是4.10.1(其他版本可以从同一网站获得)。
还要考虑的一个重要的事情是内核版本的生命周期 - 如果你当前使用的版本接近它的生命周期结束,那么在该日期后将不会提供更多的 bug 修复。关于更多信息,请参阅内核发布页。
第二步:在 CentOS 7 中升级内核
大多数现代发行版提供了一种使用 yum 等包管理系统和官方支持的仓库升级内核的方法。
但是,这只会升级内核到仓库中可用的最新版本 - 而不是在 中可用的最新版本。不幸的是,Red Hat 只允许使用前者升级内核。
与 Red Hat 不同,CentOS 允许使用 ELRepo,这是一个第三方仓库,可以将内核升级到最新版本。
要在 CentOS 7 上启用 ELRepo 仓库,请运行:
仓库启用后,你可以使用下面的命令列出可用的内核相关包:
# yum --disablerepo="*" --enablerepo="elrepo-kernel" list available
接下来,安装最新的主线稳定内核:
# yum --enablerepo=elrepo-kernel install kernel-ml
最后,重启机器并应用最新内核,接着运行下面的命令检查最新内核版本:
uname -sr
第三步:设置 GRUB 默认的内核版本
为了让新安装的内核成为默认启动选项,你需要如下修改 GRUB 配置:
打开并编辑 /etc/default/grub并设置GRUB_DEFAULT=0。意思是 GRUB 初始化页面的第一个内核将作为默认内核。
GRUB_TIMEOUT=5
GRUB_DEFAULT=0
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL_OUTPUT="console"
GRUB_CMDLINE_LINUX="rd.lvm.lv=centos/root rd.lvm.lv=centos/swap crashkernel=auto rhgb quiet"
GRUB_DISABLE_RECOVERY="true"
接下来运行下面的命令来重新创建内核配置。
# grub2-mkconfig -o /boot/grub2/grub.cfg
第四步:重启并验证最新的内核已作为默认内核
恭喜你!你已经在 CentOS 7 中升级内核了!
9
总结:
在本文中,我们解释了如何轻松升级系统上的 Linux 内核。我们还没讲到另外一个方法,因为它涉及从源代码编译内核,这可以写成一本书,并且不推荐在生产系统上这么做。
虽然它是最好的学习体验之一,并且允许细粒度配置内核,但是你可能会让你的系统不可用,并且可能必须从头重新安装它。
如果你仍然有兴趣构建内核作为学习经验,你可以在 Kernel Newbies页面中获得指导。
让我们安装了一个发行版,它包含了一个特定版本的内核。为了展示当前系统中已安装的版本,我们可以:
# uname -sr
下面的图片展示了在一台 CentOS 7 服务器上的输出信息:
如果我们现在进入,在撰写本文时,我们看到最新的内核版本是4.10.1(其他版本可以从同一网站获得)。
还要考虑的一个重要的事情是内核版本的生命周期 - 如果你当前使用的版本接近它的生命周期结束,那么在该日期后将不会提供更多的 bug 修复。关于更多信息,请参阅内核发布页。
第二步:在 CentOS 7 中升级内核
大多数现代发行版提供了一种使用 yum 等包管理系统和官方支持的仓库升级内核的方法。
但是,这只会升级内核到仓库中可用的最新版本 - 而不是在 中可用的最新版本。不幸的是,Red Hat 只允许使用前者升级内核。
与 Red Hat 不同,CentOS 允许使用 ELRepo,这是一个第三方仓库,可以将内核升级到最新版本。
要在 CentOS 7 上启用 ELRepo 仓库,请运行:
仓库启用后,你可以使用下面的命令列出可用的内核相关包:
# yum --disablerepo="*" --enablerepo="elrepo-kernel" list available
接下来,安装最新的主线稳定内核:
# yum --enablerepo=elrepo-kernel install kernel-ml
最后,重启机器并应用最新内核,接着运行下面的命令检查最新内核版本:
uname -sr
第三步:设置 GRUB 默认的内核版本
为了让新安装的内核成为默认启动选项,你需要如下修改 GRUB 配置:
打开并编辑 /etc/default/grub并设置GRUB_DEFAULT=0。意思是 GRUB 初始化页面的第一个内核将作为默认内核。
GRUB_TIMEOUT=5
GRUB_DEFAULT=0
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL_OUTPUT="console"
GRUB_CMDLINE_LINUX="rd.lvm.lv=centos/root rd.lvm.lv=centos/swap crashkernel=auto rhgb quiet"
GRUB_DISABLE_RECOVERY="true"
接下来运行下面的命令来重新创建内核配置。
# grub2-mkconfig -o /boot/grub2/grub.cfg
第四步:重启并验证最新的内核已作为默认内核
恭喜你!你已经在 CentOS 7 中升级内核了!
9
总结:
在本文中,我们解释了如何轻松升级系统上的 Linux 内核。我们还没讲到另外一个方法,因为它涉及从源代码编译内核,这可以写成一本书,并且不推荐在生产系统上这么做。
虽然它是最好的学习体验之一,并且允许细粒度配置内核,但是你可能会让你的系统不可用,并且可能必须从头重新安装它。
如果你仍然有兴趣构建内核作为学习经验,你可以在 Kernel Newbies页面中获得指导。
名片
2024-10-28 广告
2024-10-28 广告
Altair HyperWorks是一套功能强大的集成化CAE(计算机辅助工程)软件平台,由Altair公司开发。它涵盖了结构分析、流体动力学、优化、多体动力学、电磁场仿真等多个领域,提供了丰富的仿真工具和优化算法。HyperWorks以其...
点击进入详情页
本回答由名片提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询