分享

高手:挽救硬盘的几个方法

 tao0308 2009-09-17

  1、系统不承认硬盘
  
  此类故障比较常见,即从硬盘无法启动,从a盘启动也无法进入c盘,使用cmos中的自动监测功能也无法发现硬盘的存在。这种故障大都出现在连接电缆或ide口端口上,硬盘本身的故障率很少,可通过重新插拔硬盘电缆或者改换ide口及电缆等进行替换试验,可很快发现故障的所在。如果新接上的硬盘不承认,还有一个常见的原因就是硬盘上的主从条线,如果硬盘接在ide的主盘位置,则硬盘必须跳为主盘状,跳线错误一般无法检测到硬盘
  
  2、cmos引起的故障
  
  cmos的正确与否直接影响硬盘的正常使用,这里主要指其中的硬盘类型。好在现在的机器都支持"ideautodetect"的功能,可自动检测硬盘的类型。当连接新的硬盘或者更换新的硬盘后都要通过此功能重新进行设置类型。当然,现在有的类型的主板可自动识别硬盘的类型。当硬盘类型错误时,有时干脆无法启动系统,有时能够启动,但会发生读写错误。比如cmos中的硬盘类型小于实际的硬盘容量,则硬盘后面的扇区将无法读写,如果是多分区状态则个别分区将丢失。还有一个重要的故障原因,由于目前的ide都支持逻辑参数类型,硬盘可采用normal,lba,large等。如果在一般的模式下安装了数据,而又在cmos中改为其他的模式,则会发生硬盘的读写错误故障,因为其物理地质的映射关系已经改变,将无法读取原来的正确硬盘位置。
  
  3、主引导程序引起的启动故障
  
  硬盘的主引导扇区是硬盘中的最为敏感的一个部件,其中的主引导程序是它的一部分,此段程序主要用于检测硬盘分区的正确性,并确定活动分区,负责把引导权移交给活动分区的dos或其他操作系统。此段程序损坏将无法从硬盘引导,但从软区或光区之后可对硬盘进行读写。修复此故障的方法较为简单,使用高版本dos的fdisk最为方便,当带参数/mbr运行时,将直接更换(重写)硬盘的主引导程序。实际上硬盘的主引导扇区正是此程序建立的,fdisk.exe之中包含有完整的硬盘主引导程序。虽然dos版本不断更新,但硬盘的主引导程序一直没有变化,从dos3.x到目前有windos95的dos,所以只要找到一种dos引导盘启动系统并运行此程序即可修复。另外,像kv300等其他工具软件也具有此功能。
  
  4、分区表错误引导的启动故障
  
  分区表错误是硬盘的严重错误,不同错误的程度会造成不同的损失。如果是没有活动分区标志,则计算机无法启动。但从软区或光区引导系统后可对硬盘读写,可通过fdisk重置活动分区进行修复。如果是某一分区类型错误,可造成某一分区的丢失。分区表的第四个字节为分区类型值,正常的可引导的大于32mb的基本dos分区值为06,而扩展的dos分区值是05。如果把基本dos分区类型改为05则无法启动系统,并且不能读写其中的数据。如果把06改为dos不识别的类型如efh,则dos认为改分区不是dos分区,当然无法读写。很多人利用此类型值实现单个分区的加密技术,恢复原来的正确类型值即可使该分区恢复正常。分区表中还有其他数据用于纪录分区的起始或终止地址。这些数据的损坏将造成该分区的混乱或丢失,一般无法进行手工恢复,唯一的方法是用备份的分区表数据重新写回,或者从其他的相同类型的并且分区状况相同的硬盘上获取分区表数据,否则将导致其他的数据永久的丢失。在对主引导扇区进行操作时,可采用nu等工具软件,操作非常的方便,可直接对硬盘主引导扇区进行读写或编辑。当然也可采用debug进行操作,但操作繁琐并且具有一定的风险。
  5、分区有效标志错误引起的硬盘故障
  
  在硬盘主引导扇区中还存在一个重要的部分,那就是其最后的两个字节:55aah,此字为扇区的有效标志。当从硬盘,软盘或光区启动时,将检测这两个字节,如果存在则认为有硬盘存在,否则将不承认硬盘。此标志时从硬盘启动将转入rombasic或提示放入软盘。从软盘启动时无法转入硬盘。此处可用于整个硬盘的加密技术。可采用debug方法进行恢复处理。另外,dos引导扇区仍有这样的标志存在,当dos引导扇区无引导标志时,系统启动将显示为:"missingoperatingsystem"。其修复的方法可采用的主引导扇区修复方法,只是地址不同,更方便的方法是使用下面的dos系统通用的修复方法。
  
  6、dos引导系统引起的启动故障
  
  dos引导系统主要由dos引导扇区和dos系统文件组成。系统文件主要包括io.sys,msdos.sys,command.com,其中command.com是dos的外壳文件,可用其他的同类文件替换,但缺省状态下是dos启动的必备文件。在windows95携带的dos系统中,msdos.sys是一个文本文件,是启动windows必须的文件。但只启动dos时可不用此文件。但dos引导出错时,可从软盘或光盘引导系统,之后使用sysc:传送系统即可修复故障,包括引导扇区及系统文件都可自动修复到正常状态。
  
  7。FAT表引起的读写故障
  
  FAT表纪录着硬盘数据的存储地址,每一个文件都有一组连接的FAT链指定其存放的簇地址。FAT表的损坏意味着文件内容的丢失。庆幸的是dos系统本身提供了两个FAT表,如果目前使用的FAT表损坏,可用第二个进行覆盖修复。但由于不同规格的磁盘其FAT表的长度及第二个FAT表的地址也是不固定的,所以修复时必须正确查找其正确位置,由一些工具软件如nu等本身具有这样的修复功能,使用也非常的方便。采用debug也可实现这种操作,即采用其m命令把第二个FAT表移到第一个表处即可。如果第二个FAT表也损坏了,则也无法把硬盘恢复到原来的状态,但文件的数据仍然存放在硬盘的数据区中,可采用chkdsk或scandisk命令进行修复,最终得到*.chk文件,这便是丢失FAT链的扇区数据。如果是文本文件则可从中提取并可合并完整的文件,如果是二进制的数据文件,则很难恢复出完整的文件。
  
  8。目录表损坏引起的引导故障
  
  目录表纪录着硬盘中文件的文件名等数据,其中最重要的一项是该文件的起始簇号,目录表由于没有自动备份功能,所以如果目录损坏将丢失大量的文件。一种减少损失的方法也是采用上面的chkdsk或scandisk程序的方法,从硬盘中搜索出chk文件,由目录表损坏时是首簇号丢失,在FAT为损坏的情况下所形成的chk文件一般都比较完整的文件数据,每一个chk文件即是一个完整的文件,把其改为原来的名字可恢复大多数文件。
  
  9。误删除分区时数据的恢复
  
  当用fdisk删除了硬盘分区之后,表面现象是硬盘中的数据已经完全消失,在未格式化时进入硬盘会显示无效驱动器。如果了解fdisk的工作原理,就会知道,fdisk只是重新改写了硬盘的主引导扇区(0面0道1扇区)中的内容。具体说就是删除了硬盘分区表信息,而硬盘中的任何分区的数据均没有改变,可仿造上述的分区表错误的修复方法,即想办法恢复分区表数据即可恢复原来的分区即数据,但这只限于除分区或重建分区之后。如果已经对分区用format格式化,在先恢复分区后,在按下面的方法恢复分区数据。10。误格式化硬盘数据的恢复
  
  在dos高版本状态下,格式化操作format在缺省状态下都建立了用于恢复格式化的磁盘信息,实际上是把磁盘的dos引导扇区,FAT分区表及目录表的所有内容复制到了磁盘的最后几个扇区中(因为后面的扇区很少使用),而数据区中的内容根本没有改变。这样通过运行‘unformatc:’即可恢复原来的文件分配表及目录表,从而完成硬盘信息的恢复。另外dos还提供了一个miror命令用于纪录当前的磁盘的信息,供格式化或删除之后的恢复使用,此方法也比较有效
  
