使用WinHex调整分区表
一、问题描述
打开分区提示是否要格式化,这是千万不要格式化,出现这种情况一般是分区表出了问题,如下图所示:
二、分析问题
这时我们打开WinHex来分析一下:
这块硬盘的分区情况是3个主分区,前两个分区没问题,打开第3个分区提示MFT错误,如图:
把偏移值(offset)记下来(我使用系统记事本)。
打开有问题的分区(第3个),定为到偏移值0。如下图:
发现0000 -> 01F0数据全部为空白,DBR数据为空白。
于是打开一个正常的分区,如图:
正常的分区开始是:EB 52 90 4E,于是转到有问题的分区(第3分区),搜索:55AA,
转到offset: 00A00
初步判定是DBR前面多了一块00000 -> 09FF 的数据,相差A00,
还记得前面记下的MFT的offset吗?转到19C0E69A00,如图:
MFT以46 49 4C 45打头,如图:
现在可以断定是分区3前多了一块09FF的数据,这时候我们可以修改MBR中的偏移值。
三、解决问题
转到Hard disk 1标签,然后转到offset 0,如图
这时候我们来到了MBR开始地址,用模板来帮助修改。View -> Template Manager (快捷键:Alt + F12),选中Master Boot Record应用,如图:
这时我们可以看到第3分区1E6值,记下它(105097216)
在此sector附近找到DBR的Basic Sector地址,如图,记下此sector(105097221在左下角)。
回到MBR起始sector
利用刚才的模板修改第3分区的1E6和1EA(打开第3分区,在左下角记下end sector,1953519615 – 105097221 = 1848422394)值。
最后一定要保存哦!
五、总结
遇到问题千万不要盲目操作,先分析问题。透过这个问题我们知道了对硬盘分区表的备份是多么重要。有句话叫"硬盘有价,数据无价",大家一定要养成备份重要数据的好习惯!
附:硬盘上的文件是链式存储的。影片损坏MBR的可能性较大。
快速查找MBR、EBR的55AA标识
由于现在每个扇区是512字节,而结束标识55AA在最后,那么在WinHex中, 单击"搜索"-"查找十六进制数值",然后在对话框中输入"55AA",搜索框中选"全部",然后选中"条件",把偏移量设置为"512=510"。
详细分区表原理可参考:http://www.vckbase.com/index.php/wv/260
WinHex简介(转自互动百科):
WinHex是一个专门用来对付各种日常紧急情况的小工具。它可以用来检查和修复各种文件、恢复删除文件、硬盘损坏造成的数据丢失等。同时它还可以让你看到其他程序隐藏起来的文件和数据。总体来说是一款非常不错的 16 进制编辑器。得到 ZDNetSoftwareLibrary 五星级最高评价,拥有强大的系统效用。