CentOS 7修改启动内核详细指南
操作背景说明
在CentOS 7系统中更新内核后,默认可能不会自动切换到新内核启动。本文提供完整的GRUB2配置修改方案,实现启动内核的手动切换控制。
操作步骤
1. 查看当前可用内核
awk -F' '$1=="menuentry " {print $2}' /boot/grub2/grub.cfg
终端执行此命令,输出所有可用内核列表(按安装时间倒序排列)。
2. 确定目标内核序号
记录需要启动的内核名称。GRUB从0开始计数(顶部为0,第二个为1)。
3. 设置默认启动内核
修改GRUB配置文件:
sudo vi /etc/default/grub
定位GRUB_DEFAULT
参数:
- 使用序号模式:
GRUB_DEFAULT="0"
(0代表第一个内核) - 使用名称模式:
GRUB_DEFAULT="CentOS Linux (3.10.0-1160.el7.x86_64) 7 (Core)"
4. 刷新GRUB配置
sudo grub2-mkconfig -o /boot/grub2/grub.cfg
5. 确认内核修改效果
重启系统后执行验证命令:
uname -r
关键注意事项
- 内核名称需与
grub.cfg
显示的完全一致(含括号内容) - 生产环境建议提前测试目标内核的兼容性
- 修改前备份配置:
sudo cp /etc/default/grub{,.bak}
疑难场景解决方案
多内核共存时的启动管理
临时切换启动项:重启时按e编辑GRUB菜单,修改内核参数后按Ctrl+X启动。
安全模式启动配置
在目标内核名称后追加:systemd.unit=rescue.target
效果验证方法
终端执行:
sudo grub2-editenv list
检查saved_entry
值是否与设定序号或名称匹配。