CentOS 7 使用 YUM 更新内核
在 CentOS 7 系统中,通过 YUM 包管理器可以方便地管理和更新系统内核,本文将详细介绍如何使用 YUM 更新 CentOS 7 的内核,包括检查当前内核版本、添加 ELRepo 仓库、安装新内核以及设置默认启动内核等步骤,下面将逐步讲解各个步骤:
检查当前内核版本
在开始之前,首先需要检查当前正在运行的内核版本,可以使用以下命令查看:
uname r
该命令输出类似3.10.01127.el7.x86_64
,表示当前系统使用的是 3.10 版本的内核。
添加 ELRepo 仓库
CentOS 官方的 YUM 仓库中通常不会提供最新的内核版本,为了获取最新版本的内核,我们需要添加 ELRepo 第三方仓库,ELRepo 是一个由社区维护的项目,提供了更新的 CentOS 和 RHEL 系统的内核。
安装 ELRepo 仓库的 GPG 密钥:
sudo rpm import https://www.elrepo.org/RPMGPGKEYelrepo.org
安装 ELRepo 仓库软件包:
sudo yum install https://www.elrepo.org/elreporelease7.04.el7.elrepo.noarch.rpm
查看可用的内核版本
添加完 ELRepo 仓库后,可以使用以下命令查看可用的内核版本:
sudo yum disablerepo="*" enablerepo="elrepokernel" list available
输出示例:
Loaded plugins: fastestmirror, langpacks Loading mirror speeds from cached hostfile * elrepokernel: mirrors.neusoft.edu.cn Installed Packages kernel.x86_64 3.10.01127.19.1.el7 @updates Available Packages kernellt.x86_64 4.4.1691.el7.elrepo kernelltdevel.x86_64 4.4.1691.el7.elrepo ...
可以看到,有两个主要版本的内核可供选择:kernellt
(长期支持版本)和kernelml
(主线稳定版本)。
安装新内核
选择要安装的内核版本并执行安装命令,以安装kernellt
为例:
sudo yum enablerepo=elrepokernel install kernellt y
安装过程中,YUM 会自动解决依赖关系并下载所需的软件包。
验证新内核安装
安装完成后,使用以下命令验证新内核是否已安装:
rpm q kernel
输出示例:
kernel3.10.01127.el7.x86_64 kernellt4.4.1691.el7.elrepo.x86_64
可以看到,新内核4.4.169
已经成功安装。
重启系统并切换到新内核
为了使新安装的内核生效,需要重启系统,在重启后,系统会自动切换到新内核,可以使用以下命令查看当前的内核版本,确认是否切换成功:
uname r
如果输出为新内核版本号,则说明切换成功。
设置默认启动内核(可选)
如果系统中安装了多个内核版本,可以通过以下步骤设置默认启动的内核版本,查看所有可用的内核版本及其启动顺序:
awk F\' '$1=="menuentry " {print i++ " : " $2}' /etc/grub2.cfg
输出示例:
0 : CentOS Linux (4.4.1691.el7.elrepo.x86_64) 7 (Core) 1 : CentOS Linux (3.10.01127.19.1.el7.x86_64) 7 (Core)
假设要设置4.4.169
为默认启动内核,可以使用以下命令:
sudo grub2setdefault 0
重新生成 GRUB 配置文件:
sudo grub2mkconfig o /boot/grub2/grub.cfg
通过以上步骤,我们成功地使用 YUM 更新了 CentOS 7 的内核,整个过程包括检查当前内核版本、添加 ELRepo 仓库、查看可用内核版本、安装新内核、重启系统以及设置默认启动内核,这些步骤确保了系统能够顺利升级到新的内核版本,从而提高系统的安全性和稳定性。
常见问题解答(FAQs)
Q1: 为什么需要更新内核?
A1: 更新内核可以带来多方面的好处,包括修复已知的安全漏洞、提高系统性能、增加对新硬件的支持以及引入新的功能,高版本的内核通常会修复低版本中的许多 bug,因此更新内核是保持系统安全和稳定的重要措施。
Q2: 如何卸载旧版内核?
A2: 在安装新版本内核后,可以选择卸载旧版内核以释放磁盘空间,查看已安装的内核版本:
rpm qa | grep kernel
使用 YUM 卸载旧版内核,要卸载3.10.0
版本的内核,可以运行:
sudo yum remove kernel3.10.01127.el7.x86_64 y
>注意不要卸载当前正在运行的内核版本,以免系统无法启动。