当前位置:  技术问答>linux和unix

硬盘逻辑锁问题----之二

    来源: 互联网  发布时间:2014-12-16

    本文导语:  to All:     关于硬盘逻辑锁的问题已经提过一次,得到不少回复,其中 baiyu(baiyu) 朋友提供了hdunlock.com原件,可惜试过之后无法解决问题。而上次回复之中,有些泛泛而谈,故而此次将hdlock.exe得源码附上,请...

to All:

    关于硬盘逻辑锁的问题已经提过一次,得到不少回复,其中 baiyu(baiyu) 朋友提供了hdunlock.com原件,可惜试过之后无法解决问题。而上次回复之中,有些泛泛而谈,故而此次将hdlock.exe得源码附上,请精通汇编和DOS系统的朋友试试身手,分析一下这个程序,以就这个程序个例探讨逻辑锁问题。回复数超过5次即结帖整理。

    附:hdlock.com   

>debug hdlock.cmm
-u 100 12a
126D:0100 B80102        MOV     AX,0201
126D:0103 BB0002        MOV     BX,0200
126D:0106 B90100        MOV     CX,0001
126D:0109 BA8000        MOV     DX,0080
126D:010C CD13          INT     13
126D:010E C706FE030000  MOV     WORD PTR [03FE],0000
126D:0114 B80103        MOV     AX,0301
126D:0117 BB0002        MOV     BX,0200
126D:011A BA8000        MOV     DX,0080
126D:011D B90100        MOV     CX,0001
126D:0120 CD13          INT     13
126D:0122 BA4001        MOV     DX,0140
126D:0125 B409          MOV     AH,09
126D:0127 CD21          INT     21
126D:0129 CD19          INT     19
-d 12b 156
126D:0120                                   00 00 00 00 00              .....
126D:0130  00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00   ................
126D:0140  48 61 72 64 20 64 69 73-6B 20 69 73 20 6C 6F 63   Hard disk is loc
126D:0150  6B 65 64 2E 0D 0A 24                              ked...$

|
修复方法: 

  方法一:手动修复硬盘,就是上面介绍的 

  方法二:在本站下载“DOS3.31完全版”和“KV3000破解版”,按照README把DOS3.31制作成引导软盘,再把KV3000的两个文件复制到软盘中(如果空间不够,可以删除一些外部命令文件),用这个二合一的软盘启动电脑,就可以直接用KV3000的F10"系统测试与灾难修复"功能进行恢复了。 

  方法三:将该硬盘设为None,然后使用DM分区程序可以对其进行重新分区格式化,但数据全部丢失。 

  方法四:修改DOS启动文件(不破坏数据) 
  首先准备一张DOS6.22的系统盘,带上debug、pctools5.0、fdisk等工具。然后在一台正常的机器上,使用你熟悉的二进制编辑工具(debug、pctools5.0,或者windows下的ultraedit都行)修改软盘上的IO.SYS文件(修改前记住改该文件的属性为正常),具体是在这个文件里面搜索第一个“55aa”字符串,找到以后修改为任何其他数值即可。用这张修改过的系统软盘你就可以顺利地带着被锁的硬盘启动了。不过这时由于该硬盘正常的分区表已经被黑客程序给恶意修改了,你无法用FDISK来删除和修改分区,而且仍无法用正常的启动盘启动系统,这时你可以用DEBUG来手工恢复。使用DEBUG手工修复硬盘步骤如下: 
a:>debug 
-a 
-xxxx:100 mov ax,0201 读一个扇区的内容 
-xxxx:103 mov bx,500 设置一个缓存地址 
-xxxx:106 mov cx,0001 设置第一个硬盘的硬盘指针 
-xxxx:109 mov dx,0080 读零磁头 
-xxxx:10c int 13 硬盘中断 
-xxxx:10e int 20 
-xxxx:0110 退出程序返回到指示符 
-g 运行 
-d500 查看运行后500地址的内容 
  这时候会发现地址6be开始的内容是硬盘分区的信息,发现此硬盘的扩展分区指向自1己,这就使DOS或WINDOWS启动时查找硬盘逻辑盘进去死循环,在DEBUG指示符下用E命令修改内存数据 具体如下: 
E6BE 
xx.0 xx.0 xx.0............... 
............................. 
.......................55 AA 
  55 AA表示硬盘有效的标记,不要修改,xx0表示把以前的数据“xx”改成0 
  再用硬盘中断13把修改好的数据写入硬盘就可以了,具体如下: 
A:>debug 
a 100 表示修改100地址的汇编指令 
-xxxx:100 mov ax,0301 写硬盘一个扇区 
-xxxx: 这里直接按回车 
-g 运行 
-q 退出 
  然后运行 FDISK/MBR(重置硬盘引导扇区的引导程序),再重新启动电脑就行了。 

  方法五:感谢网友xhgc提供 
