使用 ddrescue 进行驱动器恢复

使用 ddrescue 进行驱动器恢复

我需要从 1TB 驱动器恢复数据。BIOS 报告了 SMART 错误,然后 Ubuntu 很贴心地告诉我有 2 个 SMART 错误。

驱动器上有大约 250GB 的数据。我一直在使用 ddrescue。

大约 24 小时后,这是我的进展:

Press Ctrl-C to interrupt
Initial status (read from logfile)
rescued:     6383 MB,  errsize:    225 MB,  errors:     394
Current status
rescued:     6395 MB,  errsize:    225 MB,  current rate:    2774 kB/s
   ipos:     6621 MB,   errors:     396,    average rate:    19492 B/s
   opos:     6621 MB,     time from last successful read:       0 s
Copying non-tried blocks...

我使用各种选项停止/启动了 ddrescue。我尝试过 -d -r0,然后是 -d -r0 -n,现在我只使用 -n,这样我就可以顺利通过第一阶段。

正在恢复的驱动器位于内部 SATA 上,并且正在将副本复制到另一个具有内部 SATA 的驱动器。

如果我的当前速率和/或平均速率下降回到字节/秒,我是否应该尝试使用 -R 从磁盘背面开始一轮?

不过,由于我刚刚使用了 -n 选项,我的速率一直保持在 kB/s,目前来说还不错。我只用了 1TB 驱动器中的 6GB,所以我不想在接下来的 20 年里尝试恢复驱动器 ;)

我知道 ddrescue 甚至会尝试恢复驱动器中未使用的部分,有没有办法判断恢复是否完成了包含数据的扇区而不是没有数据的扇区?

答案1

大多数时候ddrescue可以运行使用默认设置-r2并让 自行处理受损区域。例如,您还可以使用 限制重试次数。

事实上,一开始速度很慢是正常且很常见的。磁盘最终不会以完全一致的方式损坏。事实上,恰恰相反。

大多数情况下,硬盘的磨损程度在磁盘的“开始”部分变得非常严重,因为这个部分使用得最多。如果你的速度在经过前 15-20 GB 的扇区后上升,我不会感到惊讶。

有没有办法可以判断恢复是否已完成包含数据的扇区而不是没有数据的扇区?

不可以。这需要您先从驱动器读取文件系统元数据。您无法读取驱动器读取驱动器。

相关内容