工具箱  
【 · 发布:千篇一律  2006-10-23 20:50 】  
  教你判断硬盘故障
  硬盘的故障分类大致分成两类,即软故障和硬故障。有关学术界的分类比较繁杂,也不容易记忆,实用性也不强。笔者有多年数据恢复经验,初来电脑诊所,特将多年来遇到的常规性硬盘故障作一统计和分类,众网友如遇到硬盘故障可按现象对应初判硬盘故障。
  一.磁头损坏 磁头损坏是硬盘常见的一种故障,特别对于IBM后期的产品。温度过高,散热问题把硬盘的祖师IBM把送进了坟墓。磁头损坏的典型现象是:开机自检时无法通过自检,并且硬盘因为无法寻道而发出有规律的“卡嚓,卡嚓”的声音。有些笔记本硬盘声音会比较小,要贴近听才能听到。遇到这种情况如果硬盘的数据重要的,就应该马上断电,因为磁头损坏后磁头臂的回来摆动有可能会刮伤盘面而导致数据无数恢复。此时应找一家有实力的数据恢复公司,不要随便拿到电脑城的铺面去。现在国内数据恢复行业的从业者参差不齐。众所周知,硬盘只可以在100级以上的纯净间才可以拆开,更换磁头。如果在通常的环境拆开硬盘,将导致盘面粘灰而无法恢复数据。
  二. 主板损坏 如果硬盘的主板烧坏,最普通的表现就是通了电后没有任何反应。用户可把硬盘拿在手上,感觉它是否转动。如果是笔记本硬盘则贴近硬盘听其是否有转动的声音。也可以看板子上的元器件是否有明显烧伤的痕迹。如果损坏的硬盘数据不重要就可以到电脑城随便找一家修硬盘的就可以处理,如果数据重要则要考虑,很多修硬盘的经常会将硬盘修好的同时也将数据丢失了。
  三. 硬盘坏道 硬盘坏道是相当普遍的故障,由于现在的硬盘转速快了,容量大了,更加容易产生坏道。用户在平常的使用是可以帮硬盘装个风扇,这种方式对于硬盘的故障是非常有效的。硬盘出现坏道后的现象会因硬盘坏道的严重性不同而不同,比如说:系统启动慢,则可能是系统盘出现坏道。或者能进系统,但莫名少了些分区或有些分区无法打开,或能打开分区而某些文件夹无法打开。这些现象都是典型的硬盘坏道的表现。有些严重的会让系统无法正常启动,如果挂成从盘甚至令主盘的系统也无法启动。还有更严重的,就是BIOS找硬盘都要找半天。此时如果故障盘没有重要数据,那弄个小软件低格一下,比如DM,MHDD之类就可以搞定,如果严重的可能需要PC3000之类专业工具才行。如果故障盘有重要数据的,千万记住:切勿强行加电尝试复制数据,因为硬盘产生坏道后很容易扩散。强行加电会令坏道越来越多,越来越密集。会加大数据恢复的难度而要付出更大的代价。硬盘坏道扩散得快的硬盘品牌有:三星,西数,IBM等。硬盘坏道有时也会有些响声,但与磁头损坏的响声不同。比磁头损坏的声音小些,且读到硬盘坏道时硬盘灯会常亮。
  四. 硬盘盘体损坏 盘体损坏是业界一个比较通俗的叫法,实际上是指硬盘的固件区出错,导致无法识别并使用硬盘。固件区是指硬盘存于负道区的一些有关该硬盘的最基本的信息,比如P列表,G列表,SMART表,硬盘大小等等信息。硬盘通电后自检时磁头先读取负道区的信息,如果某些存在负道区的信息没有被读出,则硬盘无法通过自检而报错。此类故障典型的现象就是开机自检后硬盘报错,并让你按F1怱略或按DEL进入CMOS设置。按DEL进入设置后,检测该硬盘会出现一些出错的参数,像迈拓的40G薄盘会显示N40P之类的,而且容量一般为0,修复此类故障需要专业的设备。俄罗斯的PC3000在这方面最擅长,为全世界普遍采用。
  五. MBR损坏 MBR是硬盘的主引导记录,位于硬盘的0磁道,是相当重要的硬盘基本信息。如果MBR损坏,则硬盘能在BIOS里找到正确的参数,但再进入DOS或WINDOWS却无法找到该硬盘。许多病毒会导致MBR丢失,硬盘坏道或其他人为因素同样会让MBR丢失。
  六. 分区表丢失 病毒,坏道,误操作,误克隆,误用一键恢复(许多品牌机具有的新功能)都会导致分区表的丢失。如果整个分区表或因误操作丢失了某个分区用户最好不要再做多余的操作,以免覆盖了数据。可请专业的公司恢复数据,如果没有重要数据直接重建分区即可。
  硬盘的常见故障大致如上,虽未列出全部硬盘故障,但常见的都是包括。
  

 
  时下,随着一浪高过一浪的硬盘降价潮,大容量(80GB甚至120GB)、高转速(7200 rpm)硬盘的优秀性价比对新装机的朋友格外具有亲和力。并且,现在的新硬盘都加入了S.M.A.R.T的自动侦测技术,以便在硬盘发生致命故障前发出先兆让用户从容地备份重要的数据,有了这个“保护伞”好像我们使用硬盘就可以高枕无忧了,但是这都是针对正常使用硬盘的情况而设计的。现实中,新手们在硬盘的日常使用中往往存在各种误区,看似种种不经意的操作就可能严重影响硬盘的寿命,甚至使硬盘突然“牺牲”,宝贵的文件或数据毁于一旦。因此,新手朋友们非常有必要了解硬盘操作和使用的种种误区,正确的维护和管理硬盘,从而使其忠实的为我们“服役”。
  
  非正常或频繁的开关机是硬盘的大敌
  
  虽然现在的主板和电源都采用了ATX的板型设计支持程序软关机,但是软关机需要关闭一系列正在运行的程序操作,而由于各种操作系统与不同芯片组和主板的厂商设计之间往往存在兼容性和BUG,导致Windows 在执行软关机的时候经常出现死机。此时,新手经常出现的误操作是强行切断电源,这时工作中硬盘的复位动作尚未完成,这很可能会使磁头与盘片摩擦而造成硬盘的物理损伤,如出现不可修复的坏道。
  
  正确做法:如果软关机出现死机故障,应该按下Reset键,待系统重启进入系统后再执行关机操作,虽烦琐一些但是保障了硬盘的安全复位。
  
  另外就是系统出现一些小故障的时候频繁的开关机。比如由于内存或显卡未插牢而出现电脑开机无显示的时候,好多人就只埋头搞定看到的问题:频繁开关机,插拔各种板卡,根本没有顾及到一次次按下电源后硬盘的呻吟声——刚刚开机几秒钟,硬盘正在初始化,磁头处于高度的敏感状态,频繁开关机使硬盘在很短的时间内反复受到的电流的冲击,发生故障的几率会大大增加。
  
  正确做法:排除硬件故障时先拔下硬盘电源线,等故障修复后接回 。
  
  恶劣的工作环境是硬盘的潜在“杀手”
  
  灰尘、过高或过低的温度和湿度、强磁场都对硬盘构成了潜在的威胁。首先,灰尘对硬盘的损害是非常大的。在灰尘严重的使用环境中,硬盘很容易吸附空气中的灰尘并积累在硬盘的内部电路和元器件上,严重影响元器件的散热;而灰尘还会吸收水分腐蚀硬盘内部的电子线路,易使硬盘产生各种莫名其妙的问题。因此必须保持环境卫生,最大限度减少空气中的含尘量,关机后最好能罩上防尘罩。
  
  其次,过高或过低的温度对硬盘也会有负面影响。随着硬盘转速的提高,硬盘自身产生的热量惊人;再加上过于紧张的机内空间、双硬盘或磁盘阵列的构建,硬盘间的“亲密接触”使硬盘散热问题不容忽视。而过低的温度又容易使空气中的水分凝结在集成电路元件上造成短路。因此,采取购买体积较为宽松的立式机箱、适当加大两块硬盘的间距甚至加装硬盘散热风扇的措施,使硬盘保持在20~25℃是最为适宜的。
  
  第三,过高的湿度会使电子元件表面上吸附一层水膜,氧化腐蚀电子线路造成数据读写错误;湿度过低又会使硬盘产生大量的静电,导致CMOS电路被烧坏。基于此,如果电脑长期闲置不用时,应定期给系统加电,靠自身的发热将机内的水蒸气蒸发掉。最后,作为磁介质的硬盘对强磁场非常敏感,因而尽量不要让硬盘靠近音箱、喇叭、电机和手机等强磁场,以免硬盘所记录的数据因磁化而损坏。
  
  对分区进行的误操作易使硬盘“早亡”
  
  由于Windows 版本的不同造成FAT16、FAT32、NTFS各种分区格式并存,不同的任务和系统使菜鸟们在转换分区格式面前蠢蠢欲动。更为可怕的是现在Ghost和PQ分区魔术师等软件能对分区进行随心所欲的操作——调整分区的大小、格式甚至隐藏分区;于是在没有弄懂一些基本概念前对硬盘的胡乱操作和不假思索的恢复,往往导致硬盘的分区表无法被任何工具识别。结果只好低格,如果也不懂行,很可能一块新硬盘就夭折在一位“无知而无畏”者的手里。
  
  技巧提示:“未雨绸缪,防患于未然”,无论是新手还是老鸟,谁都不能保证自己的操作万无一失,尤其在对硬盘进行敏感操作时请一定先用第三方的软件或杀毒软件如KV2004备份好硬盘的分区表和引导区数据。
  
  一、硬盘设置参数丢失及硬盘类型设置错误
  
  开机后屏幕显示:“Device error”,然后又显示:“Non-System disk or disk error,Replace and strike any key when ready”,提示硬盘不能启动,用软盘启动后,在A:\>后键入C:,屏幕显示:“Invalid drive specification”,系统不认硬盘,是使用计算机过程中常见故障。
  
  造成该故障的原因一般是CMOS中的硬盘设置参数丢失或硬盘类型设置错误造成的。硬盘参数丢失故障主要由主板CMOS电路故障、病毒或软件改写CMOS参数导致,如果是CMOS参数丢失故障解决步骤如下:① 如果关机一段时间以后,CMOS参数自动丢失,使用时重新设置,又能够正常启动电脑,这往往是CMOS电池接触不良或CMOS电池失效引起的,建议检查CMOS电池,确保接触良好,并用万用表检查 CMOS 电池电压,正常情况应为3V左右,如果CMOS电池电压远低于正常值,说明CMOS电池已经失效,应该及时更换电池,以避免电池漏液,污染主板。② 如果是运行程序中死机后CMOS参数自动丢失,则有可能是病毒或软件改写CMOS参数导致,应对系统进行彻底查杀病毒,以排除某些攻击CMOS的病毒所造成的故障。如果系统安装有防病毒软件的话,这些软件发现病毒后会改写CMOS,自动将硬盘设置为无。另外,CMOS中的硬盘类型设置正确与否也会影响硬盘的使用。当前的机器一般都可自动检测硬盘的类型。当硬盘类型错误时会造成无法启动系统,就算能够启动也会发生读写错误。比如CMOS中的硬盘类型小于实际的硬盘容量时,则硬盘后面的扇区会无法读写,如果是多分区状态则个别分区将丢失。还有一个重要故障原因不可忽视,那就是目前的IDE都支持逻辑参数类型,硬盘可采用“Normal,LBA,Large”等,如果在一般的模式下安装了数据,而又在CMOS中改为其它的模式的话,就会发生硬盘读写错误的故障。
  
  二、硬盘主引导记录中的分区表有错误
  
  是最让人头痛的故障之一,表现在开机后屏幕显示:“Invalid partition table”,硬盘不能启动,若从软盘启动则认C盘。
  
  造成该现象的原因一般是由于硬盘主引导记录中的分区表有错误而造成的。而且分区表错误也是硬盘的严重错误,不同错误的程度会造成不同的损失。主引导记录(MBR)位于0磁头/0柱面/1扇区,由FDISK.EXE对硬盘分区时生成。MBR包括主引导程序、分区表和结束标志55AAH三部分,共占一个扇区。主引导程序中含有检查硬盘分区表的程序代码和出错信息、出错处理等内容。当硬盘启动时,主引导程序将检查分区表中的自举标志。若某个分区为可自举分区,则有分区标志80H,否则为00H,系统规定只能有一个分区为自举分区,若分区表中含有多个自举标志时,主引导程序会给出“Invalid partion table”的错误提示。要知道~硬盘主引导记录所在的扇区也是病毒攻击的重点,只需破坏了主引导扇区中的DPT(分区表)这道防线,即可轻易地损毁硬盘分区信息。分区表的损坏通常来说不是物理损坏,而是分区数据被破坏。因此,一般情况下,可以用软件来修复。看来硬盘分区之后,备份一份分区表至软盘、光盘或者USB盘上是极为明智的。这个方面,国内著名的杀毒软件KV3000系列和瑞星软件都提供了完整的解决方案。另外,对于没有备份分区表的硬盘,也提供了相应的修复方法,不过成功率相对较低。另外,中文磁盘工具DiskMan在这方面也是行家里手。重建分区表是它的强项,非常适合用来修复分区表损坏。对于硬盘分区表被分区调整软件(或病毒)严重破坏,引起硬盘和系统瘫痪,DiskMan可通过未被破坏的分区引导记录信息重新建立分区表。在菜单的工具栏中选择“重建分区表”,DiskMan即开始搜索并重建分区。DiskMan将首先搜索0柱面0磁头从2扇区开始的隐含扇区,寻找被病毒挪动过的分区表。接下来搜索每个磁头的第一个扇区。搜索过程可以采用“自动”或“交互”两种方式进行。自动方式保留发现的每一个分区,适用于大多数情况。交互方式对发现的每一个分区都给出提示,由用户选择是否保留。当自动方式重建的分区表不正确时,可以采用交互方式重新搜索。但是,需要注意的是,重建分区表功能也不能做到百分之百的修复分区表,除非你以前曾经备份过分区表,然后通过还原以前备份的分区表来修复分区表损坏。因此可见,平时备份一份分区表是非常重要的!
  
  三、硬盘不能引导进入操作系统
  
  硬盘不能引导进入操作系统是比较常见的故障,表现在开机后屏幕上出现“Error loading operating system”或“Missing operating system”的提示信息。
  
  DOS引导系统主要由DOS引导扇区和DOS系统文件组成。系统文件主要包括IO.SYS、MSDOS.SYS、COMMAND.COM,其中COMMAND.COM缺省状态下是DOS启动的必备文件。屏幕显示“Error Loding Operating System”或者“Missing Operating System”表明硬盘的主引导记录被破坏,或者分区的结束标志遭到破坏,还有可能是由于CMOS重硬盘参数设置错误引起的。可能引起这种现象的原因有:CMOS参数被改动;硬盘下的系统文件IO.SYS和MSDOS.SYS遭到破坏;硬盘DOS引导记录(BOOT)遭到严重破坏,或者DOS引导记录的结束标志(01FF的55 AA)丢失;也可能是硬盘的主引导数据被破坏,或主引导结束标志(080。081的55 AA)丢失而造成。为了避免故障给我们带来的损失,可按照以下的步骤来解决:首先,进入CMOS,检查并改正其中的错误参数;如若不成功可尝试从软盘或光盘引导系统后使用SYS C:命令重新传送DOS引导,即可修复故障,包括引导扇区及系统文件都可自动修复到正常状态。如果故障仍旧不能解决的话,可用Diskedit 修改硬盘主引导的结束标志(080,081的55 AA);如果还不能解决的话,那么干脆用FDISK命令重新分区。
  四、硬盘零磁盘故障
  
  是使用电脑过程中比较常见的硬盘故障之一,它的表现一般是在开机自检时,系统显示“TRACK 0 BAD,DISK UNUSABLE”,意思为“零磁道损坏,硬盘无法使用”或用磁盘扫描程序扫描其它硬盘时其0扇区出现红色“B”。硬盘0扇区损坏,是大家比较头痛的故障,一般情况下也就判了硬盘死刑,很难修复。不过对于硬盘0扇区损坏的情况,虽然比较棘手,但也不是无可救药。其实合理运用一些磁盘软件,把报废的0扇区屏蔽掉,而用1扇区取而代之则还有“起死回生”的可能,这样的软件有Pctools和诺顿NU等。这样的软件有Pctools9.0和NU8等。
  
  使用Pctools9.0软件的方法:用盘启动电脑后,运行Pctools9.0目录下的DE.EXE文件。接着选主菜单Select中的Drive,进去后在Drive type项选Physical,按空格选定,再按Tab键切换到Drives项,选中hard disk,然后OK回车后回到主菜单。打开Select菜单,这时会出现Partition Table,选中进入后出现硬盘分区表信息。该硬盘有两个分区,找到C区,该分区是从硬盘的0柱面开始的,那么,将1分区的Beginning Cylinder的0改成1就可以了,保存后退出。重新启动电脑后按Del键进入COMS设置,运行“IDE AUTO DETECT”,可以看到CYLS由782变成781。保存退出后重新分区格式化该硬盘,使其起死回生。此外,使用诺顿NU8.0软件也是不错的选择:进入NU8工具包目录,运行其主程序NORTON.EXE,然后可先选“补救盘”RESCUE选项对该硬盘的引导区、分区表等信息进行备份。接着选择“磁盘编辑器DISKEDIT”,成功运行后选“对象OBJECT”,选“分区表”后可见本硬盘的参数如下:面SIDE为0-63,簇CYLINDER为0-255,扇区SECTOR为1-63,其主引导记录和分区表信息就应该在0面0柱1扇区。我们要做的事就是把其C盘的起始扇区从0面0柱1扇区改为0面1柱1扇区,移动光标手工修改即可。另外需要说的就是,改动数值要根据具体情况而定。最后存盘后退出重启电脑,用Format命令格式化硬盘即可正常使用了。但是有一点必须要注意,修好后的硬盘不要再用DOS下的Fdisk等分区工具对其进行重新分区操作,以免其又改变硬盘的起始柱面。
  
  总结
  
  总的来看,当前硬盘的物理故障率已大为降低。但随着在硬盘上存储的软件系统和数据信息的复杂化和大型化,硬盘的软故障率还是呈上升趋势的。虽然这些软故障一般不会造成硬盘的元器件的损坏,但却会使硬盘上的信息系统遭到破坏,而使用户蒙受巨大损失。所以日常里——大家对自己硬盘的软故障处理和日常数据的维护~多加一些呵护,绝对值得!
  

  INT13/02h READ ERROR(AX=0A00,DL=80)
  
  ------------------------------------
  请问大家这句是什么意思?

  我地系统也启动不料了!进不了逻辑盘:
  INT 13/02h Read error (AX=0100,DL=80)
  症状:1.迈拓硬盘在BIOS中能检测到为IDE disk,30G的硬盘被检测为10G,可是进系统就检测不到了,用光盘引导启动后,也检测不到,在别人的机子上搭成付盘也不行,光盘启动后用DiskMan,smartdisk等均提示找不到硬盘,用诺顿硬盘医生能发现C:盘(4.5G),且检测无坏道及文件系统错误,用迈拓专用低格软件可以发现硬盘,但无法读写及低格
  2.重启检测硬盘后,出现硬盘错误必须按F1键才能进入下一步,如继续硬盘启动就出现INT 13/02h Read error (AX=0100,DL=80)字符,要求重启。
  3.在网上查到迈拓硬盘因此类错误求救者并非罕见,但无如何解救的方法,看来只有找厂家了。
  4.本人迈拓硬盘刚好用满3年,最近曾多次重装或装多系统,最近一次是昨晚,装一网上下载的WINXP后出现上述故障。他人硬盘在我的机子上应用良好。
  5.本人硬盘此前一直还可以,保护/保养良好。
  ◎ 谢谢各位大虾 zixiaozcc (70062)于2004/09/12(15:41:52)..
  我在武汉,太远了,主要是要修复硬盘 。
  我曾经考虑硬盘fw故障。请教大虾硬盘的fw是否象主板bios可以有软件改写?是否有病毒可以改写它?就象CIH一样?
  
  自检时可以看到有该硬盘,但无法识别是哪一厂家的(购买时是迈拓盒装30G硬盘)
  ◎ 应该是硬盘硬件故障 ,你是要数据还是要修复硬盘 ? 浪子z_1510 (68621)于2004/08/11(19:44:30)..
  我可以修复你的硬盘和数据 ,南京,naziz_1510@sina.com,13073479269(短信) ,025-58917560(小灵通),详情见邮件,来信联系!

  发表于 2004-10-7 01:52 资料 文集 短消息
  特急,求救! changhv (68602)于2004/08/11(11:27:34)..
  各位高手:小弟在昨日拷贝一光碟中文件时由于读取困难,强行取消,随后系统自动重起in2000)启动后出现:Primary master hard disk fail 按提示:按F1后又出现:disk boot failure,insert system disk and press enter 点回车后无反应,硬盘灯常亮。用启动盘也无法启动,并且无法找到分区,在COMS中能找到硬盘,可开机提示中却没有。本人用一启动光盘从硬盘启动有如下字样:INT13/02h read error(ax=,dl=) 通过查资料估计是硬盘主引导区(MBR)出错,现向各位高手求教解决问题简单而有效的方法,急!急!急
  

  求教:INT 13/02h Read error (AX=0101,DL=80)
  
  求教各位:
  硬盘突然有问题死机重启后,竟然认不出硬盘,但过一会在开机则能(后发现每隔一段时间就是这样-----在重装的时候),但重新分区在装win2000,设置好网络重启的时候显示INT 13/02h Read error (AX=0101,DL=80)。听同事说出事前几天曾听过硬盘发出嘎嘎的声音。
  型号:WD800AB-50CBAD
  望知道故障原因的朋友不惜赐教。感谢不尽!!!!

  推荐]安装系统重新启动后,提示:INT13/02h Read error (AX=0101,DL=80)
  
  安装系统重新启动后,提示:INT13/02h Read error (AX=0101,DL=80) 电脑系统格式化了C盘
  安装系统重新启动后,提示:INT13/02h Read error (AX=0101,DL=80)
  就不能继续安装了.
  在电脑的D盘有重要的数据,我应该怎么办才好.
  
  int 13是系统调用硬盘MBR的中断号。从中可以看出,是你的硬盘分区表损坏了,你可以下载一个DISKGEN软件来尝试修复一下,不可我想修复的可能性不是很大,所以我建议你先将硬盘挂到别的机器上并设为从盘,用finaldata软件先进行数据恢复,因为你的逻辑分区表损坏并不代表你的分区也不存在了,当然除C区外其他区的数据还是在的,用finaldata是可以找回来的。恢复数据后再对硬盘重新分区,安装系统。就可以了。
  
  Finaldata软件在下面这个地址有:
  http://soft./SoftWareView.asp?SoftWareID=49682
  
  1、 平时做一个正确的分区表备份,当遇到上述情况时,用它来进行恢复。这种方法一般不会造成数据的丢失。
  
  2、尝试用KV系列或其他的杀毒软件提供的重建分区表功能来尝试修复。在这里我着重推荐一款硬盘分区表维护工具diskman。diskman大小只有108K,可是功能却非常强大。它可以手工修改硬盘分区表中包括逻辑分区在内的所有数据,能重建被破坏的分区表,可以按使用者的意愿分区,从而使一个硬盘中多个操作系统共存。它的独特之处在于,采用全中文图形界面,无须任何汉字系统支持,以非常直观的图表揭示了分区表的详细结构。
  
  3.以上方法无效时,格式化分区.
  用Easyrecovery
  http://www./soft/3518.html
  或Finaldata企业版
  http://www./?Go=Show::List&ID=3208
  找回数据
  
  Fbdisk 、Diskgen 的组合运用
  它俩的个头都不大,一共就100K多,它们的运行环境都要在DOS下面。具体的操作如下:把它俩下载并拷贝到好硬盘C盘的根目录下,然后把坏硬盘也接上。启动到DOS下,对于分区表损坏严重的硬盘(这种盘一般在WIN98下是启动不了的),我们先运行Diskgen,进去以后按Ctrl-Alt组合键,选择“文件”下的加载第二块硬盘,这时我们可以看到第二块硬盘的具体分区情况。如果要重作它,我们可以把所有分区都删除掉,然后存盘退出;再运行Fbdisk,选择要检测的硬盘,按“Y”开始扫描;如果存在坏道这时Fbdisk就会自动显示出来它在哪个扇区、在哪个磁道,扫描完成后,它可以把所有的坏道都列出来。最后它会询问你是否要写入硬盘,如果按“Y”它将自动将坏道分出来,按ESC键退出。再次运行Diskgen,这时我们可以看出经过Fbdisk处理后的磁盘情况。坏道处呈一种透明色显示出来。如果是几个小的坏道连在一起,我们可以稍扩大一些把这些坏道全部通过Diskgen把它们隐藏起来。
  定DOS活动分区
  如果坏道出现较靠前的磁道上,比如在10磁道上,这样C盘分下来只有几十兆还不够装WIN98,这时我们可以把DOS的活动分区选择在一个较大的分区中,如D或E中。然后用Diskgen把选定的分区激活,把好硬盘中的GHOST文件拷贝进来,一恢复,一切OK!
  FBDISK──坏盘分区利器
  硬盘有了坏磁道怎么办?很多朋友会想到用Pqmagic分区大师将坏磁道从工作区中分离出来,然后隐藏起来,这样Windows系统就不会再使用有坏道的磁盘空间。这个方法虽好,但是确定坏磁道所在位置却非常困难,只有一遍一遍地使用Pqmagic,结合Windows系统中的磁盘扫描程序来确定坏道位置,费时费力,最后只能将一大块磁盘空间分离出来。如果磁盘上坏磁道较多而且分散,就只有分离出许多块磁盘空间,不仅操作繁琐,磁盘容量浪费也十分严重。
  那么有没有更简单、快捷、实用的方法呢?答案是有的!我们可以使用坏盘分区利器──FBDISK(http://kokong.home.sohu.com/ks/fbdisk10.zip),它可以自动扫描硬盘的所有扇区,将好磁道设为可用分区,而将坏磁道所在的空间设为隐藏分区,所有的这一切都由软件自动完成,使用起来非常方便。
  使用FBDISK前,首先要将需要检查的硬盘设为主盘,因为该软件只能对物理主盘进行重新分区,然后将FBDISK拷贝至Windows9X或WindowsME的启动盘上(FBDISK只有一个执行文件,32KB大小),用启动盘重新启动系统进入DOS(编者注:FBDISK是一个16位DOS程序),运行FBDISK程序。
  首先FBDISK要扫描磁盘所有的扇区,同时会给出该硬盘的物理参数如柱面数、磁头数、扇区数以及实际容量,当FBDISK扫描到坏磁道时便以以下方式显示:
  Scaning cyls=6529 head=235 bad -------62%
  Scaning cyls=9729 head=255 -------100%
  这说明在柱面数为6529、磁头数为235的扇区(磁盘实际容量的62%)处发现坏磁道。
  接下来FBDISK 询问Write to disk?(Y/N),在这一步之前,FBDISK并未修改任何硬盘数据,选择Y后软件便自动进行重新分区并隐藏坏磁道所在空间,不需要任何人为干预,而且FBDISK以牺牲最小的空间来分离出坏磁道所在扇区,如果坏扇区较少,一般5MB~10MB的空间就可以搞定,不仅节约了磁盘空间,而且大大简化了操作,尤其对于容量较大的硬盘更显示出速度上的优势。
  编注:FBDISK是一款非常棒的处理有坏扇区硬盘的分区软件,对于购买二手硬盘的朋友来说也是不错的磁盘扫描程序,即使是用Pqmagic隐藏起来的分区也无法逃脱检查。
  

  解开硬盘逻辑死锁的一种方法
  
  http:www.guangdongdz.com 2006-5-15
  
  一·序言
  不知道你是否曾碰到过从软盘和硬盘都启动不了计算机的情形?一般计算机的硬盘分区表被病毒感染后,若不能启动机子,通常从软盘可以启动。但在严重的情形下,不但从硬盘不能启动机子,就是从软盘也不能启动。有的恶毒的病毒就能使硬盘被死锁。笔者一次在自己机子上玩弄硬盘锁时,就被锁住过一次。结果在硬盘下选择DOS或WIN95模式启动机子都死机,在软盘下用DOS启动也死机;在COMS中将硬盘类型选择None,虽然可以从软盘启动,但启动后没有硬盘,使用软盘上的FDISK命令,想重新分区或格式化都没门。弄得我一筹莫展。
  本来,硬盘被锁住时,可以采用3.0以下的DOS版本启动机子,机子启动后虽然也不认硬盘,但其不认的原因在于其管理不了现在的大硬盘,因此可以用Debug修改硬盘分区表,修改后可以启动。但在已进入WINDOWS的年代,3.0以下的DOS实难找到,即使找到,你的机子上恐怕也因没有5寸软驱而不能使用。因此,最好的办法是编制一个程序来解决这个问题。笔者通过尝试和思考,找到一种比较实用的方法,可以轻松解开死锁的硬盘,当然也把自己的硬盘解开了。下面,我将这种方法介绍出来。
  二·硬盘锁住原理
  硬盘锁住通常是对硬盘的分区表做手脚,因此首先应该了解硬盘的分区表。硬盘分区表位于0柱面0磁头1扇区,这个扇区的前面200多个字节是主引导程序,后面从01BEH开始的64个字节是分区表。分区表共64字节,分为4栏,每栏16字节,用来描述一个分区。如果是用DOS的FDISK程序分区后,最多只用两栏,第一栏描述基本的DOS分区,第二栏描述扩展的DOS分区。 分区表一栏的结构与各字节的含义如下:
  00H—标志活动字节,活动DOS分区为80H,其它为00H。
  01H—本分区逻辑0扇区所在的磁头号。
  02H—逻辑0扇区所在柱面中的扇区号。
  03H—逻辑0扇区所在的柱面号。
  04H—分区类型标志。
  05H—本分区最后一个扇区的磁头号。
  06H—最后一个扇区的扇区号。
  07H—最后一个柱面的柱面号。
  08H—硬盘上在本分区之前的扇区总数,用双字表示。
  0CH—本分区的扇区总数,从逻辑0扇区计数,不含隐藏扇区,用双字表示。
  在上面的介绍中给出的柱面号与扇区号虽然各占一个字节,但实际上扇区号用6位表示,柱面号用10位表示,扇区号所在字节的最高两位实际上是柱面号的最高两位。 分区表的最后两个字节是分区表的有效标志,如果将其改变,将不能从硬盘启动,这是一种简单的锁住硬盘的方法。解决的办法是从软盘启动,启动后硬盘仍然可以使用。用Debug或Noratn中的Diskedit软件将硬盘该分区表中的标志恢复,则从硬盘启动也没有问题了。锁住硬盘的另一种方法是对分区参数做手脚,如果将分区参数全部变为0,则启动时由于找不到分区参数,从硬盘是没法启动,从软盘启动后也不认硬盘,如果你敲入盘符C并回车,将出现提示Invalid driver specification。
  但所幸的是,毕竟可以启动机子,不认硬盘没关系,在A盘上用DOS的Debug仍然可以读出硬盘0柱面0磁头1扇区的内容,修改后再写入0柱面0磁头1扇区,重新启动机子又没问题了。如果将分区表参数随意改为其它参数,则有可能不能用可以安装DOS的DOS系统盘启动,按F3退出后将出现内存分配错误,不能装载DOS的命令解释器COMMAND的提示,系统就死机了,笔者就曾碰见过这种情形。但用一张格式化成系统盘的软盘则可以顺利启动,只要有Debug,你仍然可以将分区表参数修改回去。
  可怕的事情是,如果你不幸将分区表参数改成一个循环链,即C盘的下一个分区指向D驱,D驱的下一个分区又指向C区,这样循环下去,DOS启动或WIN95启动时由于无休止的读取逻辑驱动器,就只有死机的份了。这是只要有硬盘存在,不管你用软盘还是硬盘都没法启动机子了,由于不能启动是由于硬盘造成的,即使你将硬盘下到其它计算机上,也没法使用,这样硬盘就彻底被锁死了,笔者所遭遇就是此情形。不信,你只需将硬盘0柱面0磁头1扇区的1D0H处改为1(如果你的D驱开始柱面号不够大,此处本来就为1),将1D1H处改为0,表示D盘的开始柱面号跟C盘一样,看看你的计算机还能不能启动,不过你在没有充分的准备前绝不要试。
  一个完整的硬盘锁程序,不过是重新改写0柱面0磁头1扇区的引导程序,并将分区表破坏或故意制造一个循环分区表,而将真正的硬盘分区表参数和引导程序放在其它隐藏扇区并保护起来,如果启动时口令不对,则不能启动机子,口令对了则顺利启动。这种硬盘锁程序,情形好的还可以用软盘启动;情形严重的就是连软盘也不能启动,硬盘真被锁住
  三·解开硬盘锁的程序法
  如果硬盘被锁死,是否真的就无法解开呢?当然不是。看看问题的症结所在,根源在于DOS中的IO.SYS文件,它包含LOADER、IO1、IO2、IO3四个模块,其中IO1中包含有一个很关键的程序SysInt_I,它在启动中很固执,非要去读分区表,而且不把分区表读完誓不罢休。如果碰上分区表是循环的,它就只有死机了。这是DOS的脆弱性和不完备性。其实这也不能怪DOS,因为DOS为了获得硬盘使用权,就必需读分区表参数,而且DOS还约定驱动器号不能超过26,只不过没有考虑到此等循环分区表情形。
  一句话,机子不能启动不过是DOS操作系统造成的,如果另写一个操作系统,或许就能启动机子。当然这只是说个笑话。 明白了病因在于DOS,问题就好办了。DOS启动中不是要读硬盘分区表吗?我不让你读分区表甚至连硬盘都不让你读,不就可以顺利启动了。的确是这样的,解开硬盘锁的程序实现方法就是基于这个思想形成的。当然,这只有从软盘启动着手了。
  看看计算机的启动过程,上电首先进行的多项硬件自测跟我们没有关系,我们关心的只是它最开始和磁盘打交道时是干什么。如果选择从硬盘启动,则计算机和磁盘最开始打交道是将硬盘0柱面0磁头1扇区的内容读入内存0000:7C00处并跳到0000:7C00处执行;如果选择从软盘启动,则计算机和磁盘最开始打交道是将A盘0磁道0磁头1扇区的内容读入内存0000:7C00处并跳到0000:7C00处执行,在执行过程中,计算机并不检查该扇区的内容是什么,只机械地执行读命令,这使得许多系统型病毒得以生存。
  但利用这一点,恰恰使我们的程序解锁法有了用武之地。如果我们用DOS格式化一张可以启动机子的系统软盘,将该软盘的0磁道0磁头1扇区的内容移到后面的空白扇区中,而重新写一段程序到该软盘的0磁道0磁头1扇区,这样用软盘启动时首先执行的是我们所写的程序了。
  在这段程序中,具备这样一些功能:在DOS启动前抢先拦截INT 13H,驻留高端内存并监视INT 13H,判断是否读硬盘,如果是读硬盘就直接返回,这样就禁止了读硬盘,也就避免了DOS读硬盘循环分区表造成的死机;同时拦截对软盘的读取,如果读软盘的0磁道0磁头1扇区,就改成读真正有引导程序和磁盘参数表的扇区,免得DOS在启动中找不到软盘的磁盘参数表而死机。完成这些任务的同时,还要读取软盘真正的引导程序并把控制权交给它。
  该方法可以称为万能的,因为它在用软盘启动中,始终不与硬盘打交道,这样不管你硬盘用什么方法加锁了,对DOS的启动都没有影响。
  当然,这样启动的机子是不认硬盘的,但这没有关系。你可
  
  
工具箱  
【 · 发布:千篇一律  2006-10-24 13:04 】  
  硬盘加密的几种方法
  
  一、修改硬盘分区表信息
  
  硬盘分区表信息对硬盘的启动至关重要,如果找不到有效的分区表,将不能从硬盘启动或即使从软盘启动也找不到硬盘。 通常,第一个分区表项的第0子节为80H,表示C盘为活动DOS分区,硬盘能否自举就依*它。若将该字节改为00H,则不能从硬盘启动,但从软盘启动后,硬盘仍然可以访问。分区表的第4字节是分区类型标志,第一分区的此处通常为06H,表示C盘为活动DOS分区,若对第一分区的此处进行修改可对硬盘起到一定加密作用。
  具体表现在:
  1.若将该字节改为0,则表示该分区未使用,当然不能再从C盘启动了。从软盘启动后,原来的C盘不见了,你看到的C盘是原来的D盘,D盘是原来的E盘,依此类推。
  2.若将此处字节改为05H,则不但不能从硬盘启动,即使从软盘启动,硬盘的每个逻辑盘都不可访问,这样等于整个硬盘被加密了。另外,硬盘主引导记录的有效标志是该扇区的最后两字节为55AAH。若将这两字节变为0,也可以实现对整个硬盘加锁而不能被访问。 硬盘分区表在物理0柱面0磁头1扇区,可以用Norton for Win95中的Diskedit直接将该扇区调出并修改后存盘。或者在Debug下用INT 13H的02H子功能将0柱面0磁头1扇区读到内存,在相应位置进行修改,再用INT 13H的03H子功能写入0柱面0磁头1扇区就可以了。 上面的加密处理,对一般用户来讲已足够了。但对有经验的用户,即使硬盘不可访问,也可以用INT 13H的02H子功能将0柱面0磁头1扇区读出,根据经验将相应位置数据进行修改,可以实现对硬盘解锁,因为这些位置的数据通常是固定的或有限的几种情形。另外一种保险但显得笨拙的方法是将硬盘的分区表项备份起来,然后将其全部变为0,这样别人由于不知道分区信息,就无法对硬盘解锁和访问硬盘了。
  
  二、对硬盘启动加口令
  
  我们知道,在CMOS中可以设置系统口令,使非法用户无法启动计算机,当然也就无法使用硬盘了。但这并未真正锁住硬盘,因为只要将硬盘挂在别的计算机上,硬盘上的数据和软件仍可使用。要对硬盘启动加口令,可以首先将硬盘0柱面0磁头1扇区的主引导记录和分区信息都储存在硬盘并不使用的隐含扇区,比如0柱面0磁头3扇区。然后用Debug重写一个不超过512字节的程序(实际上100多字节足矣)装载到硬盘0柱面0磁头1扇区。该程序的功能是执行它时首先需要输入口令,若口令不对则进入死循环;若口令正确则读取硬盘上存有主引导记录和分区信息的隐含扇区(0柱面0磁头3扇区),并转去执行主引导记录。 由于硬盘启动时首先是BIOS调用自举程序INT 19H将主硬盘的0柱面0磁头1扇区的主引导记录读入内存0000:7C00H处执行,而我们已经偷梁换柱,将0柱面0磁头1扇区变为我们自己设计的程序。这样从硬盘启动时,首先执行的不是主引导程序,而是我们设计的程序。在执行我们设计的程序时,口令若不对则无法继续执行,也就无法启动了。即使从软盘启动,由于0柱面0磁头1扇区不再有分区信息,硬盘也不能被访问了。当然还可以将我们设计的程序像病毒一样,将其中一部分驻留在高端内存,监视INT 13H的使用,防止0柱面0磁头1扇区被改写。
  
  三、对硬盘实现用户加密管理
  
  UNIX操作系统可以实现多用户管理,在DOS系统下,将硬盘管理系统进行改进,也可实现类似功能的多用户管理。该管理系统可以满足这样一些要求: 1.将硬盘分为公用分区C和若干专用分区D。其中“超级用户”来管理C区,可以对C区进行读写和更新系统;“特别用户”(如机房内部人员)通过口令使用自己的分区,以保护自己的文件和数据;“一般用户”(如到机房上机的普通人员)任意使用划定的公用分区。后两种用户都不能对C盘进行写操作,这样如果把操作系统和大量应用软件装在C盘,就能防止在公共机房中其他人有意或无意地对系统和软件的破坏,保证了系统的安全性和稳定性。 2.在系统启动时,需要使用软盘钥匙盘才能启动系统,否则硬盘被锁住,不能被使用。 此方法的实现可通过利用硬盘分区表中各逻辑盘的分区链表结构,采用汇编编程来实现。
  
  四、对某个逻辑盘实现写保护
  
  我们知道,软盘上有写保护缺口,在对软盘进行写操作前,BIOS要检查软盘状态,如果写保护缺口被封住,则不能进行写操作。而写保护功能对硬盘而言,在硬件上无法进行,但可通过软件来实现。 在DOS系统下,磁盘的写操作包括几种情况:①在COMMAND.COM支持下的写操作,如MD、RD、COPY等;②在DOS功能调用中的一些子功能如功能号为10H、13H、3EH、5BH等可以对硬盘进行写操作;③通过INT 26H将逻辑扇区转换为绝对扇区进行写;④通过INT 13H的子功能号03H、05H等对磁盘进行写操作。 但每一种写操作最后都要调用INT 13H的子功能去实现。因此,如果对INT 13H进行拦截,可以实现禁止对硬盘特定逻辑盘的写操作。由于磁盘上文件的写操作是通过INT 13H的03H子功能进行写,调用此子功能时,寄存器CL表示起始扇区号(实际上只用到低6位);CH表示磁道号,在硬盘即为柱面号,该柱面号用10位表示,其最高两位放在CL的最高两位。对硬盘进行分区时可以将硬盘分为多个逻辑驱动器,而每个逻辑驱动器都是从某一个完整的柱面开始。如笔者的硬盘为2.5GB,分为C、D、E、F、G五个盘。其中C盘起始柱面号为00H,D盘起始柱面号为66H,E盘起始柱面号为E5H,F盘起始柱面号为164H,G盘起始柱面号为26BH。如果对INT 13H进行拦截,当AH=03H,并且由CL高两位和CH共同表示的柱面号大于E4H并小于164H,就什么也不做就返回,这样就可以实现对E盘禁止写。
  
  


  
  大家知道,在Win2000以上版本的操作系统中使用移动硬盘时,是不需要安装驱动程序的;可是在Win98工作站中,就需要安装移动硬盘的驱动程序了。不过要是你的计算机中恰好没有光驱或软驱的话,那么安装移动硬盘的驱动程序就不那么容易了。其实,你可以在其他有软驱的Win98工作站中,先制作好Win98启动盘,然后再将移动硬盘连接到安装有Win2000系统的工作站中,并将Win98启动盘中的内容全部复制到移动硬盘中;接下来,再用Winzip之类的压缩工具,将移动硬盘的驱动程序打包成一个可执行程序,比方说usb.exe,并将该可执行文件复制到移动硬盘中。以后,将移动硬盘插入到Win98工作站的USB端口中,并通过移动硬盘的系统引导功能,将Win98系统先启动到DOS环境中,然后在命令行状态下,利用“COPY”命令将移动硬盘的驱动程序“usb.exe”文件复制到Win98工作站的硬盘中。下面,再次以正常方式启动Win98工作站,然后在Windows界面下,对“usb.exe”文件进行自动解压,就可以得到移动硬盘的驱动程序了。以后你就能按常规方法,完成移动硬盘驱动程序的安装操作了。
  
  当然,这种方法仅限于支持系统引导功能的移动硬盘,对于其他普通的移动硬盘,可能无效!
  
  

  好文顶一下,我也遇到过类似的问题,比如160g硬盘只认131g;后来解决了,不过还是换了一块250g硬盘。一些处理硬盘的软件很关键

  d

  硬盘数据恢复,Hard disk Data Recovery
  
  捷诚硬盘数据恢复中心的专家,拥有丰富的实战经验,扎实过硬的恢复技术;在设备方面,捷诚数据恢复中心投资兴建了超级洁净工作间,以满足对硬盘数据的恢复所必需的环境,以及有专门用于硬盘数据修复的HRT等软硬设备,对于以上现象的出现捷诚数据恢复中心会以十足的信心,扎实的技术,完善的工作条件为您的硬盘数据进行恢复。我们已经成功的为数百家公司、企事业单位、政府机关成功恢复出硬盘数据。
  一块硬盘如果经检测发现不能完全正常工作,则称这个硬盘是“有缺陷的硬盘”(Defect Hard Disk)。硬盘的缺陷分为六大类:
  ①坏扇区(Bad sector),也称缺陷扇区(Defect sector)
  ②磁道伺服缺陷(Track Servo defect)
  ③磁头组件缺陷(Heads assembly defect)
  ④系统信息错乱(Service information destruction)
  ⑤电子线路缺陷(The board of electronics defect)
  ⑥综合性能缺陷(Complex reliability defect)
  出现这六种现象的原因是多种多样的,但是造成的现象只有一个,那就是您的数据再也看不到了,您多年的研究成果伴随着硬盘异样的响声丢失,您花费了许久的时间写出来的程序再也不能正常的出现在您的面前了。
  

  计算 机 硬 盘 子 系 统 常 见 故 障 处 理 方 法
  
  ------------------------------------------------------------------------
  
  一、 电 源 引 起 硬 盘 不 能 自 举 的 故障
  
  现 象: 计 算 机 启 动 后上 电 自 检 失 败,“ 嘟 嘟” 两 声 喇 叭
  响, 屏 幕 显 示“1701” 故 障 代 码, 意 为 硬 盘 或 信 号 电缆、 适 配
  器 出 错。 经 过 检 查, 发 现 硬 盘 控 制 卡 和 硬 盘 完 好,信 号 电 缆
  亦 没 问 题。 用 软 盘 启 动 可 成 功。 再 仔 细 检 查, 发 现问 题 在 电
  源 身 上。
  
  原 因: 计 算 机 的 电 源输 入 是 市 电 压180~250V 之 间, 经 过 调
  压 后 输 出 的 电 压 分 别 是+5V 和+12V 电 源。 硬 盘 的 启 动需 要+12V 电
  源 和A4 的 电 流。 硬 盘 工 作 时 的 电 流 为1 1A。 软 盘 的启 动 仅
  需+10V 左 右 的 电 压 和1.3A 电 流, 而 工 作 电 流 为0.5A。因 此 电 源 的
  输 出 电 压 不 足+12V, 则 硬 盘 就 不 能 启 动 和 工 作 了。
  
  排 除 方 法: 检 查 电 源线 是 否 插 好, 导 线 与 焊 点 是 否 分
  开, 如 否, 关 掉 电 源, 拆 开 电 源 外 盖, 检 查 稳 压 电路 和 电 位
  器 部 分, 找 出 损 坏 部 件 更 换 之。
  
  二、 主 机 板 锂 电 池 失 效 引 起 硬 盘TYPE 值 错 误
  
  现 象: 启 动 主 机 后 上电 自 检 失 败, 硬 盘 指 示 灯 熄 灭, 表
  示 没 有 命 中,“ 嘟 嘟” 两 声 喇 叭 响, 屏 幕 出 现:
  
  “RAM BATTERY LOW” 等 错误 信 息, 死 机。
  
  原 因: 这 是 主 板 上 的充 电 锂 电 池 失 效, 引 起 主 机 参 数
  紊 乱 而 产 生 的 故 障。 锂 电 池 是 用 来 供 电 存 放 机 器时 钟, 日
  期, 软 驱 动 器 个 数、 类 型、 硬 盘 个 数、 类 型、 显 示器 方 式, 内
  存 容 量, 扩 展 容 量 等 参 数。 当 开 机 上 电 自 检 时,BIOS 自 动 检
  核CMOS 中 的 参 数 表, 如 果 不 匹 配, 则 自 动 锁 机。 锂电 池 的 工 作
  电 压 为+3V~+6V。 如 果 电 池 电 压 不 足+3V 或 电 池 失 效,则 硬 盘 参
  数 消 失, 硬 盘 不 被 命 中。
  
  排 除 方 法: 关 掉 电 源,拔 掉 所 有 的 外 线, 打 开 主 机 盖。
  检 查 锂 电 池 是 否 有 液 体 溢 出, 如 否, 用 万 用 表 测量 电 池 两 端
  电 压, 发 现 不 足+3V, 更 换 一 新 电 池 即 可。
  
  三、 硬 盘TYPE 参 数 错 误 引 起 硬 盘 不被 命 中 故 障
  
  现 象: 主 机 启 动 后,内 存 自 检 完 毕,“ 嘟 嘟” 两 声 喇 叭
  响, 屏 幕 出 现:
  
  “C:Drive error” 等 错 误信 息。 硬 盘 启 动 失 败。 用 软 盘 启
  动 成 功, 试 图 进 入 硬 盘, 出 现:
  
  “Invalid media type reading drive c
  abort,Retry,Fail?” 错 误信 息。
  
  原 因: 硬 盘 参 数TYPE 值不 匹 配 引 起 硬 盘 不 被 命 中 故 障。
  当 前, 生 产 硬 盘 的 厂 家 有 数 百 个, 硬 盘 的 型 号 也为 数 百 种,
  不 同 厂 家 的 硬 盘,TYPE 值 也 不 一 样。TYPE 值 是 一 个 硬盘 特 征 标
  志, 代 表 硬 盘 容 量 大 小, 磁 头 头 数, 磁 道 道 数, 扇区 数 目 等
  值。 如 果TYPE 的 值 设 置 错 误, 则 硬 盘 不 被 命 中, 因而 硬 盘 启 动
  不 了。
  
  排 除 方 法: 重 新 设 置硬 盘 的TYPE 值。 不 同 类 型 的 计 算
  机, 参 数 的 配 置 方 法 不 同。 在 开 机 后 待 自 检 开 始,按 下DEL 或
  同 时 按 下ALT+CTRL+ESC 三 个 功 能 键, 即 可 进 入 主 机 参数 表, 选
  择Drive c :( 驱 动 器C:) 栏 目 中 的TYPE 项, 填 入 正 确 的type 值 即 可。
  AMI 公 司 的BIOS 设 置 移 行 所 设 置 的 硬 盘 类 型 有47 类,1~46 为 标 准
  硬 盘 类 型,47 为 用 户 自 定 义 类 型。 主 要 参 数 为:
  
  Cyln Head Sect Wpcom Leone Size
  
  柱面数 磁头数 扇区 数写电流补偿 磁头启停区 容 量
  
  当 前,386 以 上 的 主 板都 有 硬 盘 自 检 测 功 能。 进 入CMOS 设
  置 菜 单 中, 用 光 标 点 中:AUTO DETELT HARD DISK 即 可。
  
  四、 硬 盘0 磁 道 损 坏 的 故 障
  
  现 象: 主 机 加 电 启 动,自 检 完 毕, 硬 盘 指 示 灯 闪 亮, 然
  后 直 接 进 入ROM BASIC 状 态 或 死 机。
  
  用 软 盘 启 动 成 功, 访问 硬 盘 时 出 现:
  
  “Invalid Drive specification” 的 错 误 信 息。
  
  用BIOS 中 断 强 行 读 写零 磁 道, 发 现BOOT 区 不 能 正 常 读 写。
  
  原 因: 硬 盘 的0 磁 道 物理 性 损 坏。 因 为DOS 操 作 系 统 的 主
  引 导 程 序 段 下 好 是 存 放 在 硬 盘 的0 磁 道 上。0 磁 道损 坏, 主 引
  导 程 序 则 读 不 出 来, 硬 盘 便 工 作 不 了。
  
  排 除 方 法:(1) 首 先 尽量 把 硬 盘 有 用 的 文 件、 数 据 备 份
  出 来。 由 于 硬 盘0 磁 道 的 损 坏, 硬 盘 中 的 资 料、 文件 已 不 能 按
  正 常 备 份 方 法 备 份。 需 用BIOS 中 断 方 法 按 扇 区 逐 一备 份。(2)
  对 硬 盘 全 部 做 格 式 化, 删 去 损 坏 的 磁 道 后, 用FDISK 对 硬 盘 重
  新 分 区。(3) 用FORMAT 对 硬 盘 作 逻 辑 格 式 化, 装 上DOS 操 作 系 统 和
  有 关 文 件, 数 据 即 可。
  
  五、BOOT 主 引 导 系 统 损 坏 引 起 的 硬盘 逻 辑 故 障
  
  现 象: 主 机 上 电 启 动,自 检 完 毕, 硬 盘 指 示 灯 闪 亮, 屏
  幕 出 现:
  
  “Disk Boot Failure” 等错 误 信 息, 硬 盘 启 动 失 败。 用 软 盘
  启 动 成 功, 试 图 进 入 硬 盘, 出 现:“Invalid Drive specifition” 错
  误 信 息。
  
  原 因: 用BIOS 中 断 程 序读 出BOOT 区 的 内 容, 发 现 该 区 系 统
  信 息 已 面 目 全 非。 主 引 导 程 序 段 或 分 区 表 中 只 要有 一 样 被
  破 坏, 则 可 使 硬 盘 启 动 失 败。 这 类 情 况, 大 多 是 非法 程 序,
  非 法 操 作 或 病 毒 引 起 的。
  
  排 除 方 法: 重 新 恢 复BOOT 区 的 主 引 导 程 序 段 或 分 区 表。
  如 果 是 整 个BOOT 区 损 坏, 则 只 好 从 另 一 台 同 类 型 的主 机 上 读
  出BOOT 区 的 信 息, 再 写 入 故 障 机。 硬 盘 的BOOT 区 被 非法 写 入 是
  常 见 的 故 障。 因 此, 用 户 必 须 做 好BOOT 区 的 备 份 保护 工 作。
  
  六、BOOT 主 引 导 区 标 志‘55AA’ 改 变引 起 的 硬 盘 逻 辑 故 障
  
  现 象: 主 机 上 电 启 动,自 检 完 毕, 硬 盘 指 示 灯 闪 亮, 屏
  幕 出 现:
  
  “DRIVE NOT READY ERROR
  INSERT BOOT DISKETTE IN A:
  
  PRESS ANY KEY WHEN READ” 等 错 误 信 息, 硬 盘 启 动 失 败。 用 软
  盘 启 动 成 功, 试 图 进 入 硬 盘, 出 现:
  
  “Invalid Drive Specifition” 错 误 信 息。
  
  原 因: 用DEBUG IN13 中 断程 序 调 出BOOT 区 的 内 容, 发 现 该 区
  最 后 的 结 束 标 志‘55AA’ 已 被 改 变。 这 类 情 况, 大 多是 非 法 程
  序, 非 法 操 作 或 病 毒 引 起 的。
  
  排 除 方 法: 进 入DEBUG 状 态, 用INT 13 中 断 程 序 调 出BOOT 区
  的 记 录, 将 最 后 两 个 字 节 改 成‘55AA’ 即 可。
  
  七、DOS 引 导 区 参 数 改 变 引 起 的 硬盘 逻 辑 故 障
  
  现 象: 主 机 上 电 启 动,自 检 完 毕, 硬 盘 指 示 灯 闪 亮, 屏
  幕 出 现:
  
  “Non-system disk or disk error
  
  Replace and press anykey when read” 等 错 误 信 息, 硬 盘 启 动 失
  败。 用 软 盘 启 动 成 功 后 可 进 入 硬 盘, 但 用DIR 列 目录 时 出 现:
  
  “file not found” 信 息,查 不 到 任 何 文 件。
  
  原 因:DOS 引 志 区 的OBH 位 移 处 存 放 硬 盘I/O 参 数, 如 扇 区
  数、 字 节 数、FAT 数、 磁 盘 标 志、 磁 头 数、 总 扇 区 数等 数 据。 这
  些 参 数 被 改 变, 引 起 寻 找 目 录 指 针 错 误。 这 类 情况, 大 多 是
  非 法 程 序, 非 法 操 作 或 病 毒 引 起 的。
  
  排 除 方 法: 进 入DEBUG 状 态, 用INT 13 中 断 程 序 调 出DOS 区 的
  记 录, 正 确 修 改0BH 位 移 处 的 参 数 即 可。
  
  八、DOS 内 核 文 件 损 坏 引 起 的 硬 盘逻 辑 故 障
  
  现 象: 主 机 上 电 启 动,自 检 完 毕, 转 入 硬 盘 启 动, 屏 幕
  出 现:
  
  “Missing Openating system” 或“error Loading Operating system” 错
  误 信 息, 用 软 盘 启 动 后 可 进 入 硬 盘, 可 显 示 出 硬盘 的 信 息 和
  文 件。
  
  原 因:DOS 操 作 系 统 是由(1)DOS —BIOS 模 块,IBMBIO.COM。(2)DOS
  —kernel 模 块,IBMDOS.COM,(3)DOS —SHELL 模 块,COMMAND.COM 三 个 文 件
  组 成。 其 中 某 一 个 文 件 损 坏 引 起 的 故 障。
  
  排 除 方 法: 恢 复DOS 三个 文 件。 用 相 同 版 本( 或 高 版 本) 软
  盘 启 动 后, 键 入:
  
  A〉SYS C: 回 车 即 可。
  
  九、 硬 盘 驻 留 病 毒 引 起 的 设 备 故障
  
  现 象: 在 计 算 机 操 作过 程, 经 常 出 现 一 些 特 殊 的 符 号、
  信 息, 或 者 发 现 一 些 执 行 文 件 字 节 增 加, 一 些 数据 文 件 丢
  失, 一 些 命 令 文 件 破 坏。 计 算 机 的 速 度 减 慢, 还 有频 繁 的 死
  机, 甚 至 还 有 外 设 备 的 莫 名 其 妙 的 故 障。
  
  这 种 迹 象, 多 是 硬 盘病 毒 引 起 的。 计 算 机 的 病 毒 基 本
  上 分 两 大 类 型, 一 是 系 统 病 毒, 另 是 文 件 病 毒。 病毒 又 按 其
  破 坏 的 性 质 分 为 良 性 病 毒 和 恶 性 病 毒。 一 些 病 毒公 是 对 数
  据, 文 件 破 坏。 一 些 病 毒 即 影 响 到 硬 件 设 备 的 正常 工 作。 特
  别 是 对 引 起 硬 件 设 备 故 障 的 病 毒, 很 容 易 被 误 诊为 设 备 故
  障 而 误 修。
  
  十、 对 硬 盘 故 障 修 理 注 意 的 几 个问 题
  
  硬 盘 不 仅 存 放 各 种 应用 软 件, 还 存 放 有 用 户 文 件 和 大
  量 的 历 史 数 据, 一 旦 硬 盘 发 现 故 障, 保 护 和 恢 复用 户 文 件 和
  数 据 资 料 就 是 首 要 问 题。
  
  因 此, 在 排 除 故 障 时,必 须 要 千 万 小 心 谨 慎, 分 析 原
  因, 判 断 是 属 于 那 一 类 型 故 障。 特 别 是 不 能 随 便
  用FDISK,LOWFORMAT,HFORMAT 等 破 坏 数 据 性 的 工 具 对 硬盘 进 行 操
  作。 笔 者 曾 对 一 个 因 硬 盘0 磁 道 物 理 损 坏 而 险 遭 物理 格 式 化
  的 机 器 进 行 数 据 恢 复, 保 全 了 用 户 的 主 要 数 据 库,避 免 了 一
  大 损 失。 但 也 遇 到 另 一 个 情 况, 使 用 者 用HFORMAT 低格 式 化 硬
  盘, 至 此, 硬 盘 的 资 料 已 不 能 恢 复 了。
  
  作者:广东湛化企业集团公司 ( 524012 ) 韩 平
  [微电脑世界] [国际电子报] [展览]
  
  

  硬盘逻辑锁详解
  
  --------------------------------------------------------------------------------
  2003-5-31 9:39:46
  
  不知道你是否曾碰到过bios里面能够检测到硬盘,但是你从软盘和硬盘都启动不了计算机的情形?也许这时候你就会认为是硬盘坏掉了,可实际上,很有可能是你的硬盘中了逻辑锁。
  硬盘逻辑锁总共有三种,本质都是对硬盘的分区表作了修改,以前只是一些黑客程序使用它,开始大范围对计算机造成危害是在臭名昭著的KV3000反盗版事件的时候,那时江民公司为了打击盗版。在KV3000新版升级程序植入了一个黑客程序,当检测到用户使用了盗版的KV3000以后就将硬盘的分区表锁住,被称为“主动逻辑锁”,其实就是硬盘逻辑锁的一种,当时却使无数无辜的人受害,江民公司也因此被定罪。这是旧事不谈,下面我们就来介绍一下它的三种情况和解决方法。
  首先我们来了解一下硬盘的分区表。硬盘分区表位于磁盘的0磁头0柱面1扇区,这个扇区从01BEH开始的64个字节就是分区表。分区表共64字节,分为4栏,每栏16个字节描述一个分区。如果用FDISK程序分区,那最多只用两栏,第一栏描述主引导分区,第二栏描述扩展分区。分区表的结构与各字节的含义如下:
  00H—标志活动字节。活动DOS分区为80H,其它为00H。
  01H—本分区逻辑0扇区所在的磁头号。
  02H—逻辑0扇区所在柱面中的扇区号。
  03H—逻辑0扇区所在的柱面号。
  04H—分区类型标志。
  05H—本分区最后一个扇区的磁头号。
  06H—最后一个扇区的扇区号。
  07H—最后一个柱面的柱面号。
  08H—硬盘上在本分区之前的扇区总数,用双字节表示。
  0CH—本分区的扇区总数,从逻辑0扇区计数,不含隐藏扇区,用双字节表示。
  分区表的最后两个字节是它的有效标志,改变后将无法从硬盘启动,这就是第一种简单的锁住硬盘的方法。不过比较容易解决,只要从软盘启动就一切正常,启动后用Debug或Diskedit等软件将硬盘分区表中的标志恢复就可以了。第二种方法是修改分区参数,如果将分区参数全部变为0,则启动后由于找不到分区参数无法从硬盘启动,用启动盘从软盘启动后也不认硬盘,不过机器毕竟能够启动,我们可以在启动后用软盘里的debug等工具修复被改动的分区表参数,重新启动后就没问题了。
  我们重点要讲的就是第三种,也就是上文提到的“主动逻辑锁”,它是因为分区表参数被修改成了一个死循环。正常启动时DOS接管硬盘后查找分区表,主引导分区被定义为C盘,然后查找逻辑盘,定义为D盘,然后是E、F、G,而这个主动逻辑锁就是将第一个逻辑盘(一般是D盘)的下一个分区指向它本身,不断读取下一个,其实就是读它自己,结果陷入死循环。因为DOS启动必须包含基本输入输出文件io.sys(我们在windows下也可以看到,位于C盘根目录下)。而它是有些固执的,启动以后非要把硬盘分区表读完然后接管不可,所以无论我们用什么启动,它一查找逻辑盘就死循环,我们就看到了硬盘灯常亮系统挂起的情况了。
  那么我们如何解开它呢?从根本上讲就是让io.sys不起作用或者在它起作用以前将分区表参数修改回来。
  1、debug法。
  用这种方法首先必须要能启动机器,我们可以在一台正常的电脑上修改启动软盘中的io.sys文件,查找到第一个“55aa”字符串,找到以后修改为任何其他数值,用这张启动软盘你就可以顺利地带着被锁的硬盘启动了。不过这时该硬盘的分区表已经不正常,所以我们无法用FDISK来删除和修改分区,而且仍然无法用正常的启动盘启动系统,这时可以用DEBUG来手工恢复。具体命令如下:
  a:\>debug
  -a
  -????:100 mov ax,0201(读一扇区内容)
  -????:103 mov bx,500(设置一缓存地址)
  -????:106 mov cx,0001(设置第一硬盘的硬盘指针)
  -????:109 mov dx,0080(读零磁头)
  -????:10c int 13 (硬盘中断)
  -????:10e int 20
  -????:0110 回车
  (注:-????各硬盘不相同,跟后面的:1??都是自动显示的,我们要输入的只是其后的内容)
  -g
  -d500 (查看运行后缓存地址500的内容,这时候我们会发现地址6be开始的内容就是硬盘分区表信息,如果硬盘的扩展分区正是指向自己,那么DOS或WINDOWS启动时就会因查找逻辑分区而陷入死循环。)在DEBUG指示符下继续修改内存数据:
  E6BE
  .0 ??.0 ??.0……
  ……
  ……55 AA
  55 AA是硬盘有效的标志,不要修改,??.0表示把以前的数据“??”改成了0,再用硬盘中断13把修改好的数据写入硬盘就可以了:
  A:\>debug
  a 100 (表示修改100地址的汇编指令)
  -????:100 mov ax,0301 (写硬盘一个扇区)
  -????: 回车
  -g (运行)
  -q (退出)
  退出后运行fdisk/mbr来重置硬盘引导程序,重新启动即可。
  这种方法虽然麻烦一点,但是它能够恢复硬盘分区表,也就是说恢复以后硬盘中的数据也不会丢失。而以下方法虽然更加方便,但是要么硬盘中的数据难保,要么有一定危险性。
  2、外挂软件法
  这种方法原理都是绕过bios对硬盘的检测而直接用一些能够自己查找硬盘的软件来控制硬盘。
  首先是DM,现在每一个硬盘厂商都有自己的DiskManager程序,而且都能放进一张软盘里,你可以下载一个使用,如果不清楚自己硬盘的牌子,也可以用IBM出的DM万用版,不过它对现在32G以上的大硬盘支持不好。我们先在bios里面将硬盘所在的IDE口设置为none,(如果你不知道哪个是,全部设为none也可以),然后用启动盘启动系统,启动完成后将软盘取出,放入装有DM软件的软盘,运行DM,它会检测到你的病硬盘的存在,然后将它重新分区就搞定了。DM具体用法比较简单,就不详细说了,不过对E文不太好的朋友可能有些困难,请教身边的高手吧。
  我们还可以使用低格软件,也是每一种硬盘都有自己的低格软件,但也有通用的Lformat程序(只有30多k),前面的做法相同,还是在bios里面屏蔽掉硬盘,用启动盘启动,然后换软盘运行低格程序对硬盘进行低级格式化,由于分区表只在硬盘最前列部分,所以估摸着格过前面的分区表部分就可以停止了,然后重新启动在bios里面将硬盘设出来,就可以像一块新的硬盘一样对它进行分区等操作了。
  3、热插拔
  这是最危险的一种方法,很有可能将你的硬盘烧毁,所以请谨慎。具体做法很简单,首先将硬盘的电源线拔掉,然后软盘启动系统,启动完成后再将硬盘的电源线插上,这时候系统就能够控制硬盘了,可以对它进行分区,恢复分区表等操作。我有一个菜鸟朋友就是在热插拔硬盘3次以后搞定的。不过此种方法存在危险,强烈不推荐使用,如因此损坏,本人概不负责。
  其实最好的情况是你有分区表备份,那恢复起来就比较容易了,而且数据也不会丢失。所以说呢,亡羊补牢固然不错,但是如果能事先就做好了保险工作,那就不用愁了。
  

  前几天笔者被一位当数据库管理员的朋友叫去,他的一台做数据库的服务器无法启动,搞的他焦头烂额,后来请人来一看,人家一开口就要2000,没办法只好找我试试。我朋友的这台数据库的操作系统是win2000 server,选择的数据库是sql2000,他工作单位是个传呼台,这台数据库服务器是专门来存储客户资料的,每半个月将数据文件存入磁带内,而出事那天恰恰正是应备份数据库文件,而我朋友买了一张D版的光盘准备在服务上读一读,光盘一放入就自动运行,马上就自动重启,当系统重新引导时就提示如下:NON-SYSTEM DISK,PLEASE INSERT A SYSTEM DISK(看来D版真是害人又害己啊),显然就无法引导系统.
  
  处理
  若计算机不能从硬盘启动,则我们可以通过软盘启动后,试着访问硬盘。如果不能访问硬盘,则可能是主引导区或者可引导分区的引导区被破坏了这时候,我们可以应用DEBUG命令等工具软件查看硬盘的主引导区是否正常。我用一张Msdos系统软盘来引导,进入dos系统后,由于该服务器的主分区是NTFS格式,如果不用第三方软件是无法查看分区信息的,不过我想先用DEBUG命令去看一下MBR(硬盘主引导记录),操作如下:
  
  a:>DEBUG
  XXXX:XXXX a 100 汇编编辑命令指令
  XXXX:0100 mov ax,0201 读取一个扇区
  XXXX:0103 mov bx,0200 读至当前段内存0200处
  XXXX:0106 mov cx,0001 柱面号=0,绝对扇区数=1
  XXXX:0109 mov dx,80 磁头号=0,驱动器号=80
  XXXX:010C int 13 磁盘读写中断
  XXXX:010E int 3 断点中断
  XXXX:010F 回车
  XXXX:XXXX g=100 执行上述指令
  XXXX:XXXX d 380 显示主分区表内容(Hex:1BEH)
  
  上述命令的详解可参看清华大学出版的《IBM-PC 汇编语言程序设计》,由沈美明 温冬婵编著。我再简单介绍一下主分区表。主分区表位于硬盘主引导记录(0柱面0磁头1扇区)的后部.从1BEH字节开始,共占用64个字节,包含四个分区表项。每个分区表项的长度为16个字节,它包含一个分区的引导标志、系统标志、起始和结尾的柱面号、扇区号、磁头号以及本分区前面的扇区数和本分区所占用的扇区数。其中"引导标志"表明此分区是否可引导,即是否活动分区。当引导标志为"80"时,此分区为活动分区;"系统标志"决定了该分区的类型,如"06"为DOS FAT16分区,"0b"为DOS FAT32分区,"83"为LINUX native分区等;起始和结尾的柱面号、扇区号、磁头号指明了该分区的起始和终止位置。)
  
  这一看不要紧,一看吓一跳,主分区表内参数被大量的26(HEX)所代替,看来这位病毒制造者是位"38"(26H转化为十进数是38),也真够狠的.而我的朋友又没有对MBR进行备份,这下可麻烦大了。不过,通常硬盘0柱面0磁头2扇区是0柱面0磁头1扇区的备份,每当系统引导成功,系统会将0柱面0磁头1扇区的内容复制到0柱面0磁头2扇区,而如果安装了SC COMMANDER,LILO的引导软件,将会占用0柱面0磁头2扇区,而将0柱面0磁头1扇区的内容复制到0柱面0磁头3扇区,这是大家需要注意的问题。因此在没有对MBR进行备份的情况下,查找0柱面0磁头从2扇区开始的隐含扇区,寻找备份的MBR,通过未被破坏的分区引导记录信息重新建立MBR将是一个很好的解决办法.于是我又做了如下操作:
  
  a:>DEBUG
  XXXX:XXXX a 100 汇编编辑命令指令
  XXXX:0100 mov ax,0201 读取一个扇区
  XXXX:0103 mov bx,0200 读至当前段内存0200处
  XXXX:0106 mov cx,0002 柱面号=0,绝对扇区数=2
  XXXX:0109 mov dx,80 磁头号=0,驱动器号=80
  XXXX:010C int 13 磁盘读写中断
  XXXX:010E int 3 断点中断
  XXXX:010F 回车
  XXXX:XXXX g=100 执行上述指令
  XXXX:XXXX d 380 显示备份主分区表内容(Hex:1BEH)
  
  还好,病毒制造者还算有点良心,并没有破坏备份的主分区表的记录信息,那么我们就可利用备份的MBR的记录信息来重建主分区表,操作如下:(注我并未退出Debug)
  XXXX:XXXX a 100
  XXXX:0100 mov ax,0301 写一个扇区
  XXXX:XXXX a 106
  XXXX:0106 mov cx,0001 柱面号=0,绝对扇区数=1
  XXXX:XXXX g=100 执行上述指令
  再将主分区表调出来看是否已正常写入:
  XXXX:XXXX a 100
  XXXX:0100 mov ax,0201 读取一个扇区
  XXXX:XXXX g=100 执行上述指令
  XXXX:XXXX d 380 显示主分区表内容(Hex:1BEH)
  一切正常。不过为了保险起见,还是将MBR内容备份到软盘上。操作如下:
  XXXX:XXXX r bx
  :00
  XXXX:XXXX r cx
  :0200 设定主分区表的大小为512字节,bx记录高位字节,cx记录低位字节
  XXXX:XXXX n a:mbr.dat 文件命名
  XXXX:XXXX w 0200 将内存地址0200开始的内容写入软盘
  XXXX:XXXX q 退出debug
  
  以为一切ok,但当重新引导时还是提示如下:NON-SYSTEM DISK,PLEASE INSERT A SYSTEM DISK,看来问题多多。只好将该硬盘取下,接在另一台装有win2000 server,分区为NTFS格式的计算机上作为从盘。但当我双击该分区时,提示如下:"不能访问D:,$volume损坏且无法读取",看来该病毒来头不小,能在win2000 server下直接中断,还能修改MFT,病毒制造者的功力真是不浅。我用chkdsk命令想试一试能否修复$volume,结果提示我无法修复。看来我要彻底恢复这台服务器是不太可能了,那么现在最关键的问题实际就是恢复数据库文件,这才是我朋友和我真正关心的,据我朋友讲他有两个重要的用户数据库文件,分别命名为client1,client2,于是我们所有的关注就给了这两个数据库,而这两个数据库又分别由后缀名为mdf的文件(用户数据库的主文件),后缀名为log的文件(用户数据库的日志文件,sql2000的数据库主文件由其对应的日志文件来控制所写的内容).当然,数据恢复的万王之王Recovery是我的最佳选择,我用的是RecoverNt版。Recovery使用相当简单,所要注意的是用Recovery读出的文件不能恢复到同一个硬盘上,必须恢复到其他硬盘上。但不幸的是,当我用RecoverNt来读取D分区时,由于MFT损坏,万王之王也无法读出一个文件,反复试了几次还是不行,只好占时作罢。一回到家,就下定决心好好专研一下win2000的NTFS格式,我手上有两本书,一本是MCSE制胜宝典WIN2000 Server,还有一本是Inside Microsoft Windows 2000,Third Edition的中文版Windows 2000内部揭密,正是书到用时方恨少。又到网上四处搜索有关信息,经过两天的专研,经过大胆的设想,详细的分析,做出了一个令我至今还不敢相信的方法。
  
  高潮
  我准备将无法读取的D盘高级格式化(注意是高级格式化而不是低格),然后通过RecoverNt来读取文件。为什么我要这样做,让我慢慢道来。首先我想讲一讲windows的文件系统原理,众所周知windows有FAT12,FAT16,FAT32,NTFS等文件格式,而FAT12,FAT16,FAT32文件格式可看作一类,简称FAT格式,而NTFS文件格式又可看作一类。我简单介绍一下FAT格式的文件系统的数据结构,根据其不同的特点和作用大致可分为
  
  1.引导扇区.
  2.DBR区(DOS BOOT RECORD)即操作系统引导记录区的意思.
  3.FAT表(File Alloction Table)位于DBR之后,一般应有两个,其中一个为另一个的备份,它的重要作用是存储了指向文件所在簇的指针(有关概念我将在讨论NTFS文件格式时介绍).
  4.DIR区(Directory)即文件根目录区。
  5.DATA区,顾名思义这个区是用户存放数据的地方,占磁盘空间的绝大部分,它才是最关键的地方。
  
  现在我们来谈一谈有关NTFS文件格式的基础知识。在NTFS中,所有存储在卷上的数据都包含在文件中,包括用来定位和获取文件的数据结构,引导程序和记录这个卷的(NTFS元数据)的记录的位图,这体现了NTFS的原则:磁盘上的任何事物都为文件。在文件中存储一切使得文件系统很容易定位和维护数据,而在NTFS中,卷中所有存放的数据均在一个叫MFT的文件记录数组中,叫主文件表(Master File Table),MFT是由高级格式化产生的。而MFT则由文件记录(File Record)数组构成。File Record的大小一般是固定的,不管簇的大小是多少,均为1KB,这个概念相当于Linux中的inode。File Record在MFT文件记录数组中物理上是连续的,且从0开始编号。MFT仅供系统本身组织、架构文件系统使用,这在NTFS中称为元数据(Metadata)。以下列出Windows2000的NTFS主文件表的重要的元数据文件
  
  0 $MFT
  1 $MFTMirr
  2 $LogFile
  3 $Volume
  4 $AttrDef
  5 $Directory
  6 $Bitmap
  7 $Boot
  8 $BadClus
  9 $Secure
  10 $UpCase
  11 $Extend
  
  这些NTFS主文件表的重要的元数据文件都以$(美元符号)开始的名字,但符号是被隐藏的,在Windows2000中不能使用dir命令(甚至加上/a参数)像普通文件一样列出这些元数据文件。实际上File System Driver(ntfs.sys)维护了一个系统变量NtfsProtectSystemFiles用于隐藏这些元数据。但是微软公司提供了一个OEM TOOL,叫NFI.EXE,用此工具可以转储NTFS主文件表的重要的元数据文件(元数据:是存储在卷上支持文件系统格式管理的数据。它不能被应用程序来访问,它只能为系统提供服务),以下是我给出的一个例子:
  
  C:>nfi d:
  
  File 0
  Master File Table ($Mft)
  $STANDARD_INFORMATION (resident)
  $FILE_NAME (resident)
  $DATA (nonresident) logical sectors 32-21151 (0x20-0x529f)
  $BITMAP (nonresident) logical sectors 16-19 (0x10-0x13)
  
  File 1
  Master File Table Mirror ($MftMirr)
  $STANDARD_INFORMATION (resident)
  $FILE_NAME (resident)
  $DATA (nonresident)
  logical sector
  
  
工具箱  
【 · 发布:千篇一律  2006-10-28 11:09 】  
  用Debug修复硬盘
  
  作者:佚名 文章来源:网络 更新时间:2006-09-07
  
  如果您的电脑出现以下情况:
  
  1.病毒破坏分区表,修复无效;
  
  2.安装多操作系统导致分区表异常,造成系统崩溃;
  
  3.恶意软件锁死硬盘;
  
  4.使用PQ Magic等第三方分区软件造成的硬盘异常。
  
  您可以使用Debug命令来清除硬盘信息,然后重建分区以重新安装操作系统。
  
  警告:执行该操作后所有硬盘数据会永久性丢失,请谨慎选择执行该操作!本文档仅供参考,DELL公司将不对原有数据承担任何责任。
  
  准备工作
  
  1.准备一张可启动的软盘,例如Windows 98启动软盘。关于Windows 98启动软盘的制作方法,
  
  2.拷贝系统目录中command文件夹(例如c:\windows\command)下的debug.exe文件到该软盘。
  
  3.配置您的计算机BIOS,使其能从光驱启动。
  
  操作步骤
  
  1.使用软盘引导到DOS模式下,在系统提示符A:\> 后键入命令“Debug并按“Enter”键确认。此时系统将出现短横线提示符,然后仔细键入以下命令行(字母没有大小写分别), 以第一行为例:依次输入 字母F,空格,字母L,数字100,空格,数字0,Enter。
  
  2.命令行全文如下:
  
  A:\> debug “Enter
  
  -F 200 L100 0 “Enter”
  
  -A CS:100 “Enter”
  xxxx:0100 MOV AX,301 “Enter”
  
  注:xxxx:0100 为系统提示,不需要输入
  
  xxxx:0103 MOV BX,200 “Enter”
  
  xxxx:0106 MOV CX,1 “Enter”
  
  xxxx:0109 MOV DX,80 “Enter”
  
  注:如需要清除机器内第二硬盘的数据,只需将80改为81即可
  
  xxxx:010C INT 13 “Enter”
  
  xxxx:010E INT 20 “Enter”
  
  xxxx:0110 “Enter”
  
  -G “Enter”
  
  3.程序执行成功后,系统将提示“Program terminated normally”,表明此时硬盘数据已经完全清除。
  
  4.重新启动电脑并安装操作系统。
  
  
