📄 00000033.htm
字号:
|------------------------------------------------| <BR> <BR> 图一:主引导扇区结构图 <BR> <BR> 主引导记录中包含了硬盘的一系列参数和一段引导程序。引导程序主要 <BR>是用来在系统硬件自检完后引导具有激活标志的分区上的操作系统。它执行 <BR>到最后的是一条JMP指令跳到操作系统的引导程序去。这里往往是引导型病 <BR>毒的注入点,也是各种多系统引导程序的注入点。但是由于引导程序本身完 <BR>成的功能比较简单,所以我们可以完全地判断该引导程序的合法性(看JMP <BR>指令的合法性),因而也易于修复。象命令fdisk/mbr可以修复MBR和KV300 <BR>这类软件可以查杀任意类型的引导型病毒,就是这个原因。 <BR> <BR> 往下来是硬盘的分区表,由4个16字节的分区信息表组成。每个信息表的 <BR>结构如下: <BR> <BR> 偏移 长度 所表达的意义 <BR> 0 字节 分区状态: 如0-->非活动分区 <BR> 80--> 活动分区 <BR> 1 字节 该分区起始头(HEAD) <BR> 2 字 该分区起始扇区和起始柱面 <BR> 4 字节 该分区类型:如82--> Linux Native分区 <BR> 83--> Linux Swap 分区 <BR> 5 字节 该分区终止头(HEAD) <BR> 6 字 该分区终止扇区和终止柱面 <BR> 8 双字 该分区起始绝对分区 <BR> C 双字 该分区扇区数 <BR> <BR> 最后的两个标志“55 AA”是分区表的结束标志,如果这两个标志被修改 <BR>(有些病毒就会修改这两个标志),则系统引导时将报告找不到有效的分区表。 <BR> <BR> 由上面的所列出的结构可以大致地了解主引导扇区的结构和用途。下面, <BR>有一些关于主引导扇区的常见问题: <BR> <BR> Q1、fdisk/mbr 会不会把硬盘的分区表破坏呀? <BR> A: 从上面的土一我们可以看到fdisk/mbr是不会影响到DPT的。fdisk/ <BR> mbr只是把主引导分区里的MBR部分重新写过,而不会对DPT有任何破坏。 <BR> <BR> Q2、在Linux里有一种方法可以恢复MBR是用如下的命令: <BR> dd if=/boot/boot.NNNN of=/dev/hda bs=446 count=1 <BR> 其中bs(buffer size)是指重写的字节数。为什么不是512 <BR> 呢?主引导扇区是一个扇区(512字节呀)? <BR> A: 答案是因为我们用上面的命令是为了修复可能被病毒修改了的主引导记 <BR> 录MBR,或者想把LILO卸载掉,而不是恢复整个主引导扇区。所以我们 <BR> 只把主引导扇区的备份文件boot.NNNN的前446个字节重写入主引导扇区。 <BR> boot.NNNN是我们在安装Linux之前整个主引导分区的备份。如果我们把 <BR> 512个字节全部写入主引导扇区就可能会把安装了Linux后改变了的硬盘 <BR> DPT表也破坏掉。那就坏事了。 :-) <BR> <BR> Q3、........ <BR> <BR>-- <BR>※ 来源:·BBS 水木清华站 bbs.net.tsinghua.edu.cn·[FROM: 202.118.179.51] <BR><CENTER><H1>BBS水木清华站∶精华区</H1></CENTER></BODY></HTML>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -