CentOS 7 GRUB 引导配置详解

GRUB 简介
GRUB(GRand Unified Bootloader)是一种多操作系统启动加载程序,它允许用户从多个操作系统启动,在CentOS 7系统中,GRUB是默认的引导加载程序,本文将详细介绍如何在CentOS 7系统中配置GRUB引导。
GRUB 配置文件
GRUB的配置文件位于/etc/grub.d/目录下,主要的配置文件是grub.conf,该文件包含了GRUB启动时的各种配置信息。
修改GRUB配置
打开GRUB配置文件
使用文本编辑器打开/etc/grub.d/grub.conf文件,例如使用vi编辑器:
sudo vi /etc/grub.d/grub.conf
修改默认启动项
在default行中,设置默认启动项的索引号,如果默认启动项是第二个操作系统,则将default行的值设置为2。

设置启动菜单超时时间
在timeout行中,设置启动菜单的超时时间,设置10秒后自动启动默认操作系统:
timeout 10
添加或修改操作系统启动项 行后面添加新的操作系统启动项,添加一个Windows 10启动项:
rootnoverify (hd0,0) makeactive chainloader +1
保存并退出编辑器
保存并退出编辑器,保存对grub.conf文件的修改。
更新GRUB
在修改完GRUB配置文件后,需要更新GRUB以使更改生效,使用以下命令更新GRUB:
sudo grub2-mkconfig -o /boot/grub2/grub.cfg
重启系统
重启系统以应用GRUB的更改。

GRUB 配置示例
以下是一个简单的GRUB配置示例:
# grub.conf generated by anaconda # # Note that you do not have to rerun grub after making changes to this file # NOTICE: You have a /boot partition. This means that # all kernel and initrd images for all architectures will be # placed in it, and the boot loader will not search any other # partition by default. set default=0 set timeout=5 CentOS Linux (3.10.0-514.2.2.el7.x86_64) (2.6.32-642.6.1.el7.x86_64) root (hd0,0) kernel /vmlinuz-3.10.0-514.2.2.el7.x86_64 ro root=/dev/mapper/vg_centos-root rd.lvm.lv=vg_centos/root rd.lvm.lv=vg_centos/swap rhgb quiet initrd /initramfs-3.10.0-514.2.2.el7.x86_64.img CentOS Linux (3.10.0-514.2.2.el7.x86_64) (0.0.0.0) root (hd0,0) kernel /vmlinuz-3.10.0-514.2.2.el7.x86_64 ro root=/dev/mapper/vg_centos-root rd.lvm.lv=vg_centos/root rd.lvm.lv=vg_centos/swap rhgb quiet initrd /initramfs-3.10.0-514.2.2.el7.x86_64.img Windows 10 rootnoverify (hd0,0) makeactive chainloader +1
FAQs
Q1:如何查看当前GRUB的配置信息?
A1:可以使用以下命令查看当前GRUB的配置信息:
sudo grub2-editenv list
Q2:如何将GRUB配置文件备份?
A2:可以使用以下命令将GRUB配置文件备份:
sudo cp /etc/grub.d/grub.conf /etc/grub.d/grub.conf.bak

