2019/02/20 启动流程和故障排错

grub修复的手段,一种是依赖备份,如果没备份,如何做修复
清空446字节,
grub -install 不仅修复1阶段,还修复1.5,2阶段的

在这里插入图片描述
完成修复
在这里插入图片描述
如果重启,那么grub-install 只能在救援模式下执行
在这里插入图片描述
/sbin/grub并不是在救援模式加载的光盘下有,它在原来的硬盘里才有,所以需要切跟,最后reboot
在这里插入图片描述
sync确保写磁盘,因为可能会出现问题
在这里插入图片描述
出现这个菜单就是进入2阶段,因为这个菜单是由第二阶段生成的
禁用selinux还有第二种方法,临时禁用 selinux=0

在这里插入图片描述

避免打标签的问题就禁用selinux
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
修复mbr还有另外的方法,就是grub命令,是个交互式命令,可以跟上 setup 和root子命令来进行修复
这边的root指的是boot分区的意思(它认为内核认为所在的分区才是boot分区)

0.0表示第一的分区
在这里插入图片描述
再次破坏
在这里插入图片描述
修复,把1.5阶段放到了后面的27个扇区
在这里插入图片描述
这条命令依赖于/boot./grub里的文件
在这里插入图片描述把/boot/grub里的文件移走,只留下grub.conf和splash.xpm.gz(登录界面),测试移走这些文件是否会影响启动(不会),应该属于grub的相关数据
这些文件的作用就是用grub命令来做修复用的,相当于备份数据,所以暂时把这些杀出也不受影响

恢复到之前,/boot/grub就剩两个文件,再进行一次破坏,未修复过,可以正常启动
在这里插入图片描述
在这里插入图片描述
恢复之后,因为之前未修复只是移除文件,那么现在进行破坏
在这里插入图片描述
破坏完进行修复
在这里插入图片描述
修复失败,因为原本移走的文件是grub用来修复的文件,如果想要修复,那就需要把文件移回来,如下
在这里插入图片描述
总结:这些文件就是grub用来修复的文件
在这里插入图片描述
但是不恢复这些文件也没有关系,可以用到grup-install,生成这些文件,所以grub-install作为修复来讲,更方便
在这里插入图片描述
1.5阶段处于27个扇区等于27*512个字节=13824个字节

如果破坏了1.5阶段,机器是否起不来
在这里插入图片描述
表现的错误情况(不会进入光盘,说明认为硬盘是有启动能力的,加载之后,尝试找1.5阶段,就死了)
在这里插入图片描述
在这里插入图片描述
进入救援模式,(硬盘起不来,拿光盘引导)
先切跟 chroot
不切跟如果用grub交互式命令也行,(前提是你的boot分区一定是第一个硬盘第一个分区,如果生产中,不在这,就找boot分区在哪里),更简单的就是grub-install /dev/sda(1,1。5.2三个阶段都能修复)

在这里插入图片描述
在这里插入图片描述
起不来
在这里插入图片描述
说明一旦用grub命令修复过以后,那么/boot/grub下的文件不仅仅是那两个文件就能启动的了,还要依赖于其他的文件
这些文件如果没有修复的话,删除了,就剩2个grub.conf 和splash.xpm.gz,不影响启动
但修复过以后,除了这两个文件,其他文件也是启动相关的必要文件
(所以这些文件也不能想删除就删除,也需要保留,前提是修复过 )

在这里插入图片描述
修复,进入救援模式先切跟,再grub-install,sync同步硬盘
在这里插入图片描述
前面修复了,grub 1阶段,1.5阶段。2阶段,2阶段里这个grub.conf文件非常重要,是grub配置文件
在这里插入图片描述
在这里插入图片描述
title对应的是一个语句块,下面的title是另一个启动项,有几个title就等于启动 的时候有几个菜单
root(hd0,0)就代表boot分区在哪里第一个硬盘第一个分区/dev/sda1

vmlinuz内核文件,是在/下放的,/代表boot(上一行描述是在sda1分区上)
也可以像下面一样写,写跟分区在哪里

在这里插入图片描述
/vmlinuz-2.6.32-754.el6.x86_64 代表/boot分区
root(hd0,0)去掉不写
在下面声明就可以

在这里插入图片描述
ro是只读的意思,当内核找到,加载到内存中以后,会尝试找操作系统的跟,而操作系统的根会以ro只读的方式挂载,当然挂载之后会第二次挂载,变为rw
在这里插入图片描述
在这里插入图片描述
也可以改成如下这样
在这里插入图片描述
根的文件系统加载需要initramfs,来识别根的文件系统,然后加载根,根就可以执行第一个InIT进程
quiet代表是否显示内核的加载启动过程信息,rhgb代表启动的时候是否是图形界面(默认图形界面,会把错误信息挡住)
如果你想在生产环境中观察启动过程就不要加rhgb

在这里插入图片描述
如上图,顺序修改会不会导致错误,会
在这里插入图片描述
在这里插入图片描述
e可以临时编辑
在这里插入图片描述
因为grub有强大的编辑修改功能,才给了我们这些能力,只要grub加载了2阶段,就可以进行一些编辑修改
在这里插入图片描述
default=0,(0代表用第一个title启动)如果希望用下面的就用1
timeout=5如果默认不选那就等待5秒进入默认的内核启动
splashimage=是个图片,启动背景 640*480
hiddenmenu(不过不敲命令,这个菜单是隐藏的)

替换背景,需要安装ImageMagick
在这里插入图片描述
在这里插入图片描述
用convert工具转换 640x480 颜色14深度
在这里插入图片描述
移动至/boot/grub目录
在这里插入图片描述
修改grub.conf文件
在这里插入图片描述
在这里插入图片描述
因为直接破系统口令很简单,进入到单用户即可,那么现在希望用户不这么简单地去破解,加大难度,可以用在grub.conf添加口令的方法
在这里插入图片描述
要先输入密码
在这里插入图片描述
但是口令明文存放是很不好的,通常需要加密
在这里插入图片描述
用这个 口令
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
但是有MD5已经被破解了,所以可以用另外的,sha512加密算法
在这里插入图片描述
encrpted就代表是用的sha512算法
在这里插入图片描述
(实在不行,把硬盘拆下来装到别的电脑上,作为分区直接读数据)
在这里插入图片描述
grub-install
grub-crypt
grub-md5-crypt
grub
convert
chkcinfig
ntsysv
test
function 函数定义的时候一般不写function
return

在这里插入图片描述
grub 2阶段就是grub里的其他文件,可以把这些都移走,也能启动,grub.conf就几行就可以写下来
在这里插入图片描述
没有2阶段配置文件,出现错误,如下
在这里插入图片描述
补充两行就可以了
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值