工具箱  
【 · 发布:千篇一律  2006-10-29 01:21 】  
  巧用Diskgen“重建分区表”
  2004-02-11 19:12 来源:eNet论坛 [收藏到E起摘]
  
  【简 介】
  【编者按】  在使用Diskgen时,发现可以利用其强大的“重建分区表”命令修补Ghost 6.0的Bug!
  
  加入收藏  设为首页
  
  N72现在售价3500 DELL双核笔记本6599
  IBM促销送好礼 800万DC不到1500
  
  --------------------------------------------------------------------------------
  
  单位几个月前购买了几台计算机,由于硬件配置完全一样,故打算安装好其中一台后采用Ghost进行盘对盘的克隆。
  
  出于使用上的方便,第一台计算机分了C、D、E、F四个区,安装完操作系统(Windows 2000,C盘为NTFS格式)及常用软件后,对C盘做了Ghost备份,备份文件及Ghost程序文件存放在F盘。然后逐一拆下其他计算机的硬盘用Ghost进行克隆。最近,某一计算机出现故障时发现了一个奇怪的问题:
  
  用Windows 98启动盘引导系统后,只能认识C盘,即Windows 2000下的D盘(因原C盘为NTFS格式,DOS下不能识别),D、E分区均不能进入。经多台计算机验证,证实其为Ghost 6.0的一个Bug。但时间已过了几个月,重新恢复系统肯定要破坏已在硬盘上的数据。
  
  一次偶然的机会,我在使用Diskgen时,发现可以利用其强大的“重建分区表”命令修补这个Bug!其过程为:1. 在DOS实模式下运行Diskgen,按Alt和T键激活“工具”菜单,选择“重建分区表”。2. 当出现“自动方式”和“交互方式”时,选择“交互方式”。3. 找到的第一个分区必须选择保留,当出现“找到一个扩展分区表”时,选择“跳过”。4. 以后找到的分区都选择“保留”。
  
  按F8保存后,退出Diskgen并重新启动,你会发现除了C分区因为是NTFS格式而无法用常规方法访问外,D、E、F分区在DOS下都恢复正常了!
  
  如果第一次不是恢复的最近的硬盘分区状况,再重新做一遍或几遍,问题估计可以解决!
  
