![更快的磁盘恢复(ddrescue 运行缓慢)](https://linux22.com/image/112093/%E6%9B%B4%E5%BF%AB%E7%9A%84%E7%A3%81%E7%9B%98%E6%81%A2%E5%A4%8D%EF%BC%88ddrescue%20%E8%BF%90%E8%A1%8C%E7%BC%93%E6%85%A2%EF%BC%89.png)
我正在了解拥有良好备份的价值。
我的 500GB 硬盘出现故障。我开始跑步
ddrescue /dev/sdb1 backup.img mapfile
需要 40 到 70 天,具体取决于您查看的时间。
我读这个帖子ddrescue
它展示了如何使用选项来加速-c 1Ki
。现在我正在考虑15天左右。
我还缺少另一个技巧吗?或者更好的工具?这真的是恢复故障硬盘所需要的吗?
答案1
ddrescue
有这个选项:
-a, --min-read-rate=<bytes>
minimum read rate of good areas in bytes/s
如果您在命令行上以适当的大小指定它10M
,例如 ,幸运的是,仍然能够读取但速度极慢的区域将首先被跳过,并继续驱动器仍然能够高效读取的其他区域。
根据最后遗漏的程度,之后你仍然可以用慢速传球来跟进。
也可以在模式ddrescue
下运行--reverse
或强制它以特定的偏移量启动,--input-position=X
因此如果ddrescue
它本身不跳到更快的区域,您可以强制它手动执行此操作。
这真的是恢复故障硬盘所需要的吗?
很难说,因为有很多不同类型的失败。它还取决于驱动器的类型、它如何处理错误,有时还取决于控制器本身对坏驱动器的反应方式。检查dmesg
是否有任何噪音,看看是否有总线重置,这些不应仅仅因为驱动器遇到读取错误而发生。 (如果发生这种情况,也许会增加/sys/block/.../device/timeout
)
如果您的驱动器支持 SCTERC(桌面消费者驱动器不太可能),您可能可以告诉驱动器甚至不尝试内部错误纠正,而是直接返回读取错误。