适用于 SSD 的 dd/ddrescue 样式工具,可跳过相同块的写入

适用于 SSD 的 dd/ddrescue 样式工具,可跳过相同块的写入

我有一个来自 SSD 的文件系统的 dd 副本,由于操作系统严重崩溃,我想将其恢复到相同的 SSD 文件系统,使其恢复到已知的良好状态。95% 的块将相同,因此为了避免 SSD 磨损,我不想让 ddrescue 将与 dd 副本中的块相同的块写入 SSD。

是否有与 dd 或 ddrescue 等效的工具或命令行标志,使这些工具不会在目标上写入相同的块?它会比较慢,因为它会执行读取并可选地写入,但我可以接受这种减速。

答案1

应该可以使用rsync,差分数据传输工具。

手册页,并使用该--inplace选项,因为您想直接写入设备文件。

也就是说,对磁盘进行一次写入只会造成很小的磨损,因此可以考虑直接dd进行写入。

答案2

e2imagee2fstools 可以使用选项执行此-c操作,但它无法从 stdin 读取输入图像,因为它似乎需要四处寻找。

这个“旧”dd_rescue工具(与 GNU ddrescue 不同)有一个-W选项可以避免写入,并且从标准输入读取:https://sourceforge.net/projects/ddrescue/根据具体情况,您可能还想-a跳过写入零块(我目前正在研究将图像恢复到 LVM 精简池,同时保留 CoW 特性。)

相关内容