CentOS更新
跳到导航
跳到搜索
关于
大多数现代发行版提供了一种使用 yum 等包管理系统和官方支持的仓库升级内核的方法。但是,这只会升级内核到仓库中可用的最新版本——而不是在 https://www.kernel.org/ 中可用的最新版本。 注意: 1、Red Hat 只允许使用官方支持的仓库升级内核。 2、CentOS 允许使用 ELRepo(这是一个第三方仓库,可以将内核升级到最新版本)。
- 更新之前应当做好重要数据的备份。
CentOS 7 更新
- 检查你的 CentOS 版本。
cat /etc/redhat-release CentOS Linux release 7.1.1503 (Core)
- 升级内核:【两种方式】
- 使用官方支持的仓库
- 使用第三方仓库 ELRepo
- 重启服务器:
reboot
- 确认升级:
cat /etc/redhat-release CentOS Linux release 7.4.1611 (Core)
使用官方支持的仓库
使用 yum 直接进行系统升级(一次性更新所有软件到最新版本):
# 清除 yum 缓存 yum clean all # 使用 yum 进行升级 yum update
- “yum repolist all”:查看当前软件源是否可用;
使用第三方仓库 ELRepo
ELRepo 有两种类型的 Linux 内核包: 1、kernel-lt :根据 Linux Kernel Archives 的长期支持分支提供的源构建; 2、kernel-ml :根据 Linux Kernel Archives 的主线稳定分支提供的源构建; ELRepo 仓库使用,参见: http://elrepo.org/tiki/HomePage
步骤:
- 安装内核:
# 导入 elrepo 软件源的 GPG 公钥 rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org # 导入 elrepo 软件源 rpm -Uvh https://www.elrepo.org/elrepo-release-7.0-4.el7.elrepo.noarch.rpm # 下载并安装新的内核(最新的主线稳定内核) yum --enablerepo=elrepo-kernel install kernel-ml -y
- 仓库启用后,可以使用下面的命令列出可用的内核相关包:
yum --disablerepo="*" --enablerepo="elrepo-kernel" list available
- 设置 GRUB 默认的内核版本:
grub2-set-default 0
- 如果手动修改过 Grub 的配置文件(“/etc/default/grub”),该命令可能无法执行成功。
- 手动设置 GRUB 默认的内核版本:
- 修改 Grub 配置文件:
vi /etc/default/grub ... GRUB_DEFAULT=0 ...
- 将“GRUB_DEFAULT=saved”修改为“GRUB_DEFAULT=0”;
- 重新创建内核配置:
grub2-mkconfig -o /boot/grub2/grub.cfg
- 修改 Grub 配置文件:
- (如果 CentOS 6 更新,则只需“vim /etc/grub.conf”修改为“default=0”,不需要重新创建内核配置???)
- 删除旧内核:
yum -y remove kernel kernel-tools
- 删除旧内核的目的是为了防止 yum 更新旧版内核之后覆盖了 grub 默认启动项。