工具箱  
【 · 发布:千篇一律  2006-10-29 07:03 】  
  WinXP启动出现NTLDR is missing错误提示
  
  作者: 发布时间:2005-5-13 11:50:43 | 【字体:大 中 小】
  [-]
  软件技巧,硬件维护,家电保养,上西部e站 ( weste.cn )!
  
  出现这种情况一般有以下两种情况:
  
  1、ntldr文件丢失/破坏:这个文件位于C盘根目录,我们只需要从WinXP安装光盘里面提取这个文件,然后放到C盘根目录上即可。
  
  2、如果替换文件后仍出现上述提示,则可以按以下方法进行修复:
  
  使用一张含有SYS.COM的Win9X启动盘启动电脑,执行SYS C:命令,然后重新启动,会发现无法启动WinXP,这不要紧,这是正常的现象。然后再次重新启动,使用WinXP安装光盘启动,进入故障恢复控制台,执行fixboot即可。如果你不会使用故障恢复控制台,又安装了XP/9x双系统,你可以:在Win9X里面执行WinXP安装,系统拷贝完文件以后会重新启动,启动的是后手已经要快速按下方向键的上或下箭头,然后选择Windows回到Win9X下,接着编辑Boot.ini文件,确认你的Boot.ini文件和你电脑上WinXP的启动相匹配,最后删除C盘根目录上以$开头的全部文件即可。
  
  顺便说一下,如果XP/9x双系统中的9x系统启动失败并提示I/O错误,可能是错误删除C盘根目录上的一个启动Win9x的重要文件bootsect.dos造成的,修复方法同上述2)所示。
  
  
