Testdisk:如何从“分区:读取错误”中恢复

use*_*823 5 data-recovery filesystems testdisk partition-recovery photorec

I\xe2\x80\x99m 尝试使用 Seagate 6TB HDD(格式化为 exFAT,包含 3.5TB 数据)修复问题testdisk,但我认为我让事情变得更糟:

\n
    \n
  • 我将文件留待复制过夜,早上我的 Mac 显示一条通知,HDD 未正确弹出\xe2\x80\x99t,从那以后,我一直无法安装它
  • \n
\n

在我使用之前testdisk,我能够在“磁盘工具”中看到硬盘变灰,在尝试安装它时显示错误,但在执行以下操作之后,我不再可以:

\n
    \n
  1. testdisk第一次运行时,显示如下\n
    No partition from this disk must be mounted:\n  Open the Disk Utility and press Unmount button for each volume from this disk\n
    Run Code Online (Sandbox Code Playgroud)\n我选择了Continue,分区表类型自动检测为EFT GPT
  2. \n
  3. Deep Search显示了 EFI 分区的许多错误,指出something is != 1,在放置过夜后仅完成 0.3%
  4. \n
  5. Quick Search显示两个分区,EFI并且MS Data
  6. \n
  7. Analysis>Quickly Search显示硬盘有P在其前面\n
      \n
    • P确认所有文件都在那里Write>>Y速度很快,但仍然无法在我的 Mac 上看到驱动器
    • \n
    \n
  8. \n
  9. 我想知道这是否是由于#1中显示的消息导致的,所以我sudo testdisk在卸载后重新发出sudo diskutil unmountDisk /dev/disk2\n卸载后重新发出
      \n
    1. Quick Search>EFIMS Data检测到,但是MS Data显示为D(eleted)
    2. \n
    3. P确认所有文件都在那里>P要替换D(eleted)>Write(花了大约 10-15 秒)
    4. \n
    \n
  10. \n
\n
\n

HDD 不再显示在“磁盘工具”中,并且diskutil list不显示 EFI 分区:

\n
    \n
  • testdisk不再自动检测分区类型\n
      \n
    • 根据我选择的分区类型,它会显示:
      Intel: Partition: Read error.
      EFI GPT: Trying alternate GPT
    • \n
    \n
  • \n
  • Quick Search需要很长时间才能运行,而之前需要大约 15-20 分钟,现在已经超过 3 小时
  • \n
  • HDD 上的数据不再可通过查看testdisk
  • \n
\n

在这种情况下我最好的行动方针是什么?

\n

dav*_*dgo 6

立即停止驱动器上的任何操作。好的。现在你不再把问题复杂化了,让我们试着把自己从困境中挖出来。

意识到您的磁盘可能出现故障 - 您对它所做的任何操作都只会使情况变得更糟。

我要采取的第一步是获取另一个相同或更大的驱动器并用于ddrescue尝试复制原始数据。完成此操作后,您就可以根据需要进行选择。

  • ddrescue这是天赐之物,因为它允许您不断尝试从故障驱动器中提取数据,从而为您提供了多次机会。
  • 我从向前传递开始,当失败时,取消并开始向后传递,然后继续运行,直到我用完时间。(如果您将来遇到此问题,请检查日志和 SM ART 以支持对故障驱动器的诊断)

一旦您复制了尽可能多的数据,您可能需要复制您的副本并testdisk在其上运行;或者,如果它已经消失了,请尝试photorec恢复部分文件。

  • @user912830823由于盘片或磁头的物理损坏,您的完成时间非常高,因为它在尝试读取坏/损坏的扇区时基本上处于停滞状态。安装 `smartmontools`,然后发出 `sudo smartctl -a /dev/disk2` > 检查 SMART 输出是否损坏_(将低于 SMART 值)_ > 通过 `sctl="sudo smartctl" 运行 SMART 短期和长期测试;磁盘=“/dev/disk2”;$sctl -t 短 $disk && $sctl -a $disk; $sctl -t long $disk && $sctl -a $disk` _(短测试需要 1 分钟,通过 `$sctl -a $disk | grep Progress` 检查长进度)_ (2认同)