如何在CentOS 7上升级内核

在本教程中,我将向您展示如何将CentOS 7内核升级到最新版本,并且将使用ELRepo存储库中的内核。 CentOS的...

如何在CentOS 7上升级内核

内核是操作系统的大脑。 这就像每个操作系统的核心元素。 说到Linux,由Linus Torvalds创建的Linux内核是一个单片的,类Unix的内核。 一些使用Linux内核的流行操作系统是Ubuntu,CentOS和Debian。

在本教程中,我将向您展示如何将CentOS 7内核升级到最新版本,我们将使用ELRepo存储库中的内核。 CentOS 7使用3.10作为默认内核版本。 在本指南中,我们将安装最新的稳定版本4.11.2。

什么是ELRepo?

ELRepo是一个基于社区的企业Linux存储库,支持RedHat Enterprise(RHEL)和其他基于它的分发(CentOS,Scientific,Fedora等)。

ELRepo专注于与硬件相关的软件包,包括文件系统驱动程序,图形驱动程序,网络驱动程序,声卡驱动程序,网络摄像头等。

我们将要做什么

  1. 更新和升级CentOS 7
  2. 检查内核版本
  3. 添加ELRepo存储库
  4. 安装新的内核版本
  5. 配置Grub2
  6. 删除旧的内核

第1步 - 更新和升级CentOS 7

在升级内核之前,我们必须做的第一件事是将所有软件包升级到最新版本。 使用下面的yum命令将存储库和所有包更新到最新版本。

yum -y update

现在安装以下软件包以快速安装和更新过程。

yum -y install yum-plugin-fastestmirror

CentOS 7系统已更新,所有软件包升级到最新版本。

第2步 - 检查内核版本

在本教程中,我们将使用CentOS 7.3和默认的内核3.10。 用以下命令检查你的CentOS版本。

cat /etc/redhat-release
cat /etc/os-release

您将获得如下所示的系统信息。

为了检查内核版本,可以使用uname命令

uname -msr

输出将显示您的机器的Linux内核版本以及系统架构。

第3步 - 添加ELRepo存储库

在安装新的内核版本之前,我们需要添加新的版本库ELRepo库。 这是因为我们想要使用ELRepo社区的内核版本。

将ELRepo gpg密钥添加到系统中。

rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org

现在用rpm命令添加新的ELRepo存储库。

rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-2.el7.elrepo.noarch.rpm

接下来,检查系统上启用的所有存储库,并确保列表中包含ELRepo。

yum repolist

ELRepo存储库已被添加到CentOS 7服务器。

第4步 - 安装新的内核版本

在这一步中,我们将从ELRepo存储库安装最新的内核版本(4.11.2-最新的kernel.org上的稳定版本)。

使用下面的这个yum命令。

yum --enablerepo=elrepo-kernel install kernel-ml

--enablerepo是在CentOS系统上启用特定存储库的选项。 默认情况下,启用“elrepo”存储库,但对于我们的情况,我们需要“elrepo-kernel”。

您可以使用以下命令检查系统上的所有可用存储库(启用以及禁用)。

yum repolist all

第5步 - 配置Grub2 CentOS 7

在第四步,我们已经为系统安装了一个新的内核4.11.2。 现在我们将向您展示如何使它成为系统启动时加载的默认内核版本。

使用下面的awk命令检查所有可用的内核版本。

sudo awk -F\' '$1=="menuentry " {print i++ " : " $2}' /etc/grub2.cfg

在输出中,您会看到我们有两个内核版本 - 3.10和4.11.2。

我们要使用内核4.11作为默认值,所以你可以使用下面的命令来实现这个功能。

sudo grub2-set-default 0

0 - 它来自顶部的awk命令。 内核4.11.2 = 0,内核3.10 = 1.如果要恢复到旧的内核,可以将grub2-set-default命令的值更改为1。

接下来,用'gurb2-mkconfig'命令生成grub2配置,然后重启服务器。

sudo grub2-mkconfig -o /boot/grub2/grub.cfg
sudo reboot

请再次登录到服务器,并检查当前使用的内核。

uname -msr

结果应该是你的系统上正在使用内核版本4.11.2。

第6步 - 删除旧的内核(可选)

这是我们认为您需要获得更多自由空间的可选步骤。 在这一步中,我们将向您展示如何从CentOS 7系统中删除一个旧的内核。 这可以在服务器上安装几个内核版本时完成。

为此,我们需要从存储库安装yum-utils工具。

yum install yum-utils

现在用下面的命令清理旧的内核。

package-cleanup --oldkernels

如果你得到下面的结果。

这意味着你只安装了2或3个版本的内核。 如果您安装了3个以上的版本,该命令将自动从您的系统中删除旧的内核。

使用ELRepo内核版本,CentOS 7内核已经更新到最新的稳定版本。

参考