次のコマンドを使用して、深刻な破損したCDからデータをコピーしようとします。
dd if=/dev/sr1 of=IDT.img conv=sync,noerror status=progress
ただし、「of」デバイスの接続が切断され、ddが停止します(下の出力)。
...
dd: error reading '/dev/sr1': Input/output error
1074889+17746 records in
1092635+0 records out
559429120 bytes (559 MB, 534 MiB) copied, 502933 s, 1.1 kB/s
dd: writing to 'IDT.img': Input/output error
1074889+17747 records in
1092635+0 records out
559429120 bytes (559 MB, 534 MiB) copied, 502933 s, 1.1 kB/s
続行できます。
dd if=/dev/sr1 of=IDT.img conv=sync,noerror status=progress seek=1092635 skip=1092635
それとも、検索/スキップ数字が両方でなければならないのですか1092636
、それともスキップ/検索が異なるのか、それとも完全に異なるのですか?
PSおそらく間違ったコマンドを使用していることを知っています。例えば、ddrescue が良いかもしれません。しかし、私はおそらく今(?)ddに閉じ込められているでしょう。出力ファイルに関してエラーが発生しなくなることが予想されます。
ベストアンサー1
読み取りエラーが発生するため、これらのオプションはconv=sync,noerror
ほとんど確実にデータフローを変更し、残念ながら出力ファイルを無駄にするか、少なくとも不正確なコピーにします。
このオプションは、入力にエラー読み取り(短い読み取り)があるたびにconv=sync
ブロックをNULバイトで埋めます。コマンドはdd
中断された入力ストリームを続行しようとしますが、出力には不明な数のNULバイトが挿入されます。
使用を中止しdd
て使用する必要がありますddrescue
、悪いメディアからデータを回復するために作成されました。
同様のトピックへの回答を参照