工具箱  
【 · 发布:千篇一律  2006-10-29 07:04 】  
  解决Win2000"NTLDR is missing"的故障 出处:中国电脑教育报
  
  [ 2004-12-03 10:01:34 ] 作者:林洪英 责任编辑:zhanghuafeng
  
  ·想拿A75相机,现在就进来答题 ·全球独家首测RV410
  ·论坛网友召集A95团购 ·视窗专区常见问题汇总
  ·一周摄影作品汇总投票 ·论坛篮球赛,火热报名进行中
  ·想拿A75相机,现在就进来答题 ·全球独家首测RV410
  ·论坛网友召集A95团购 ·视窗专区常见问题汇总
  ·一周摄影作品汇总投票 ·论坛篮球赛,火热报名进行中
  ·想拿A75相机,现在就进来答题 ·全球独家首测RV410
  ·论坛网友召集A95团购 ·视窗专区常见问题汇总
  ·一周摄影作品汇总投票 ·论坛篮球赛,火热报名进行中
  
  上课了,笔者打开机房的学生用服务器,结果不能正常启动,给出了这样的提示“NTLDR is missing,Press any key to restart”。这下可坏了,这台服务器是域服务器,学生机的设置是登录到域,并且学生机硬盘都加了保护,学生的作业和资料全部保存在这台服务器上。重新安装系统肯定是来不及了,并且会造成数据的丢失,笔者赶紧上网查找故障的原因,得知很可能是Ntldt、Ntdetect.com、Boot.ini几个文件丢失或破坏引起的。于是赶紧跑到另一个机房服务器处(两台服务器的设置一样),搜索“NTLDR”,结果三个文件全在C盘的根目录下,马上将这三个文件拷到故障服务器的C盘根目录下,重新启动电脑,故障依旧。情急之中,笔者忽然想到用“故障恢复控制台”来修复故障,结果真解了燃眉之急。具体操作如下:
  
  [-]  1. 用Windows 2000的安装盘启动电脑,进入Windows 2000 Server的安装界面;
  
  2. 界面提示“要修复Windows 2000中文版的安装,请按R”,按R键继续;
  
  3. 界面提示“要用故障恢复控制台修复Windows 2000安装”选项,按C键继续;
  
  4. 屏幕出现故障恢复控制台提示“C:\Winnt,要登录到哪个Windows 2000安装(要取消,请按Enter)?”,在此键入“1”,然后按Enter键;
  
  5. 键入管理员密码,然后按Enter键;
  
  6. 键入Copy F:\Simpchin\
  
  Windows2000\Server\I386\Ntldr c:\,按ENTER键(注:笔者使用的光盘是Windows 2000三合一光盘,如果是其他的安装盘,可以使用搜索命令查找一下ntldr文件的位置,一般在i386目录下。“f:”为我的光盘驱动器号);
  
  7. 键入Copy F:\Simpchin\
  
  Windows2000\Server\I386\Ntldr c:\,按 Enter 键,系统提示您是否覆盖文件,键入Y,然后按Enter键。
  
  重新启动计算机,当上课铃响起的时候,服务器已启动正常。
  
