如何使用yum命令在CentOS Linux 7上安装最新内核
有没有办法在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