使用 ddrescue 直接将 NTFS 卷从一个设备复制到另一个设备后我该怎么做?

使用 ddrescue 直接将 NTFS 卷从一个设备复制到另一个设备后我该怎么做?

ddrescue在 Ubuntu Live 启动中使用它来从出现故障的 3TB 外部硬盘(格式为 NTFS)中恢复数据。我让它将数据直接复制到新的物理设备,即我没有创建中间映像文件:

ddrescue /dev/sdb /dev/sdc rescue.logfile

大约两周后,ddrescue 终于完成了它的魔力,所以我重新启动 Windows 来评估损坏情况。Windows 正在识别新设备,但似乎没有安装任何分区。

当我进入计算机管理 -> 磁盘管理时,我确实看到了ddrescue创建的分区。但是,它是一个“RAW”分区,Windows 显然无法读取。我如何告诉 Windows 将其重新解释为 NTFS 分区?

我考虑过使用chkdsk,但这似乎首先要求我能够安装分区。

*注意:我应该提到,我正在拯救的驱动器不是我启动的驱动器。

*更新:我尝试运行testdisk,并能成功看到新驱动器上的文件系统。然而,当我尝试使用它来修复分区表时,testdisk 给出了“写入错误”。

chkdsk /f h:因此,现在我在 Windows 中 运行。chkdsk当前处于循环中,并显示以下消息:

Inserting an entry into index $0 of file 60.

根据本文chkdsk,重建主文件表时这是正常的:

$Extend\$Objld 是一个元数据文件;NTFS 文件系统使用它来存储文件系统信息的一个特殊隐藏文件。(NTFS 文件系统是 Windows XP/Vista/7 使用的文件系统。)对于那些可能对技术细节感兴趣的人,它位于启动硬盘驱动器主文件表的第 24 或 25 位,并包含 NTFS 分配给计算机上每个文件的唯一对象标识符编号的索引。

我的分区似乎位于第 60 位,但我认为这是因为我创建分区的方式不寻常。我想我会再等一天看看结果如何。

答案1

好的,看起来chkdsk /f <drive letter>:成功了!总结一下,当我的外部非启动 NTFS(Windows)驱动器停止工作时,我做了以下事情:

  1. 关闭并断开驱动器以防止进一步损坏。
  2. 购买容量相同或更大的新外置硬盘。此外,如果您手头没有备用闪存驱动器,请购买一个大小合适的闪存驱动器。如果您负担得起,请购买两个硬盘驱动器 - 一个作为备份驱动器,这样您以后就不必再这样做了 ;-)
  3. 恢复过程需要几天到几周的时间才能完成。因此,如果您在家中使用笔记本电脑,请在家中找一个不会干扰设备的地方。提示:将其放在远离孩子手指、狗尾巴和猫屁股的地方。
  4. 使用以下方式将 Ubuntu Live 直接安装到闪存驱动器网启动
  5. 安装过程中,您可以给自己泡一杯咖啡或茶。
  6. 从闪存驱动器启动计算机(从 BIOS 启动菜单中选择闪存驱动器作为启动设备)。仔细观察,菜单选项很快就消失了!
  7. 在 Ubuntu 中,转到系统->管理->软件源。启用 Universe 存储库,以便我们可以安装 ddrescue。
  8. Ctrl按+ Alt+在 Ubuntu 中打开终端T
  9. 运行sudo apt-get install ddrescue安装ddrescue。
  10. 找到一种方法让故障硬盘保持凉爽。我用的是冰袋,但有些人报告说,把硬盘放在冰箱里,然后把电缆接到电脑上。无论你做什么,确保保持干燥
  11. 插入旧硬盘,断开新硬盘的连接。
  12. 运行sudo fdisk /l。这将显示分区列表。
  13. 如果您的驱动器仍可以以任何方式挽救,它应该会以设备名称显示在此列表中(例如/dev/sdb)。根据其容量和记下来,注意这是发生故障的驱动器. 如果有疑问,请断开任何其他驱动器,直到您确定哪个驱动器是哪个。
  14. 连接新驱动器,然后sudo fdisk /l再次运行。识别新驱动器(例如/dev/sdc)并记下来,将其标记为新动力
  15. 现在您已经识别了驱动器,是时候挽救您的数据了!运行sudo ddrescue --no-split -d <old drive> <new drive> rescue.logfile,输入驱动器的名称。该no-split选项将告诉ddrescue您尽快挽救尽可能多的数据,而不是在有问题的数据块上浪费时间。您希望这样做,以便在发生更多损坏之前挽救您的数据。
  16. ddrescue可能需要几天到几周的时间才能完成。在此期间,尽量保持车内温度尽可能低。我每天更换冰袋,早上一次,晚上一次。也许你可以找到更好的方法。
  17. 一旦ddrescue完成no-split运行,您可以尝试使用恢复更多数据sudo ddrescue -d -f -r3 <old drive> <new drive> rescue.logfiler3告诉ddrescue尝试最多三次读取损坏的块。
  18. 当您从旧驱动器中取出尽可能多的数据并准备减少损失时,是时候重新安装驱动器了。重新启动计算机,但这次要重新进入 Windows。
  19. 检查您是否可以访问新驱动器上的数据。如果可以,那么恭喜您!如果不可以,当您单击驱动器时,您会收到一条错误消息,例如“驱动器需要格式化”或“无法读取驱动器”或类似的消息。 不要格式化驱动器,您的数据就在那里! 我们只需要修复文件系统。具体做法如下:

    a. 禁用防病毒软件以及任何可能尝试自动重启计算机的自动更新服务。我正在看着你,Windows Updater!

    b. 以管理员身份打开命令控制台。开始菜单 -> 附件,右键单击命令提示符,选择“以管理员身份运行”。

    c. 运行chkdsk /f <drive letter>:。Windows 现在将尝试修复文件表。此过程可能需要大约半天时间。在此期间,您可能会反复收到相同的消息,这是完全正常的。请参阅本文欲了解有关 的更多信息chkdsk

    d.运气好的话,chkdsk完成后,你的驱动器会重新安装,你又会变成一只快乐的猴子。

  20. 定期备份您的数据!

相关内容