系统排错(mbr-grub-kernel)

简介:

linux系统mbr的备份,gurb文件丢失,kernel的排错

备份mbr:dd </dev/sda> /tmp/mbr bs=512 count=1

还原mbr: dd if=/tmp/mbr of=/dev/sda


首先,我们应该知道mbr是由446字节的引导区+64字节的分区表和2字节的结束符构成。

在排错前,我们首先破坏mbr的引导区 然后删除掉boot里边的所有文件包括内核。

dd if=/dev/zero of=/dev/sda bs=446 count=1  破坏系统引导区

vim /etc/fstab  修改根的路径 让系统引导找不到根分区


在重新启动系统的时候,选择光盘启动进入linux的修复模式,在boot界面输入:linux rescue

sh-3.2# 此时我们就在光盘的修复模式中了,想要修复系统首先我们要进入系统的硬盘中。

chroot /mnt/sysimage  引导中会提示 这个命令进入硬盘


首先修复mbr的引导区,挂载光盘 mount /dev/hdc /mnt 

/sbin/grub-install /dev/sda

这样我们的mbr就已经修复完成


查找根

进入硬盘后,我们使用fdisk -l 可以看到我们的硬盘信息但哪一个是根呢?

e2label /dev/sda1  查看根分区

当找到我们的根后,我们先随便将根分区挂载到一个文件夹下

mkdir /tmp/aa

mount /dev/sda  /tmp/aa 将根挂载

进入根后,修复我们的fstab文件


修复内核

首先我们要先安装内核,进入硬盘,挂载光盘

找到内核的rpm包,安装过程中会告诉你内核已经安装,可强制安装参数

rpm -ivh kernel-2.618-164.e15.i686.rpm --force

内核安装完成后,基本上就可以手动引导系统启动了

root (hd0,0)

kernel /vmlinuz-2.6.18-164.e15 ro root=LABEL=/  只读形式

initrd /initrd-2.6.18-164.e15.img


手动引导成功后,修复grub.conf文件。

vim /boot/grub/grub.conf

default=0

timeout=5

title welcome to alca-linux

root (hd0,0)

kernel /vmlinuz-2.6.18-164.e15 ro root=LABEL=/  只读形式

initrd /initrd-2.6.18-164.e15.img


reboot

OK!!!!!


ps:mount 命令如果挂掉 可以在网络引导光盘 装下until-linux 修复mount

本文转自岁月丶倾城博客51CTO博客,原文链接http://blog.51cto.com/alca0126/1341382如需转载请自行联系原作者


laihuadongcto

相关文章
|
11月前
|
机器学习/深度学习 Linux 决策智能
双系统出现grub rescue修复方法
双系统出现grub rescue修复方法
481 0
|
2月前
|
Linux
Linux MBR扇区故障 引导修复
Linux MBR扇区故障 引导修复
|
9月前
|
安全 Linux
Linux常见维护报错,修复MBR引导/修复grub2菜单/内核文件丢失
Linux常见维护报错,修复MBR引导/修复grub2菜单/内核文件丢失
74 0
Linux常见维护报错,修复MBR引导/修复grub2菜单/内核文件丢失
|
Linux
16.8 Linux启动引导程序加载内核
在刚刚的启动过程中,我们已经知道启动引导程序(Boot Loader,也就是 GRUB)会在启动过程中加载内核,之后内核才能取代 BIOS 接管启动过程。如果没有启动引导程,那么内核是不能被加载的。
200 0
16.8 Linux启动引导程序加载内核
|
Linux Shell 数据安全/隐私保护