RedHat 救援模式下排错

 

我们先要自己制造一个错误,导致系统无法启动,首先备份一下grub.conf、fstab两个文件,然后删除MBR前446个字节,删除引导程序(MBR的512字节中前446字节为引导程序,紧跟着后面64字节为分区表,最后面2个字节为结束标记)

 

修改系统的文件grub.conf、fstab  我这里就不删除了,只是更改名称让系统找不到就可以了

wps_clip_image-2709

使用以下命令把bootloader( 启 动引导程序MBR中的446字 )覆盖掉

dd if=/dev/zero of=/dev/sda bs=446 count=1

wps_clip_image-16584

重新引导系统

系统无法启动,没有引导程序

我们放入光盘,按F5进入救援模式输入Linux rescue

wps_clip_image-24553

选择英文的语言和键盘

wps_clip_image-21580

wps_clip_image-32004

是否配置网络,我们选择 NO

wps_clip_image-16297

选择继续

wps_clip_image-5633

然后进入了救援模式

使用fsdisk -l 查看一下分区请看

在当前的目录创建一个目录,用来挂载根

mkdir a

mount /dev/sda2 /a                        挂载根目录到a下

mount /dev/sda1 /a/boot                   挂载boot目录,因为它为单独分区

挂载成功之后就可以看到所有的系统文件,可以进行修复和修改文件了

恢复被我们修改的文件

wps_clip_image-31249

接下来是安装MBR中的446字节的引导程序

装grub就是装/boot/grub/stage1,救援模式下输入 #grub 就可以进入grub的命令模式下

1、root(hd0,0)  这里是指的第一块一盘的一个分区,就是要指定/boot所在的分区

2、setup(hd0) 这里是安装grub的意思,当出现successed就是安装成功了

3、quit退到shell模式

4、exit重启

重启后就自动进入了 grub> 的模式,在这里手动引导系统先看一下手动引导系统

root(hd0,0)  指定一下内核文件的位置,还是/boot目录所在的分区

kernel/vmlinuz-2...ro root=/dev/sda2 具体的内核文件并以只读的形式挂载上

initrd/initrd.......      具体的内存启动镜像

boot  加载系统

如下图:wps_clip_image-4808

以上操作完成之后,进入系统,这时候系统的 grub.conf 尚未恢复,需要进入目录恢复此系统文件才算是系统修复完成了。

     这里还有一个问题就是:假如我的系统分区除了/boot 之外全部是LVM卷,那么在救援模式下我们应该如何去激活这个LVM卷呢?

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值