常见系统故障修复(一)——修复MBR扇区故障

一、基础知识介绍

1.MBR概念

        MBR(Main Boot Record),即主引导记录,是位于磁盘最前边的一段引导(Loader)代码。它负责磁盘操作系统(DOS)对磁盘进行读写时分区合法性的判别、分区引导信息的定位,它由磁盘操作系统(DOS)在对硬盘进行初始化时产生的。通常,我们将包含MBR引导代码的扇区称为主引导扇区。因为在这一扇区中,引导代码占有绝大部分的空间,故而习惯将该扇区称为MBR扇区(简称MBR)。由于这一扇区承担有不同于磁盘上其他普通存储空间的特殊管理职能,作为管理整个磁盘空间的一个特殊空间,它不属于磁盘上的任何分区,因而分区空间内的格式化命令不能清除主引导记录的任何信息。

2.主引导扇区的组成

主引导扇区由三个部分组成(共占用512个字节)

(1):主引导程序即主引导记录(MBR)(占446个字节)

MBR可以在FDISK程序中找到,它用于硬盘启动时将系统控制转给用户指定的并在分区表中登记了的某个操作系统。

(2):磁盘分区表项(DPT,Disk Partition Table)

由四个分区表项构成(每个16个字节)。

负责说明磁盘上的分区情况,其内容由磁盘介质及用户在使用FDISK定义分区时决定。

(3):结束标志(占2个字节)

其值为AA55,存储时低位在前,高位在后,即看上去是55AA(十六进制)。

3.主引导分区的读取流程

系统开机或者重启时主引导扇区的读取流程如下所述。

(1):BIOS 加电自检 ( Power On Self Test -- POST )。BIOS执行内存地址为 FFFF:0000H 处的跳转指令,跳转到固化在ROM中的自检程序处,对系统硬件(包括内存)进行检查。

(2):读取主引导记录(MBR)。当BIOS检查到硬件正常并与 CMOS 中的设置相符后,按照 CMOS 中对启动设备的设置顺序检测可用的启动设备。BIOS将相应启动设备的第一个扇区(也就是MBR扇区)读入内存地址为0000:7C00H 处。

(3):检查0000:7CFEH-0000:7CFFH(MBR的结束标志位)是否等于55AAH,若不等于则转去尝试其他启动设备,如果没有启动设备满足要求则显示“NO ROM BASIC”然后死机。

(4):当检测到有启动设备满足要求后,BIOS将控制权交给相应启动设备。启动设备的MBR将自己复制到0000:0600H处,然后继续执行。

(5):根据MBR中的引导代码启动引导程序。

       事实上,BIOS不仅检查0000:7CFEH-0000:7CFFH(MBR的结束标志位)是否等于55AAH,往往还对磁盘是否有写保护、主引导扇区中是否存在活动分区等进行检查。如果发现磁盘有写保护,则显示磁盘写保护出错信息;如果发现磁盘中不存在活动分区,则显示类似如下的信息“Remove disk or other media Press any key to restart”。

二、修复MBR扇区故障

1.MBR故障原因

(1):病毒、木马等造成的破坏

(2):错误的分区操作,磁盘读写错误操作

2.故障现象

(1):找不到引导程序,启动中断

(2):无法加载操作系统,开机后黑屏

3.解决思路

(1):提前备份好文件

(2):通过RHEL6.5光盘进行到急救模式

(3):从备份文件中恢复

三、修复具体步骤

1.在关机状态下添加一块新硬盘:虚拟机-->硬盘-->添加-->选择硬盘-->下一步

如下图,硬盘添加成功

2.启动主机进入Linux系统,并对新硬盘进行分区

(1):查看硬盘分区情况:fdisk   -l

(2):对新硬盘进行分区:fdisk   /dev/sdb

1>:对磁盘进行分区

2>:建立一个主分区,一个扩展分区 

3>:建立两个逻辑分区 

3.建立新硬盘的文件系统(即格式化文件系统)

(1):查看sdb磁盘的列表信息

(2):对磁盘进行格式化

 4.挂载硬盘

(1):创建挂载点

(2):挂载分区

5.备份MBR扇区数据

dd   if=/dev/sda   of=/sdb1/sda.mbr.bak   bs=512   count=1

if指定操作内容,of指定操作对象,bs指定写入字节数,count指定次数

6.模拟MBR扇区被破坏的故障

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

7.然后重启计算机,此时硬盘已经损坏,如果没有光盘引导,则系统一直处于如下状态,不能启动。

8.进入急救模式来修复MBR扇区故障

(1):先关闭计算机-->虚拟机-->电源-->打开电源时进入固件(F)-->选择Boot-->将光盘放在第一位

(2):选择第三条进入急救模式

(3):选择English-->确认

(4):选择us-->确认

(5):选择OK

(6):选择No

(7):选择Skip

(8):选择Shell  Start  shell-->选择Ok

(9):查看/dev/sdb硬盘和/dev/sda硬盘

能看到sdb1分区,看不到sda设备,因为sda设备的MBR被破坏

(10):将之前拷贝的文件重新写回来

9.重启计算机,发现可以正常启动计算机,说明修复了MBR扇区故障

 

Windows XP下删除Ubuntu系统的方法(附修复MBR工具下载) 你开开心心的安装了Ubuntu系统但是发现更本不会用,甚至不能调出中文输入法(我第一次遇到的情况),在这种情况下你一气之下要删除Ubuntu系统,但是清理数据之后发现根本无法进入Windows系统。 删除Ubuntu最需要注意的地方,就是MBR(Master Boot Record)。在删除Linux分区前,我们需要将启动Windows的引导信息写入MBR,否则,MBR中的Ubuntu引导信息,当然就不能启动Windows系统了。 步骤一:将Windows的引导信息写入MBR 方法一:就是将Windows的安装盘放入计算机以后,重启计算机,进入Windows安装程序,随后,进入恢复控制台,输入命令fixmbr即可,必须要说明的这种方法仅适用于安装版的XP系统,如果你是Ghost安装或者使用精简版的话就不能使用这种方法,而且你还需要一个安装版的Windows XP光盘(市面上的以番茄花园或者雨林木风安装版较多,不过建议下载原版镜像刻盘引导)。 方法二:为没有Windows安装盘的朋友准备的,就是使用MBRFix工具进行修复MBRFix工具修复MBR很方便,先进入cmd命令窗口(开始-运行-cmd),然后进入mbrfix工具所在的目录(用cd命令,如我将解压后的MBRFix放置在C盘根目录,输入cd \),然后输入命令 MbrFix /drive 0 fixmbr ,再确认一下即可。重启以后你会发现,没有了Ubuntu,直接可以进入Windows了。 步骤二:删除Linux分区 删除Linux所在的分区,这个很简单,您可以使用patition的分区工具,将该分区格式化成fat32或ntfs格式,就可以在Windows下使用了。最好不要使用Windows自带的分区工具进行分区,因为Windows自带的分区工具不能识别Linux分区。如果您使用了Windows自带的分区工具,那么您的硬盘数据极有可能被破坏(我有过惨痛经历)。如果您的硬盘数据被破坏了,那么请用能够修复分区的数据恢复软件进行修复,不过不一定成功喔,看人品了~ 最后 别忘了评论一下啊~~
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值