工具箱  
【 · 发布:千篇一律  2006-10-29 07:05 】  
  常见WinXP启动故障及解决方法
  
  2003-06-22 来源: 责编: 作者: 网友
  
  编者按:
  
  1、NTLDR is missing当你从Win9X升级到Windows XP的时候
  1)、Clone以后的问题:当你想把使用Clone制作的Win9x升级到Windows XP,那么很容易出现一句提示:NTLDR is missing。
  
  当然,要出现这种情况必须满足下列要求:
  
  a)、系统/启动分区是FAT32文件系统。
  
  b)、计算机的启动使用了INT-13中断扩展启动。一般现在的主流电脑都是使用了这种方式。
  
  c)、因为在Clone的时候,刻录后的系统的存放于FAT32 BIOS Parameter Block(BPD)的值和物理驱动器的几何分布不匹配。
  
  但是为什么可以启动Win9X呢?原因是这样的:Win9x启动的时候忽略了BPD的值,即使这个值是非法的。但是在Win200/XP里面需要这个值,如果这个值是非法的,那么启动将失败。
  
  解决:重写FAT32 BPB里面正确的值 ,然后使用Windows XP里面Fixboot命令重写Windows XP启动代码即可。具体的操作如下:使用一张含有SYS.COM的Win9X启动盘启动电脑,执行SYS C:命令,然后重新启动,会发现无法启动Windows XP,这不要紧,这是正常的现象。然后再次重新启动,使用Windows XP安装光盘启动,进入故障恢复控制台,执行fixboot即可。如果你不会使用故障恢复控制台,那么还有一个方法:在Win9X里面执行Windows XP安装,系统拷贝完文件以后会重新启动,启动的是后手已经要快速按下方向键的上或下箭头,然后选择Windows回到Win9X下,接着编辑Boot.ini文件,确认你的Boot.ini文件和你电脑上Windows XP的启动相匹配,最后删除C盘根目录上以$开头的全部文件即可。
  
  2)、文件丢失/破坏:这个文件位于C盘根目录,我们只需要从Windows XP安装光盘里面提取这个文件,然后放到C盘根目录上即可。
  
  2、I/O错误,Win9X启动失败
  
  这个问题一般是由于错误删除C盘根目录上的一个启动Win9x的重要文件bootsect.dos造成的。这个文件储存了启动Win9x的必须代码,而且这个文件的创建是在安装Windows XP的时候自动创建的,Windows XP里面并没有相应的命令可以直接解决这个问题。但是我们可以采用另外一种方法解决。
  
  解决:使用一张含有SYS.COM的Win9X启动盘启动电脑,执行SYS C:命令,然后重新启动,会发现无法启动Windows XP,这不要紧,这是正常的现象。然后再次重新启动,使用Windows XP安装光盘启动,进入故障恢复控制台,执行fixboot即可。如果你不会使用故障恢复控制台,那么还有一个方法:在Win9X里面执行Windows XP安装,系统拷贝完文件以后会重新启动,启动的是后手已经要快速按下方向键的上或下箭头,然后选择Windows回到Win9X下,接着编辑Boot.ini文件,确认你的Boot.ini文件和你电脑上Windows XP的启动相匹配,最后删除C盘根目录上以$开头的全部文件即可。
  
  3、Boot.ini文件非法
  
  这个问题一般是由于boot.ini文件丢失或格式不正确造成的。boot.ini文件的格式一般是下面这种类型的:
  
  [boot loader]
  
  timeout=30
  
  default=multi(0)disk(0)rdisk(0)partition(1)\Windows
  
  [operating systems]
  
  multi(0)disk(0)rdisk(0)partition(1)\Windows="Microsoft Windows XP Professional" /fastdetect
  
  4、找不到HAL.DLL文件,启动中止
  
  这个是由于C盘根目录下的boot.ini文件非法,导致默认从C:\Windows启动,但是又由于你的Windows XP没有安装在C盘,所以系统提示找不到HAL.DLL文件。启动因而失败。解决方法是重新编辑Boot.ini文件。我们有很多方法编辑这个文件,下面我挑选几种便于操作的介绍给大家:
  
  1)、使用Win9X启动盘启动,使用EDIT.EXE命令编辑这个文件。启动EDIT.EXE以后只要按照正确的格式输入Boot.ini文件的内容,保存为Boot.ini文件即可。
  
  2)、使用COPY CON命令创建一个Boot.ini文件。在DOS下输入Copy Con C:\boot.ini以后回车。然后按照Boot.ini文件的格式输入,每输入一行敲一次回车键,当全部内容输入完毕以后,按CTRL+Z,屏幕上会看到^Z的提示。这个时候再敲一次回车,系统会提示1 file(s) copied.这就表示创建成功了。
  
  3)、使用故障恢复控制台里面的bootcfg命令。具体的使用方法请大家查看Q330184一文。我在这里就不介绍了。
  
  4)、在别的电脑上创建好以后,拷贝到受损电脑的C盘根目录上覆盖源文件即可。
  
  5、安装的简体中文版的Windows XP在启动选单的时候不是英文提示
  
  一般是由于C:\bootfont.bin丢失造成的,但是如果你安装了更高版本的英文版本的Windows,那么这个现象就是很正常的。如果没有的话,从Windows XP安装光盘里面提取bootfont.bin到C盘根目录即可。
  
  6、安装 Windows 2000 后无法启动 Windows XP
  
  症状:安装 Windows 2000 后试图启动 Windows XP 时,您可能会收到下面的错误消息:
  
  "Starting Windows...
  
  Windows 2000 could not start because the following file is missing or corrupt: \WINDOWS\SYSTEM32\CONFIG\SYSTEMd startup options for Windows 2000, press F8.
  
  You can attempt to repair this file by starting Windows 2000 Setup using the original Setup floppy disk or CD-ROM.
  
  Select ’r’ at the first screen to start repair."
  
  原因:出现此问题的原因是,在 Windows 2000 发行时 Windows XP 尚不存在。Windows 2000引导程序不知道已在 Windows XP 中做了改动。计算机需要知道这些改动才能加载 Windows XP。
  
  解决:若要解决此问题,请用 Windows 2000 启动计算机,然后将 Windows XP 光盘上 I386 文件夹中的 NTLDR 和 Ntdetect.com 文件复制到系统驱动器的根目录中。
  
  
工具箱  
【 · 发布:千篇一律  2006-10-29 07:07 】  
  今天公司一个同事的电脑,开机就报:“NTLDR Is Missing”。
  
  原因
  如果 MFT 根文件夹碎片较多,则可能会出现此问题。如果 MFT 根文件夹包含多个文件,则 MFT 就会变得非常零碎,以至于需要另外创建一个分配索引。因为文件是按字母顺序映射到分配索引中的,NTLDR 文件可能会被推到第二个分配索引中。如果发生此现象,就会看到本文“症状”部分中描述的错误信息。
  
  一般情况下不将文件写入根文件夹。如果一个程序定期在根文件夹中创建和删除临时文件,或者将许多文件误复制到根文件夹,就会造成这一情况。
  
工具箱  
【 · 发布:千篇一律  2006-10-29 07:12 】  
  WindowsXP 系统“NTLDR is missing”问题的修复。
  
  今天一个同事的笔记本开机,没有反应,屏幕显示“NTLDR is missing”,他的系统是Windows XP,磁盘分区NTFS。
  
  前一阵子另一个同事的Windows XP系统(磁盘分区NTFS)也出现过这样的问题。当时从网上找的资料时复制Windows XP光盘上的NTLDR(在光盘i386目录下面)到C:\下。但是复制之后,重新开机,笔记本一直在重新启动(引导还没有通过)。最后没有办法,重新安装操作系统。
  
  这次想到要重装系统,头很大,要重装系统,之前安装过的大部分应用程序要重新安装。关键是“我的文档”中有很多重要的文件,用Windows XP安装光盘启动到系统修复模式。试图进入“c:\documents and settings”目录,系统提示拒绝访问。想起上次同事重装Windows XP以后,试图进入之前的“documents and settings”特定用户目录下面的时候,操作系统提示没有权限访问。
  
  重要文档不能复制出来,只能在想办法修复操作系统了。于是利用Windows XP的安装光盘,启动笔记本,进入Windows修复状态,察看C:\目录发现没有文件NTLDR,复制Windows XP安装光盘上的i386目录下面的文件NTLDR到C:\,重新启动笔记本,发现笔记本无法引导,一直在重新启动,发现Windows XP报的错误信息好像少什么文件(这个错误信息只显示零点几秒)。再次利用windows XP安装光盘启动笔记本,进入修复状态,利用dir命令查看C:\目录下的文件,发现没有文件NTDETECT.COM,将光盘i386目录下面的文件NTDETECT.COM复制到c:\目录下面。重新启动机器,发现笔记本可以通过引导,但是很快提示一个错误,说< windows root>/system32/hal.dll丢失或无效。
  
  再次利用Windows XP光盘启动机器,进入Windows XP光盘i386目录下面查找,只能找到hal.dl_文件,发现c:\windows\system32目录下面存在文件hal.dll认为它损坏,保险起见将hal.dll更名文hal.old,复制光盘hal.dl_到system32下面为hal.dll。重新启动笔记本,发现还是那样的错误。
  
  说明不是文件hal.dll的错误,再次利用Windows XP光盘启动机器,用dir命令查看c:\目录下面,发现没有boot.ini、IO.sys、msdos.sys、CONFIG.SYS、bootfont.bin(说明windows Nt引导方式和MSDOS不一样,不需要IO.sys、msdos.sys、CONFIG.SYS,windows XP下面这三个文件大小均为0),笔记本没有软驱,只有USB口,还好我们这里有个U盘,到其他Windows XP机器上,找到boot.ini、IO.sys、msdos.sys、CONFIG.SYS、bootfont.bin这些文件,复制到U盘上(因为WIndows XP均是默认安转在c:\windows目录下面的,如果不是需要修改boot.ini文件)。将U盘插入机器USB口,重新用Windwos XP光盘启动笔记本进入修复模式,发现U盘可以访问,于是复制文件到c:\目录下面,重新启动机器。OK,Windos XP启动界面出现了,但是系统很快就蓝屏了(错误信息没有记),突然想起,之前把c:\windows\system32\下面的文件hal.dll替换过,重新用光盘启动windows XP,将c:\windows\system32\hal.dll删除,将hal.old更名为hal.dll,重新启动笔记本。OK,系统正常。
  
  补充说明,在之前dos模式下运行过 fixmbr,fixboot c:命令,应该没有什么关系,这两个命令只有在修复状态下的dos模式下有,而且windows XP最变态的是dir 命令不支持参数,没有办法遍历查找目录,很不爽。
  
  总结:Windows XP出现“NTLDR is missing”错误,少的文件是 c:\NTLDR、c:\NTDETECT.COM、c:\Boot.ini、IO.sys、msdos.sys、CONFIG.SYS、bootfont.bin文件。修复方式,到好的Windows XP机器上复制这些文件到U盘(软盘),然后启动到Windows XP修复模式,将文件复制到c:\目录下面。唯一要注意的是boot.ini文件的内容,记录了系统引导的硬盘以及分区。
  
  写完了,希望共同交流(QQ:2269101 zhaohonghui@hotmail.com)
  