需要在正常机器上作一个启动盘,做法如下: 
xx:>Debug 
-A 0100 
xxxx:0100 xor ax,ax 
push ax 
pop ds 
push ax 
pop es 
mov cx,100 
mov bx,7c00 
xxxx:010c mov word ptr [bx],0 
inc bx 
inc bx 
loop 10c 
mov ax,0301 
mov cx,0001 
mov dx,80 
mov bx,7c00 
int 13 
jmp ffff;0000 
xxxx:0127 
-w 100 0 0 1 
-q 

用它启动问题机,结果是问题机的硬盘主引导扇区全清零,然后自动重启,就可以用别的启动设备重装系统了.

    
 
 

您可能感兴趣的文章:

  • 如果硬盘容量足够大,是不是根本不需要创建逻辑卷?
  • 读硬盘扇区ECC错误后,文件系统的行为逻辑是什么?
  • 关于硬盘逻辑锁的问题,不太急,大家可以慢慢看,回复都给分……
  • Unix系统中关于硬盘空间问题?(我的硬盘空间快满了,我应该怎么做?,我的硬盘只有8、4G)
  • 请教本地硬盘安装问题请教本地硬盘安装问题
  • GRUB的问题,两块硬盘,两个光驱,设置如下,先IDE1从(硬盘A)上安装windows2000,然后在IDE1主(硬盘B)上安装LinuxRedHat9,如果从BIOS中
  • 在装过蓝点liunx后重新分区硬盘后再装windows,硬盘不能启动,只停在lilo 处,请问怎样才能处理这个问题?
  • 安装Red lnuix9.0的问题,两块硬盘,一块分成一个dos分区,三个dos扩展分区,安装win2000,另一块40G硬盘分成一个dos分区,两个dos扩展分
  • 请高手帮一下双硬盘的系统恢复问题!
  • 虚拟机 增加 硬盘的问题
  • linux 下安装第二个硬盘 蔡鸟问题
  • 关于arm linux下硬盘操作的问题
  • 移动硬盘使用问题求解?百分相赠!!
  • 双硬盘分区问题.
  • 有关LINUX与WIN2000系统共同使用硬盘的问题
  • 紧急求助:2块硬盘下的安装问题
  • 分别有两个linux系统的两个硬盘接在一台机器上,由其中一个硬盘启动,有问题,大家来看看
  • 求助:硬盘动态加载问题
  • 两个硬盘的问题
  • 双硬盘安装Fedora Core的问题
  • 关于硬盘的问题?
  • 双硬盘安装freebsd的问题
  • 关于dos6.22的硬盘极限容量问题
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 修改Windows硬盘分区名称
  • 硬盘坏掉,重新做了系统.那以前硬盘上mount过的其他服务器的硬盘怎么找回呢?请个位帮忙.多谢~~~
  • Ubuntu查看硬盘,分区相关命令介绍
  • Redhat装在第二块硬盘的分区上,将硬盘卸下来后,第一块硬盘上的XP却进不了了
  • linux下如何获取各种磁盘的序列号,支持SAS硬盘,SCSI硬盘,SATA硬盘
  • 请教一下,我想在IBM X306m 硬盘是SATA 硬盘,服务器上安装openSUSE 10.3,为什么老是检测不到硬盘啊。。我该怎么办呀??
  • 双硬盘安装Fedora Core的问题 iis7站长之家
  • 两块SAS硬盘做镜像,分区如何划分,第二块硬盘用不用分区
  • 我用一个新硬盘,分好两个区(ext2和swap),再在REDHAT LINUX7.3下把内核文件和所有的文件系统COPY到这个新硬盘上,那么我怎么把这个新硬盘做
  • VMWare虚拟硬盘中怎样访问实际硬盘中的内容?
  • 我在redhatlinux7.3下拷贝linux的文件系统到一新硬盘上,再只接这个新硬盘用linux的启动软盘启动,正常,可登陆进去,但我目的是要这个新硬盘
  • 想将系统装入移动硬盘但是安装过程中找不到移动硬盘
  • 两个硬盘挂在sil 680rain卡上,安装rh7.3时,只认那个40G的硬盘,另一个6G的认不出,请问题怎么装rh到6G硬盘上?
  • 急:把安装了Linux的硬盘完全拷贝到另一张硬盘上
  • 一个硬盘安装完Linux后,把硬盘重新分区安装winxp居然无法启动,显示GRUB
  • Linux安装在大于8.4G的硬盘上,不能从硬盘启动
  • 20G 的硬盘,在Linux中算不算“大硬盘”?
  • 在linux中有/usr分区,现在新增一个硬盘,如何将这个硬盘空间分给/usr
  • !!SATA硬盘安装FC4,找不到硬盘 请高手进来解答
  • 获取硬盘容量以及硬盘可用空间的API?
  • 想为服务器加个新硬盘,需要分交换分区吗,如何加载新硬盘的分区


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3