如何使用yum命令在CentOS Linux 7上安装最新内核

时间:2020-01-09 10:39:22  来源:igfitidea点击:

有没有办法在CentOS Linux版本7上运行最新/稳定的Linux内核?

CentOS Linux 7.x运行Linux内核版本3.10.xx。

RHEL和CentOS均未提供Linux内核的更新版本。

RHEL向后移植Linux内核版本3.10.xx的补丁。
但是,可以编译自己的内核或使用第三方存储库安装预构建的内核。
本教程向您展示如何使用yum命令在CentOS 7上安装最新的稳定版(主稳定版)Linux内核。
以下说明应在RHEL 7.x和克隆(如Oracle 7.x,Scientific Linux等)上起作用。

升级之前

您可以使用以下任一命令来查找当前的Linux内核版本:

$ cat /proc/version

输出示例:

Linux version 3.10.0-514.21.2.el7.x86_64 ([email protected]) (gcc version 4.8.5 20140623 (Red Hat 4.8.5-11) (GCC) ) #1 SMP Tue Jun 20 12:24:47 UTC 2016

或使用旧的好的uname命令:

$ uname -mrs

输出示例:

Linux 3.10.0-514.21.2.el7.x86_64 x86_64

最后,使用cat命令查看/etc/centos-release文件的包含:

$ cat /etc/centos-release
`CentOS Linux release 7.3.1611 (Core)`

步骤1启用ELRepo

ELRepo是用于Enterprise Linux软件包的RPM存储库。

ELRepo支持Red Hat Enterprise Linux(RHEL)及其衍生版本(Scientific Linux,CentOS等)。

ELRepo项目专注于与硬件相关的软件包,以增强您使用Enterprise Linux的体验。
这包括文件系统驱动程序,图形驱动程序,网络驱动程序,声音驱动程序,网络摄像头和视频驱动程序。

导入公钥

警告:请注意,安装RHEL和CentOS项目均未正式支持的新内核。
您的系统也可能无法启动。
由于kernel-ml/lt软件包是由kernel.org提供的源tar包构建的,无需对代码进行任何修改,因此与CentOS/RHEL发行版内核相比,它们可能包含一些差异。
因此,在执行此操作之前,必须保留所有重要文件的备份。

使用wget命令获取GPG密钥:

$ wget https://www.elrepo.org/RPM-GPG-KEY-elrepo.org

使用gpg命令检查GPG密钥的指纹,以确保它与elrepo发布的密钥匹配。

$ gpg --quiet --with-fingerprint RPM-GPG-KEY-elrepo.org

输出示例:

pub  1024D/BAADAE52 2009-03-17 elrepo.org (RPM Signing Key for elrepo.org) <[email protected]>
      Key fingerprint = 96C0 104F 6315 4731 1E0B  B1AE 309B C305 BAAD AE52
sub  2048g/B8C66E6D 2009-03-17

如果指纹匹配,请使用rpm命令导入GPG密钥。

$ sudo rpm --import RPM-GPG-KEY-elrepo.org

为CentOS 7安装ELRepo

再次使用wget命令。

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

输出示例:

--2016-06-25 19:06:34--  http://www.elrepo.org/elrepo-release-7.0-2.el7.elrepo.noarch.rpm
Resolving www.elrepo.org (www.elrepo.org)... 69.195.83.87
Connecting to www.elrepo.org (www.elrepo.org)|69.195.83.87|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 8584 (8.4K) [application/x-rpm]
Saving to: ?elrepo-release-7.0-2.el7.elrepo.noarch.rpm?
 
100%[===================================================================================================================================>] 8,584       --.-K/s   in 0s      
 
2016-06-25 19:06:34 (163 MB/s) - ?elrepo-release-7.0-2.el7.elrepo.noarch.rpm? saved [8584/8584]

步骤2安装elrepo

执行以下yum命令:

# yum install elrepo-release-7.0-2.el7.elrepo.noarch.rpm

步骤3列出yum elrepo信息库中可安装的所有软件包

执行以下yum命令以列出elrepo-kernel repo中的所有软件包:

$ yum list available --disablerepo='*' --enablerepo=elrepo-kernel

输出示例:

* elrepo-kernel: repos.lax-noc.com
Available Packages
kernel-lt.x86_64                               4.4.73-1.el7.elrepo           elrepo-kernel
kernel-lt-devel.x86_64                         4.4.73-1.el7.elrepo           elrepo-kernel
kernel-lt-tools-libs.x86_64                    4.4.73-1.el7.elrepo           elrepo-kernel
kernel-lt-tools-libs-devel.x86_64              4.4.73-1.el7.elrepo           elrepo-kernel
kernel-ml-tools-libs.x86_64                    4.11.7-1.el7.elrepo           elrepo-kernel
kernel-ml-tools-libs-devel.x86_64              4.11.7-1.el7.elrepo           elrepo-kernel
perf.x86_64                                    4.11.7-1.el7.elrepo           elrepo-kernel
python-perf.x86_64                             4.11.7-1.el7.elrepo           elrepo-kernel

其中:

  • 长期支持内核软件包的名称是kernel-lt版本4.4.xx
  • Mainline稳定内核软件包名称是kernel-ml版本4.11.xx

步骤4安装内核版本

要安装长期支持内核,请运行:

# yum --disablerepo='*' --enablerepo=elrepo-kernel install kernel-lt

要安装主线稳定内核,请运行:

# yum --disablerepo='*' --enablerepo=elrepo-kernel install kernel-ml

步骤5引导到新内核

执行以下重新启动命令以重新启动Linux框:

# reboot

或者

# shutdown -r now

或者

# shutdown -r 0

步骤6验证

使用以下任一命令找出当前的Linux内核版本:

$ cat /proc/version

输出示例:

Linux version 4.11.7-1.el7.elrepo.x86_64 (mockbuild@Build64R7) (gcc version 4.8.5 20140623 (Red Hat 4.8.5-11) (GCC) ) #1 SMP Sat Jun 24 09:49:01 EDT 2016

或使用旧的好的uname命令:

$ uname -mrs

输出示例:

Linux 4.11.7-1.el7.elrepo.x86_64 x86_64