工具箱  
【 · 发布:千篇一律  2006-10-29 07:13 】  
  NTLDR is missing故障的修复
  作者: 转载
  2006-05-11
  iu平时,我们偶尔会遇到系统启动时显示“NTLDR is missing”而无法进入系统的情况。其实导致该故障的原因多,但网上绝大部分文章都只针对一种情况进行讨论。下面笔者将各种情况和原因进行汇总,希望对大家有所帮助。
  一、NTLDR损坏或丢失
  这种情况解决起来比较简单,而且比较常见,所以也是我们遇到该故障时首先采取的一种方法,即在Recovery Console或其他系统下,把系统的安装光盘中i386目录下的NTLDR文件复制到系统分区(通常为C盘)中即可。
  
  二、NTLDR没有损坏或丢失
  如果把光盘中的NTLDR文件复制到C盘后重新启动,问题依然没有解决,这时我们可以认识到,导致该故障的不是NTLDR损坏或丢失,而是系统视而不见。为什么会这样呢?一般说来,导致该现象的原因有以下几点:
  
  1、采用非系统磁盘来启动电脑。如果用一些非系统磁盘引导启动电脑,比如软盘、光盘、USB移动存储设备等,就可能会出现此问题。解决的方法是取出这些设备,然后重新启动电脑即可。
  
  2、BIOS中硬盘中的信息被更改,检测方式被设置为手动。
  由于硬盘信息被篡改,导致系统找不到硬盘中的系统分区,所以就找不到系统分区中的启动文件NTLDR了。只要在BIOS的“Standard CMOS Setup”中,把硬盘检测方式设置为“Auto(自动)”即可。
  
  3、系统分区没有被激活。如果用于存放启动文件(包括BOOT.INI、NTLDR、NTDETECT.COM)的系统分区没有被激活而是激活了其他主分区,那么就会导致系统启动时找不到NTLDR文件。解决的方法时用Windows 98启动盘启动电脑,然后运行Fdisk,选择“Set active partition”来激活系统分区。如果仍无法解决,就需要在Recovery Console下运行FIXBOOT命令来使活动分区成为可启动的分区。
  
  4、硬盘中的主引导记录(MBR)被破坏,导致系统找不到系统分区。解决的方法是在Recovery Console下运行fixmbr命令,或者是用Windows 98启动盘启动电脑,然后运行FDISK /MBR。
  
  5、系统分区的MFT根文件夹碎片较多。主文件表(MFT)是一个卷上每一个文件的索引,如果 MFT 根文件夹包含多个文件,则MFT就会变得非常零碎,以至于需要另外创建一个分配索引。因为文件是按字母顺序映射到分配索引中的,NTLDR 文件可能会被推到第二个分配索引中。一般情况下不建议用户将文件直接写入根文件夹,尤其是大量文件。如果有某个程序定期在系统分区的根文件夹中创建和删除临时文件,或者将许多文件误复制到根文件夹,就会造成这一情况。但是,请神容易送神难,如果我们此时去删除那些临时文件或是复制到根文件夹的文件,主文件表(MFT)分配索引并不会降到原来的大小,所以故障依然存在。
  这时候我们需要使用微软提供的一个叫bcupdate2的工具(下载地址:
  http://www./index.php?option=com_docman&task=doc_details&gid=46&Itemid=98)来强制更新启动代码(Boot Code)。使用方法是在其他硬盘的系统上,运行 bcupdate2 x: /f (x:代表需要修复的硬盘的系统分区),然后按“Y”确认更新启动代码即可。
  
  6、安装了EZ-BIOS。EZ-BIOS是西部数据公司提供的一个可以通过重写分区列表来允许用户创建比 Windows 95 或 Windows 98 支持的分区更大的工具。如果安装了EZ-BIOS,那么在使用Windows 95或Windows 98升级到Windows 2000 或 Windows NT 4.0期间就会出现该故障。解决的方法是卸载EZ-BIOS。
  
  7、BIOS过时。如果主板上的BIOS程序过时,可能会导致该故障,解决的方法是升级BIOS程序。
  
  8、FAT32 BIOS Parameter Block (BPB) 中存在无效头(边)值。如果把一个硬盘上的系统(包括Windows 95、Windows 98 或 Windows Me)做了镜像后克隆到其他不同大小的硬盘上,然后使用这个克隆系统升级到Windows 2000或Windows XP时,就会出现在复制文件后重新启动提示“NTLDR is missing”。因为Windows 95、Windows 98 或者 Windows Me 启动代码忽略 BPB 中的头值,并且即使在值无效时仍启动程序。但是,Windows 2000 和 Windows XP 中的启动代码需要这个值,如果此值无效则启动过程不会成功。这种情况解决方法比较复杂:
  
  step1:使用包含 Sys.com的 Windows 95、Windows 98 或者 Windows Me 启动盘来重新启动电脑。
  
  step2:运行以下命令,在系统分区的根目录下备份msdos.sys文件:
  attrib -h -r -s c:\msdos.sys
  rename msdos.sys *.ysy
  
  step3:在命令提示符中,输入 sys c:。此命令用正确的 BPB 信息重写 Windows 95、Windows 98 或者 Windows Me 启动代码。
  step4:在Recovery Console下运行fixboot命令重写Windows 2000或Windows XP的启动代码。
  
  按照以上操作后,一般可以使原来的安装程序继续进行。
  
  
工具箱  
【 · 发布:千篇一律  2006-10-29 13:14 】  
  用diskgen恢复分区表后,能看到各分区,在DOS下能看到各分区的数据,可以把C:快格,然后把XP系统的克隆盘,重新安装在c:上,完成后其他分区的数据都没有丢失。谢谢!
工具箱  
【 · 原创:lsl156  2006-10-29 15:40 】  
  修理硬盘的就是这一套吧。
工具箱  
【 · 发布:千篇一律  2006-10-30 07:58 】  
  Disk error 是潮湿导致的硬盘故障吗?
  News.weixiuwang.com 文章来源:hc360慧聪网IT 作者: 2006年7月20日22:56
  
  故障现象:邻居几个月前出差,回来后电脑无法启动,显示器黑屏。
  分析解决:电脑放置很长时间没有启动过,很可能导致硬件接触不良。根据开机的BIOS响铃判断,应该是内存故障所致。打开机箱取出内存,果不其然,内存的金手指处有明显的黑色污垢,用橡皮擦擦干净后将其重新装回。随后,电脑能正常启动并顺利进入系统,刚刚运行了几个程序,电脑又突然死机。
  
  没办法,只好重启。屏幕提示“Disk error”硬盘出错,系统启动失败。难道硬盘也有问题了?笔者马上进入BIOS查看并检测硬盘,结果能正常检测到硬盘的参数,但硬盘无法正常使用。依次排除了硬盘数据线、电源线和主板接口的隐患后,把硬盘取下,仔细观察发现硬盘周围似有水气的痕迹。联想到机器很长时间没有加电了,加之最近阴雨连绵,可能是硬盘受潮所致。于是取来电吹风,小心为其均匀加热除湿(千万不能使硬盘局部过热,否则易损坏硬盘电路板上的元件)并静置一段时间后装回。可是,硬盘仍然无法正常引导启动,只得从光驱启动尝试用Scandisk修复硬盘的逻辑错误,结果无法完成。又尝试用Fdisk为其重新分区格式化,Fdisk无法正常运行。由此,判断是硬盘的分区表出错。我尝试使用硬盘修复大师Diskgen(原名Diskman),把它拷入启动软盘,在DOS下完成对硬盘分区表的恢复,并顺利重新分区格式化。至此,电脑完全恢复正常。
  
  编后:灰尘和过高的温度是电脑各个部件的大敌,但因潮湿引起的故障也不容忽视,尤其是夏季来临,空气中湿度变大很容易侵蚀电脑各元件,易成为各种隐患的元凶。因此提醒大家:如果电脑较长一段时间不用,请定期加电开机去潮,防止类似故障的发生。
  
  小知识1:DiskMan(http://www./soft/53/53403.html)是一款小巧的硬盘分区表维护工具,大小只有144KB,可是功能却非常强大。它可以手工修改硬盘分区表中包括逻辑分区在内的所有数据,能重建被破坏的分区表,可以按使用者的意愿分区,从而使一个硬盘中多个操作系统共存。它的独特之处在于,采用全中文图形界面,无须外挂任何汉字系统,以非常直观的图表揭示了分区表的详细结构。
  
  小知识2:判断系统真死机还是假死机的一个小窍门:按下键盘上的NumLock键,如果它的指示灯有反应即为假死机,否则就是真正死机了。
  
  
工具箱  
【 · 原创:阿里爸爸  2006-10-30 08:17 】  
  其实就修的角度,那些更新旧硬盘的二手店老板伙计也就文盲半文盲状态,能鼓捣出那么多旧机器,其实象机器这样的东西实在坏了,特别电脑,更新换代最好~太专业没必要~超出22的年龄再去鼓捣这些没太多意义,会重装系统就行~
工具箱  
【 · 发布:千篇一律  2006-10-30 11:33 】  
  文盲半文盲的修理,和专业的修理,不可同日而语
  
工具箱  
【 · 发布:千篇一律  2006-10-30 11:34 】  
  debug
  有些难,没学会,学会后,那才寂寞
工具箱  
【 · 原创:千篇一律  2006-10-30 11:36 】  
  齐白石六十岁才学画
工具箱  
【 · 发布:千篇一律  2006-11-03 21:55 】  
  硬盘术语详解 > SATA接口
  
  SATA接口
  
  SATA是Serial ATA的缩写,即串行ATA。这是一种完全不同于并行ATA的新型硬盘接口类型,由于采用串行方式传输数据而得名。SATA总线使用嵌入式时钟信号,具备了更强的纠错能力,与以往相比其最大的区别在于能对传输指令(不仅仅是数据)进行检查,如果发现错误会自动矫正,这在很大程度上提高了数据传输的可靠性。串行接口还具有结构简单、支持热插拔的优点。
  
  与并行ATA相比,SATA具有比较大的优势。首先,Serial ATA以连续串行的方式传送数据,可以在较少的位宽下使用较高的工作频率来提高数据传输的带宽。Serial ATA一次只会传送1位数据,这样能减少SATA接口的针脚数目,使连接电缆数目变少,效率也会更高。实际上,Serial ATA 仅用四支针脚就能完成所有的工作,分别用于连接电缆、连接地线、发送数据和接收数据,同时这样的架构还能降低系统能耗和减小系统复杂性。其次,Serial ATA的起点更高、发展潜力更大,Serial ATA 1.0定义的数据传输率可达150MB/sec,这比目前最块的并行ATA(即ATA/133)所能达到133MB/sec的最高数据传输率还高,而目前SATA II的数据传输率则已经高达300MB/sec。
  
  Serial ATA规范不仅立足于未来,而且还保留了多种向后兼容方式,在使用上不存在兼容性的问题。在硬件方面,Serial ATA标准中允许使用转换器提供同并行ATA设备的兼容性,转换器能把来自主板的并行ATA信号转换成Serial ATA硬盘能够使用的串行信号,目前已经有多种此类转接卡/转接头上市,这在某种程度上保护了我们的原有投资,减小了升级成本;在软件方面,Serial ATA和并行ATA保持了软件兼容性,这意味着厂商丝毫也不必为使用Serial ATA而重写任何驱动程序和操作系统代码。
  
  另外,Serial ATA接线较传统的并行ATA(Paralle ATA)接线要简单得多,而且容易收放,对机箱内的气流及散热有明显改善。而且,SATA硬盘与始终被困在机箱之内的并行ATA不同,扩充性很强,即可以外置,外置式的机柜(JBOD)不单可提供更好的散热及插拔功能,而且更可以多重连接来防止单点故障;由于SATA和光纤通道的设计如出一辙,所以传输速度可用不同的通道来做保证,这在服务器和网络存储上具有重要意义。
  
  而SATA II是在SATA的基础上发展起来的,其主要特征是外部传输率从SATA的1.5Gbps(150MB/sec)进一步提高到了3Gbps(300MB/sec),此外还包括NCQ(Native Command Queuing,原生命令队列)、端口多路器(Port Multiplier)、交错启动(Staggered Spin-up)等一系列的技术特征。单纯的外部传输率达到3Gbps并不是真正的SATA II。
  
  SATA II的关键技术就是3Gbps的外部传输率和NCQ技术。NCQ技术可以对硬盘的指令执行顺序进行优化,避免像传统硬盘那样机械地按照接收指令的先后顺序移动磁头读写硬盘的不同位置,与此相反,它会在接收命令后对其进行排序,排序后的磁头将以高效率的顺序进行寻址,从而避免磁头反复移动带来的损耗,延长硬盘寿命。另外并非所有的SATA硬盘都可以使用NCQ技术,除了硬盘本身要支持 NCQ之外,也要求主板芯片组的SATA控制器支持NCQ。此外,NCQ技术不支持FAT文件系统,只支持NTFS文件系统。
  
  由于SATA设备市场比较混乱,不少SATA设备提供商在市场宣传中滥用“SATA II”的现象愈演愈烈,例如某些号称“SATA II”的硬盘却仅支持3Gbps而不支持NCQ,而某些只具有1.5Gbps的硬盘却又支持NCQ,所以,由希捷(Seagate)所主导的SATA-IO(Serial ATA International Organization,SATA国际组织,原SATA工作组)又宣布了SATA 2.5规范,收录了原先SATA II所具有的大部分功能——从3Gbps和NCQ到交错启动(Staggered Spin-up)、热插拔(Hot Plug)、端口多路器(Port Multiplier)以及比较新的eSATA(External SATA,外置式SATA接口)等等。
  
  值得注意的是,部分采用较早的仅支持1.5Gbps的南桥芯片(例如VIA VT8237和NVIDIA nForce2 MCP-R/MCP-Gb)的主板在使用SATA II硬盘时,可能会出现找不到硬盘或蓝屏的情况。不过大部分硬盘厂商都在硬盘上设置了一个速度选择跳线,以便强制选择1.5Gbps或3Gbps的工作模式(少数硬盘厂商则是通过相应的工具软件来设置),只要把硬盘强制设置为1.5Gbps,SATA II硬盘照样可以在老主板上正常使用。
  
  SATA硬盘在设置RAID模式时,一般都需要安装主板芯片组厂商所提供的驱动,但也有少数较老的SATA RAID控制器在打了最新补丁的某些集成了SATA RAID驱动的版本的Windows XP系统里不需要加载驱动就可以组建RAID。
  
  SATA相较并行ATA可谓优点多多,将成为并行ATA的廉价替代方案。并且从并行ATA完全过渡到SATA也是大势所趋,应该只是时间问题。相关厂商也在大力推广SATA接口,例如Intel的ICH6系列南桥芯片相较于ICH5系列南桥芯片,所支持的SATA接口从2个增加到了4个,而并行ATA接口则从2个减少到了1个;而ICH7系列南桥则进一步支持了4个SATA II接口;下一代的ICH8系列南桥则将支持6个SATA II接口并将完全抛弃并行ATA接口;其它主板芯片组厂商也已经开始支持SATA II接口;目前SATA II接口的硬盘也逐渐成为了主流;其它采用SATA接口的设备例如SATA光驱也已经出现。
  
  值得注意的是,无论是SATA还是SATA II,其实对硬盘性能的影响都不大。因为目前硬盘性能的瓶颈集中在由硬盘内部机械机构和硬盘存储技术、磁盘转速所决定的硬盘内部数据传输率上面,就算是目前最顶级的15000转SCSI硬盘其内部数据传输率也不过才80MB/sec左右,更何况普通的7200转桌面级硬盘了。除非硬盘的数据记录技术产生革命性的变化,例如垂直记录技术等等,目前硬盘的内部数据传输率也难以得到飞跃性的提高。说得不好听的话,目前的硬盘采用ATA 100都已经完全够用了,之所以采用更先进的接口技术,是可以获得更高的突发传输率、支持更多的特性、更加方便易用以及更具有发展潜力罢了。
  
  


    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多