U 盘连接电脑后无法打开,拔插一次后可以打开,但目录却变成了乱码 ( 如图 1) , 这是根目录受损 典型故障,往往是由于病毒 破坏或者干扰造成读写错误所致,具体破坏 程度和方式比较复杂, 本例显然是 U 盘感染了一种带有自动运行功能 病毒, 乱码 文件夹无法打开, U 盘里 一些重要数据丢失, 由于重要数据装在文件夹里面,所以可以用 WirHex 手工重建根目录文件夹 方法来找回丢失 重要数据 ( 不敢说有百分之百 把握 ) ,
为了避免 U 盘长时间工作有可能导致硬件损坏 风险,以及数据受到二次破坏 风险,先用 WinHex 制作 U 盘 镜像文件,然后对镜像文件进行数据恢复操作, 启动绿色版 ha_WintHex14 . 1SR-6 , 点“工具→打开磁盘”,在对话框中选择“逻辑磁盘”中 U 盘盘符,或者“物理磁盘”中 U 盘名称 ( 笔者选择后者 ) ,打开 U 盘, 点“文件一创建磁盘镜像”,在打开 对话框中选择镜像文件保存 路径,点选“ raw 镜像” ( 如图 2) ,然后”确定”,几分钟后镜像文件创建完毕,关闭软件或关闭软件中打开 U 盘,就可以把 U 盘退出来并拔掉,
怎样在 WinHex 中使用镜像文件恢复数据呢 ? 在 WinHex 中点“文件一打开”,找到保存在电脑中 镜像文件打开即可, 接下来这步操作非常关键,点“专业工具一设置镜像文件为磁盘”,这时打开 镜像文件就变成与直接打开 U 盘 界面一模一样了,操作起来与直接操作 U 盘没有什么区别 ( 如图 3) ,由于镜像文件是“物理磁盘”,需要双击“分区 1 ”才会进入图 3 界面,如果镜像文件是“逻辑磁盘”可以直接看到图 3 分区界面,
点击“ offset ”行右边 黑三角下拉菜单,点选“根目录”,主界面跳到根目录 第一扇区 ( 如图 4 ,每个扇区有半透明横线隔开 ) , 根目录 目录登记项就从这一扇区开始登记, U 盘根目录中 文件夹和文件 名称之所以变成乱码,就是因为这里 目录登记项被改写为“ FF' '或者乱码 ( 如图 4 所示,图 4 为点击滑动条向下移动看到 根目录第二扇区 ) , 目录登记项一般占两行 ( 如图 4 阴影部分 ) , 长文件名目录登记项占 4 行,前两行里面有很多“ FF ”,很容易辨别出来,后两行与前两行 目录登记项样式完全相同 ( 如图 5 阴影部分 ) , 以“ E5" 开头 目录登记项,说明该目录已经被删除,
附表是图 4 中名为“ HH ” 文件夹 目录登记项,
该目录登记项为两行,前 11 个字节表示文件名和扩展名,其中“ 48 ” 是“ H ” 编码, 20 表示空位, 第二行左起第 5 , 6 , 11 , 12 个字节标明子目录文件夹所在位置 首簇号 ( 文件是以簇为最小单位保存 ,而不是以扇区为最小单位保存,本例中 U 盘一簇由 8 扇区构成 ) , 第二行左起第 5 , 6 , 11 , 12 个字节分别为“ 0D' ‘, “ 00' ', “ 18' ', “ 4D' ',所以该子目录所在位置 首簇号为“ 000D4D18"(16 进制,组合顺序为第 6 , 5 , 12 , 11) , 其他字节表示创建时间, 更新时间, 访问时间, 属性等,本例不需要关注这些内容,
根目录文件夹和文件名称乱码,一般只是根目录登记项受破坏,根目录登记项指向 子目录一般不会受破坏, 所以需要把这些没有被破坏 子目录找到, 点击“ offset ”行右端黑三角下拉菜单中 “搜索目录 ( 向下 ) ” ( 如图 6) ,就可以自动找到一个子目录, 子目录所在扇区 前四行是两个特殊 目录登记项 ( 如图 7) ,第一个目录登记项名称编码为“ 2E" ,转化为文本就是“.”,第二个目录登记项名称编码为“ 2E2E ”,转化为文本就是“ .. ”,这两个文本符号是区分子目录 最明显标志, 第一个目录登记项是该文件夹自身 目录登记项,首簇号就是该目录所在位置 簇号,第二个目录登记项其实就是父目录 目录登记项副本,首簇号指向父目录所在位置 簇号,如果父目录 目录登记项丢失 话,可以直接用这个副本做模板恢复,只需要改一下文件夹名称即可, 如果第二个目录登记项 首簇号全为“ 0 ” ,说明该目录 父目录是根目录,如果不是“ 0 ” ,说明该目录 父目录不是根目录, 由于我们需要先恢复根目录,所以搜索时看到第二个目录登记项 首簇号全为“ O ” 目录,就把第一个目录登记项 首簇号数据抄下来,也就是记住该目录所在位置, 不断点击“搜索目录 ( 向下 ) ”,直至显示 100 %完成, 搜索过程需要一定时间,
找到所有指向根目录 子目录 首簇号后,就可以开始恢复根目录登记项, 以任意一个子目录 “.”或“..”目录登记项为模板 ( 如图 8) ,拖动鼠标选中一个登记项,右击点“编辑一复制选块一标准”,完成复制, 转到根目录第一扇区 ( 如图 9) ,右击第一行第一个字符,或者选择一个已经删除 目录登记项右击开头 “ E ”字符,也可以选择全部是“ FF ” ( 表示没有使用 ) 偶数行位置,点选“剪贴板数据一写入”,完成粘贴, 一般来讲,后两种粘贴位置比较稳妥, 粘贴 数据为蓝色,表示还没有真正写入,还可以撤销, 本案例找到 4 个指向根目录 子目录,所以总共粘贴 4 次, 然后更改粘贴 目录项 文件名,本例分别更改为 E , EE , EEE , EEEE ,再把这 4 个目录登记项 首簇号分别改为搜索时抄下来 4 个首簇号, 至此恢复根目录登记项完成, 点击”文件一保存扇区”,弹出提示对话框点“确定”,完成保存,蓝色数据变为黑色,表明已经写入,无法撤销,
要看到改写 实际效果,还要刷新, 点“专业工具一获取卷快照”,在弹出 对话框中点选“获取新快照”,确定, 获取快照完成,就可以在目录浏览器中看到恢复出来 四个文件夹 ( 如图 10) , 双击打开这些文件夹,其中 EEE 文件夹里面看到了丢失 文件及文件夹,要找 重要数据都在里面, 点击处于最上方 “一”文件夹可以返回文件夹 上一层, 右击 EEE 文件夹,点选“恢复腹制”,选择合适保存位置提取恢复出来 文件即可,
以上恢复根目录 过程也可以用这样 方法来实现:在搜索到第一个子目录 时候,直接将“..”目录登记项复制粘贴到根目录第一扇区,只修改文件名即可, 笔者试验这一做法时,文件名改为“ HH ”,刷新后就可以在目录浏览器中看到,双击打开就可以看到需要恢复 文件和文件夹, 当然这样恢复具有一定 偶然性,不够严谨,不过省时省力,不妨在全面搜索之前试一下,也许会带来惊喜,
如果想把根目录乱码文件夹和文件去掉,只需把根目录前 8 扇区 ( 本 U 盘一簇为 8 扇区 ) 中,除了建立 目录登记项,其他位置全部填上“ FF" 即可, 具体操作为先选择这些乱码,少量 乱码可以按鼠标拖动选择,大面积选块应在选块开始右击点“选块开始”,设定选块开头,点击滑动条找到选块结尾,右击点击“选块结尾”,大面积 选块就被选中, 接下来点击“编辑→填入选块”,在弹出 对话框中点选“用 16 进制数值填充”,并输入“ FF ”,确定, 保存后刷新,那些乱码文件夹和文件就消失了,




|