web-dev-qa-db-ja.com

同一ブロックへの書き込みをスキップするSSD用のdd / ddrescueスタイルツール

SSDからのファイルシステムのddコピーがあり、OSのクラッシュが原因で同じSSDファイルシステムに復元して、正常な状態に戻したいと考えています。ブロックの95%は同じになるので、SSDの摩耗を避けるために、ddコピーのブロックと同一のddrescue書き込みブロックをSSDに持たせたくありません。

宛先に同一のブロックを書き込まないツールのdd、ddrescue、またはコマンドラインフラグと同等のツールはありますか?読み取りとオプションで書き込みを行うため、速度は遅くなりますが、速度の低下は問題ありません。

3
Blair Zajac

差分データ転送ツールである rsync を使用してこれを行うことができるはずです。

マニュアルページ を参照し、デバイスファイルに直接書き込みたいので、--inplaceオプションを使用します。

とは言うものの、ディスク全体での1回の書き込みパスはわずかな摩耗であるため、それをddすることを検討してください。

3

e2fstoolsのe2image-cオプションを使用してこれを行うことができますが、検索する必要があるように見えるため、stdinから入力画像を読み取ることはできません。

「古い」dd_rescueツール(GNU ddrescue)と同じではありません)には、書き込みを回避するための-Wオプションがあり、 canstdinから読み取る: https://sourceforge.net/projects/ddrescue/-aにも、ゼロのブロックの書き込みをスキップすることができます。状況に応じて(現在、CoWの特性を維持しながらLVMシンプールにイメージを復元することを検討しています。)

0
anarchetic