Centos7 grub的配置文件及排错 (转载)

    与Centos6不同Centos7采用的是grub2,而不是grub。在Centos7中,把grub的主要配置文件放在以下三个地方。

/boot/grub2/grub.cfg  (/etc/grub2.cfg 是/boot/grub2/grub.cfg 文件的符号链接)
/etc/grub.d/
/etc/default/grub
这三个配置文件之间的关系是 grub.cfg 里通过 ####BEGIN ##### 这种格式按照顺序调用 /etc/grub.d 里面的脚本实现不同的功能。在  grub.d 目录里有很多数字开头的脚本,按从小到大的顺序执行。
Centos7 grub的配置文件及排错
例如:在 /etc/grub2.cfg 文件里调用 /etc/grub.d/10_linux 来配置不同内核,在这里有2个menuentry(菜单入口),所以我们开机的时候会看见两个默认选项,一个是普通模式,一个是救援模式。
Centos7 grub的配置文件及排错
上图是 /etc/default/grub 文件。和其他的脚本比较起来,非常简单直观了。后面会举例如何修改(需要注意的是,最好不要直接去修改 /etc/grub2.cfg 文件。这个是因为如果后期升级内核,所有的配置都会失效。如果需要自定义这个文件,我们可以修改对应的脚本或者 /etc/default/grub 文件,然后通过 grub2-mkconfig 重新生成 grub.cfg 文件。)
我们可以修改grub配置文件来进行一些简单的配置。
例如:1.修改启动等待时间
Centos7 默认启动等待时间为 5 秒,我们可以将其改为3秒(注意,如果改为-1,那么每次启动需要手动确认才可以)
修改 /etc/default/grub 文件,如下图所示:
Centos7 grub的配置文件及排错
修改完成后重新编译生成 grub.cfg 文件
Centos7 grub的配置文件及排错
2.对 grub 进行加密
在开机界面时如果输入e ,会打开编辑窗口,我们可以根据需要进入 rescue, emergency 或者 shell 模式。那么如何对 grub 进行加密呢?
在 /etc/grub.d/00_header 文件的末尾,加入以下内容
Centos7 grub的配置文件及排错
其中,“EOF” 可以自己定义。然后重新定义编码文件
Centos7 grub的配置文件及排错
重启之后输入e,就需要用户和密码才能进入编辑窗口了。
上面我们设置的是明文密码。在 /etc/grub.d/00_header 文件内可以知道,那如何设置密文口令呢?
加密密码由命令 grub2-mkpasswd-pbkdf2 生成
将生成的密码符,添加到 /etc/grub.d/00_header 文件末尾
Centos7 grub的配置文件及排错
3.修改root密码
重启系统,按e进入编辑模式
在 linux16 那一行的末尾加上以下信息
rd.break console=tty0
Centos7 grub的配置文件及排错
按 ctrl+x 启动
重新挂载文件系统
Centos7 grub的配置文件及排错
改变根目录
Centos7 grub的配置文件及排错
修改root密码
echo "123456" | passwd --stdin root
在根目录下创建相关文件(用于重新标记 selinux 环境值) Centos7 grub的配置文件及排错
使用exit(两次),退出 系统将会重启。

  1. 开机排错
  2. 例如:1.grub 故障:比如把 MBR 的前 446 个字节都覆盖了

Centos7 grub的配置文件及排错
系统重启后会出现以下故障
Centos7 grub的配置文件及排错
开机的时候会自动尝试从本地,光盘和网络加载引导程序(如果光盘、网络等引导失败则会operatiing system not found);这里是从我的光盘加载的,因为本地的引导程序已经没有了。
选择 troubleshooting (排错)
选择 resure a red hat enterprise linux system
选择 continue(注意有耐心多等一下,有的时候会卡个 10 秒才有反应)
按照提示,切换根到本机的系统
Centos7 grub的配置文件及排错
使用 fdisk -l 查看启动分区是哪个,带星号的就是。
重装以下 grub2 到启动分区即可
Centos7 grub的配置文件及排错
重启就OK了
2.如果grub引导没问题,但我们把内核文件或 grub.cfg
配置文件删除了该怎么办?
Centos7 grub的配置文件及排错
重启之后,直接进入 grub 的救援模式,这表明程序没有问题,但引导文件找不到了
Centos7 grub的配置文件及排错
和前面一样,光盘启动,切换到根目录,挂载以下光盘到光盘挂载点,我们可以顺便卡一下 /boot 目录,发现里面以及没有东西了,内核文件和配置文件都没了
Centos7 grub的配置文件及排错
解决方法就是重新安装内核,rpm 可以强行--force 覆盖安装。
Centos7 grub的配置文件及排错
装完内核之后,重新安装grub2,输入 grub2-install /dev/sda,庵后重新编译一下 grub2 就行了
Centos7 grub的配置文件及排错
重启系统即可。

 

转载自:http://blog.51cto.com/13554481/2055628

posted @ 2020-05-28 09:46  song宁静致远  阅读(1384)  评论(0编辑  收藏  举报