巧用Linux修复分区逻辑错误 在这篇文章中,我们将探讨如何使用Linux修复分区逻辑错误。作者在克隆XP系统时遇到了问题,克隆进度到99%就不动了,重启机器后硬盘无法启动。作者尝试了多次,症状是:用光驱启动,启动不了XP安装程序,不能进入DOS,也不能进入WinPE。但可以进入效率源修复工具,却检测不到硬盘。作者怀疑是克隆程序造成的分区逻辑错误形成了硬盘逻辑锁。 作者回忆了逻辑炸弹的故事,江民逻辑炸弹是利用DOS的一个现在看起来很傻的特性:启动时必需把所有硬盘分区都搜索一次。硬盘分区表是链状的,如C:的分区表内有链表项指示下一区表的物理位置。但如果因为程序错误或人为造成分区表链形成环状,那么,DOS对分区的搜索将无穷进行下去,造成无法启动的故障。 解决问题的方法有三种:(1)利用热插拔法,在启动时不接入硬盘,启动后才把硬盘接上。(2)用debug编写程序写入软盘0磁道0磁头1扇区,拦截INT13H(硬盘中断),然后用fdisk/mbr修复。(3)因为DISKGEN可以绕过BIOS设置直接识别硬盘,在BIOS设置屏蔽硬盘,启动后再用DISKGEN恢复。但作者在实践中,分別把这三种方法否决了。 作者于是想到使用Linux,利用Linux的硬盘挂载机制来解决问题。作者使用Ubuntu 7.04安装光盘,顺利启动,开始安装。在分区这一步,Linux把作者的硬盘认成没有任何分区,于是作者给Ubuntu分了8GB和1GB的swap。然后,开始安装。在安装进程进行到完成分区后的复制文件这一步时,马上... 从这篇文章中,我们可以学习到以下知识点: 1. 逻辑炸弹的原理和危害:逻辑炸弹是利用DOS的一个现在看起来很傻的特性:启动时必需把所有硬盘分区都搜索一次。硬盘分区表是链状的,如果因为程序错误或人为造成分区表链形成环状,那么,DOS对分区的搜索将无穷进行下去,造成无法启动的故障。 2. 修复分区逻辑错误的方法:解决问题的方法有三种:(1)利用热插拔法;(2)用debug编写程序写入软盘0磁道0磁头1扇区,拦截INT13H(硬盘中断),然后用fdisk/mbr修复;(3)因为DISKGEN可以绕过BIOS设置直接识别硬盘,在BIOS设置屏蔽硬盘,启动后再用DISKGEN恢复。 3. 使用Linux修复分区逻辑错误:作者使用Ubuntu 7.04安装光盘,顺利启动,开始安装。在分区这一步,Linux把作者的硬盘认成没有任何分区,于是作者给Ubuntu分了8GB和1GB的swap。 4.硬盘分区表的结构:硬盘分区表是链状的,如C:的分区表内有链表项指示下一区表的物理位置。 5. 克隆XP系统时可能遇到的问题:克隆进度到99%就不动了,重启机器后硬盘无法启动。
- 粉丝: 902
- 资源: 28万+
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助