登录  
 加关注
查看详情
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

lgjmfyx的博客

享受生活每一天

 
 
 

日志

 
 

MBR  

2008-12-01 19:44:16|  分类: 默认分类 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
 

★MBR是什么

MBR是英文Master Boot Record的缩写,中文意为主引导记录。硬盘的0磁道的第一个扇区称为MBR,它的大小是512字节,而这个区域可以分为两个部分。第一部分为pre-boot区(预启动区),占446字节;第二部分是Partition table区(分区表),占66个字节,该区相当于一个小程序,作用是判断哪个分区被标记为活动分区,然后去读取那个分区的启动区,并运行该区中的代码。

★FDISK /MBR的功能

FDISK /MBR是一个隐藏的命令,其功能是在硬盘上无条件地重新写入主引导程序和分区表,并且不对DOS引导扇区、文件分配表和目录区进行初始化。也就是说,执行FDISK/MBR后,可在不破坏硬盘上原有数据信息的情况下,重建主引导程序和分区表。它对单纯感染嵌入式引导区病毒的硬盘,亦可起到清除病毒的作用。不过,有些病毒正是利用FDISK /MBR的原理,修改计算机正常的引导和文件结构,如果再强行使用 FDISK /MBR可能会使系统变得更糟,甚至也可能把硬盘中所有的数据清除。所以最好不要随便使用此命令。

Fdisk是我们在硬盘分区时最常用的命令,但有的读者可能还不知道,Fdisk命令还有一个未公开参数/MBR,如果在DOS提示符下使用Fdisk /?不会发现此参数,但是这个参数却有很重要的作用,MBR是主引导记录(Master Boot Record)的缩写。那么,Fdisk /MBR是如何工作的呢?下面和各位读者共同学习一下。 
先来看看主引导扇区,硬盘的零柱面零磁道的第一个扇区,被称为主引导扇区,(当然是512个字节喽),主引导扇区由主引导记录(MBR)、硬盘分区表(DPT ,Disk Partition Table)和结束标志三部分组成,各部分的大小和偏移量可参考下表,主引导记录中包含了硬盘的一系列参数和一段引导程序,引导程序主要是用来在系统硬件自检完后引导具有激活标志的分区上的操作系统。它执行到最后的是一条JMP指令跳到操作系统的引导程序去,所以这里往往是一些引导型病毒和一些多系统引导程序的切入点。此部分还包括启动出错时的提示信息Invalid partition table、 Error loading operating system、Missing operating system和一些保留信息。硬盘分区表的64个字节记录了分区的大小、类型,哪个是活动分区等等(具体结构请参考相关资料)。主引导扇区最后的两个标志“55AA”是主引导扇区的结束标志,有些病毒就会修改这两个标志,结果系统引导时将报告找不到有效的分区表。主引导扇区的数据可以用一些工具或者自己写一段汇编来查看。 
使用Fdisk /MBR时,会把前446个字节(如果你在Linux下用dd if=/boot/boot.NNNN of=/dev/hda bs=446 count=1命令恢复过MBR就知道为什么这个数字是446了)清零后重新“安装”引导程序,但并不会破坏硬盘分区表。安装一些安全保护软件或者新的操作系统往往引导程序会被更改,一部分引导扇区病毒也可能占领这块地盘,达到获得系统的控制权的目的。在上述情况下,如果由于操作不慎或其它原因,系统无法正常启动时可以使用没被病毒感染的启动盘启动系统,然后使用Fdisk /MBR,各位注意,使用时一定要对症下药,下面讲述一下我经历的几个例子: 
1.我的一个同学曾经用过一个叫超级保镖的软件,有开机密码的功能,可是密码被他忘记了(做茧自缚),他从软盘启动,并且把软件删除了,可是在开机的时候还是要求他输入密码。根据他说的,提示输入密码的时机是硬件自检完成以后,Windows刚启动的时候,我推测是主引导扇区被修改了,建议他用Windows 98的启动盘重新启动后使用此命令,结果把开机密码去掉了。 
2.同事的电脑被引导区病毒感染,金山毒霸检测到以后,他用金山毒霸做的启动盘启动杀毒,可是重新启动以后还是检测到有此病毒,我不知道他做的软盘本身是否“干净”,我拿买品牌机时附送的Windows 98启动盘,让他重新启动后,用Fdisk /MBR,再次重新启动计算机,发现病毒已经被清除。 
3.为了体验Windows 2000,本人把公司的另一个小硬盘跳线变成Slave后连到我的电脑的IDE1上,把Windows 2000安装到小硬盘里,可以进行Windows 98和Windows 2000双启动,后来硬盘被拿走,再次启动系统时,发现启动不起来了,我拿Windows 98的启动盘启动后,使用Fdisk /MBR命令,还是不行,呵呵,拿出我的最后一招,SYS C:,再次启动,成功! 
4.随着Linux的流行,很多朋友都想在一个电脑上实现双启动(甚至多启动),安装Linux,可能会把Lilo安装在主引导扇区,如果想卸载Linux,而且用Linux的分区命令把Linux的分区删除;以后如果想恢复到原来的系统,用此命令把lilo清除即可,一般不会丢失原来系统上的数据。 
最后必须提醒大家的是,Fdisk一般不会影响硬盘的分区结构和数据,但有些病毒正是利用Fdisk /MBR的原理,修改计算机正常的引导和文件结构,如果你再强行使用Fdisk /MBR可能使系统变得更糟,甚至也可能把硬盘中所有的数据清除。所以最好不要随便使用此命令,只在受病毒或一些磁盘管理工具的影响使系统无法正常启动时才使用此命令,如果你想试验一下呢,你应该先备份好你的所有数据,并且用Debug命令保存你的主引导记录。想一想,微软为何不公开此命令参数呢?因为它是一个危险的命令!

(均转自网络)

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 会员注册 | 产品答疑

Copyright © 1996 - 2008 SINA Corporation, All Rights Reserved




引文来源  MBR(转)_曾经沧海的BLOG_新浪博客
  评论这张
 
阅读(476)| 评论(0)

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018