$A
ファイルをバックアップ場所にコピーするために使用されたプロセスまたは完了したプロセスを安全に復元する方法は?$B
pv "$A" > "$B"
cat "$A" > "$B"
$A
(LVM2スナップショットファイルのようにファイル容量が大きいと仮定)
それは達成することができるかdd
。
優先:bashまたはpython(好ましくはpython3)ソリューション。
例のシナリオ:pv "$A" > "$B"
90%後にコピーが中断されます。ジョブ全体を再度繰り返すことなくコピー処理が完了するように復元するにはどうすればよいですか?
ベストアンサー1
はい、ddを使用してブロックをスキップできます。
A="file1"
B="file2"
BLOCKSIZE=512 # default bs for dd
size_b=$(stat -c "%s" "$B")
skip_blocks=$((size_b / BLOCKSIZE))
dd if="$A" of="$B" skip=$skip_blocks seek=$skip_blocks bs=$BLOCKSIZE
ここで重要なパラメータはskip
次のとおりですseek
。
skip
:ブロックをスキップIBSサイズ起動時にブロック入力するseek
:ブロックをスキップobsサイズ起動時にブロック出力