硬盘磁盘故障指南
一般硬盘故障,逃不过这几类:主板、数据线、电源线损坏或接触不良;跳线、BIOS 没设置好;硬盘电路部分损坏;硬盘磁头损伤;还有就是磁盘部分的问题。
要解决磁盘部分的问题,先要了解磁盘的结构。其物理结构就是多个磁性盘体的叠加,根据柱面坐标系(ρ,θ,z),三坐标就是“柱面(磁道)、扇区、磁头”,平时常写成“柱面(磁道)、磁头、扇区”(Cylinder, Head, Sector),简称 CHS。因为真实的坐标系是三维的,不方便数据的存储和访问,所以我们也可以用一维坐标来描述某个硬盘的磁盘结构,那就是逻辑块地址(Logical Block Addressing),简称 LBA。
一般磁盘的存储空间被分为三个区——固件区(负区)、起始区、数据区。
固件区是硬盘厂家操作用的区域,即使是大多数磁盘修复软件,也只能对期作有限的访问。因为硬盘在出厂之前就已经有坏道了(不可避免),所以在固件区存放了一个 P-List 表,即工厂缺陷列表,描述了磁盘中有多少区域被屏蔽;另外,固件区还有个 G-List 表,即增长缺陷列表,以便今后在磁盘有坏区的时候可以在此登记以达到永久屏蔽的目的。
起始区,针对目前的硬盘来说,一般是用户操作区域的前 63 个扇区,每个扇区 512 字节,共 32256 字节,用于存放主引导记录(Master Boot Record,简称 MBR)。虽然在文件系统中不能直接看到起始区,但是利用各种硬盘分区、修复软件就能看到并修改其内容。MBR 是 512 字节,正好能存于单个扇区中(此扇区俗称引导扇区),默认存于起始区的第一个扇区,对于一般的硬盘就是 CHS 0,0,1 区,即 LBA 0 扇区。MBR 分为三个部分——引导程序、主分区表、结束标志。引导程序,共 446 字节,用于启动系统。主分区表共 64 字节,存放着主分区与扩展分区的分割信息。结束标志就是 55AA 这个信息(四位十六进制,相当于16 个二进制位),占 2 个字节。
数据区就是你划分主分区和扩展分区的区域了,在扩展分区划分逻辑分区时,还会在每个逻辑分区前开辟一块扩展引导区,存放扩展引导记录(EBR),包括扩展分区表及对应结束标志。注意,这里的数据区是相对于整个磁盘或扩展分区的,不是指单个磁盘分区建立文件系统后相对于文件系统的那个数据区。
对于固件区出的问题,一般很少讨论,因为不是普通人能解决的。在 BIOS 里甚至很多硬盘工具里都没有正确的硬盘信息了,那是多可怕的事情;或者是清零后查不到任何物理损坏,硬盘故障仍在,绝对郁闷死。这只能靠 PC3000 来解决。对于其他区域出现的问题,则先看故障类型:
只要不是磁盘上的物理损伤,那么出现的问题都可以称为是逻辑错误。主要解决方式有高格、重新分区(重写分区表)、重写 MBR、低格、清零。无论是系统自带程序、系统安装程序、DM、PQ(DOS 和 WIndows 版)、Diskgen(Diskman)这些分区软件,还是 Edittool、Winhex(Windows 专用)等十六进制编辑器(直接编辑主引导区和数据区存储的信息),或者 MHDD、THDD、HDDScan(Windows 专用)等磁盘扫描修复工具,基本都能完成。至于磁盘扫描修复工具是否会把一些逻辑错误当物理损坏而写进 G-List,还不知道,总之用它们对付逻辑错误是欠妥的。
物理损伤的话,即使你低格、清零后能正常使用了,恐怕也用不长。光靠分区软件和系统工具的屏蔽也是不够的,这些太表层的掩盖被一个格式化可能就暴露了,况且这些非专业的工具查出的错误,只是错误中一部分,早晚会扩散的。所以,最好的方法是用 MHDD、THDD 等专业的磁盘扫描修复工具,让它们把扫到的物理损坏写进固件区的 G-List,才能彻底屏蔽。但是因为 G-List 空间有限,放不了过多的损坏记录,所以损坏严重的话还要靠 PC3000(貌似只有 PC3000 才能自如地改 P-List,把错误区位置都丢进去)。
