CentOS内核升级及gub启动项配置


原文链接: CentOS内核升级及gub启动项配置

zybb 更新内核

  1. 查看当前系统内核版本
    uname -sr

Linux 3.10.0-327.3.1.el7.x86_64

  1. 查看当前启动项
    grub2-editenv list

saved_entry=CentOS Linux (3.10.0-327.3.1.el7.x86_64) 7 (Core)

  1. 查看所有内核
    ls /boot/|grep vmlinuz

vmlinuz-3.10.0-327.3.1.el7.x86_64
vmlinuz-3.10.0-327.el7.x86_64
vmlinuz-0-rescue-5cb2c0bac3c040f5807e947c6b0bf499

  1. 查看启动内核在配置的第几项从0开始
    cat /boot/grub2/grub.cfg|grep ^menuentry
    grep ^menuentry /boot/grub2/grub.cfg | cut -d "'" -f2
    ini /boot/grub2/grub.cfg menuentry 'CentOS Linux (3.10.0-327.3.1.el7.x86_64) 7 (Core)' GRUB_DEFAULT=0 menuentry 'CentOS Linux (3.10.0-327.el7.x86_64) 7 (Core)' GRUB_DEFAULT=1 menuentry 'CentOS Linux (0-rescue-5cb2c0bac3c040f5807e947c6b0bf499) 7 (Core)' GRUB_DEFAULT=2

  2. 设置 GRUB 引导,默认的内核版本

方式1: 强制更新序号
ls /boot/|grep vmlinuz && sed -i '/GRUB_DEFAULT/s/^.*$/GRUB_DEFAULT=1/' /etc/default/grub && grub2-mkconfig -o /boot/grub2/grub.cfg

为了让新安装的内核成为默认启动选项,你需要如下修改 GRUB 配置:
打开并编辑 vi /etc/default/grub 并设置 GRUB_DEFAULT=0

ini vi /etc/default/grub GRUB_TIMEOUT=5 GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)" GRUB_DEFAULT=saved GRUB_DISABLE_SUBMENU=true GRUB_TERMINAL_OUTPUT="console" GRUB_CMDLINE_LINUX="vconsole.keymap=us crashkernel=auto vconsole.font=latarcyrheb-sun16 nofb nomodeset console=tty0 console=ttyS0,115200 enforcing=0" GRUB_DISABLE_RECOVERY="true"

方式2: [推荐]更新saved_entry
cat /boot/grub2/grub.cfg|grep ^menuentry && yum update -y && grub2-set-default 'CentOS Linux (3.10.0-327.el7.x86_64) 7 (Core)' && grub2-editenv list

grub2-set-default 'CentOS Linux (3.10.0-327.el7.x86_64) 7 (Core)'

  1. 重建内核配置。

    grub2-mkconfig -o /boot/grub2/grub.cfg

  • 1. 设置当前启动项 grub2-set-default 'CentOS Linux (3.10.0-327.el7.x86_64) 7 (Core)'
  • 2. 查看当前启动项 grub2-editenv list
  • 3. 重建当前启动项 grub2-mkconfig -o /boot/grub2/grub.cfg
`