破損したファイルを修復しようとしています。分割ハードディスクの破損によりGNUアドレス構造。
これを行うためにubuntu tutoに沿って一晩実行しましたが、3番目と4番目のコマンドは失敗しました。以下のスクリプトログを参照してください。
標準出力:
ubuntu@ubuntu:~$ bash -x rescue.sh
+ INTERN=/dev/sda2
+ TARGET=/dev/sdb1
+ SUIVI=/dev/sdb3
+ sudo mount /dev/sdb3 /media/ubuntu
mount: /media/ubuntu: /dev/sdb3 déjà monté sur /media/ubuntu.
+ sudo mkdir /media/ubuntu/dd
+ sudo ddrescue -f -N -n -b4096 -K524288 /dev/sda2 /dev/sdb1 /media/ubuntu/dd/suivi6
GNU ddrescue 1.23
Press Ctrl-C to interrupt
ipos: 93098 MB, non-trimmed: 10530 kB, current rate: 0 B/s
opos: 93098 MB, non-scraped: 0 B, average rate: 32564 kB/s
non-tried: 0 B, bad-sector: 24576 B, error rate: 21845 B/s
rescued: 477173 MB, bad areas: 6, run time: 4h 4m 13s
pct rescued: 99.99%, read errors: 192, remaining time: 6h 49m
time since last successful read: 1m 30s
Finished
+ sudo ddrescue -f -c1 -b4096 /dev/sda2 /media/ubuntu/dd/suivi6
GNU ddrescue 1.23
Press Ctrl-C to interrupt
ipos: 112395 MB, non-trimmed: 0 B, current rate: 1179 kB/s
opos: 112395 MB, non-scraped: 0 B, average rate: 25915 kB/s
non-tried: 0 B, bad-sector: 8785 kB, error rate: 0 B/s
rescued: 477175 MB, bad areas: 124, run time: 5h 6m 52s
pct rescued: 99.99%, read errors: 2145, remaining time: n/a
time since last successful read: n/a
Finished
+ sudo ddrescue -d -f -R -r27 -b4096 -c1 /dev/sda2 /dev/sdb1 /media/ubuntu/dd/suivi6
ddrescue: error in mapfile /media/ubuntu/dd/suivi6, line 131.
+ ddrescue --fill-mode=- --force --synchronous /dev/zero /dev/sdb1 /media/ubuntu/dd/suivi6
ddrescue: error in mapfile /media/ubuntu/dd/suivi6, line 131.
マップファイルを確認しましたが、奇妙な文字が含まれています。
ubuntu@ubuntu:~$ sed -n 130p /media/ubuntu/dd/suivi6
0x22D3670000 0x4C46F90000 +
ubuntu@ubuntu:~$ sed -n 131p /media/ubuntu/dd/suivi6
INDX( ��_�(8�t�ty�j5ˣ{��N3����N3����N3���1046rat�j5ˣ{��ł1����ł1����ł1���1046rat�j5ˣ{��ł1����ł1����ł1���1046rat�j5ˣ{��ł1����ł1����ł1���1046rat�j5ˣ{��ł1����ł1����ł1���1046rat�j5ˣ{��ł1����ł1����ł1���1046rat�j5ˣ{��ł1����ł1����ł1���1046rat�j5ˣ{��ł1����ł1����ł1���1046rat�j5ˣ{��ł1����ł1����ł1���1046rat�j5ˣ{��ł1����ł1����ł1���1046ra�j5ˣ{��ł1����ł1����ł1���1046rat�j5ˣ{��ł1����ł1����ł1���1046rat�j5ˣ{��ł1����ł1����ł1���1046rat�j5ˣ{��ł1����ł1����ł1���1046rat�j5ˣ{��ł1����ł1����ł1���1046rat�j5ˣ{�ł1����ł1����ł1���1046rat�j5ˣ{��ł1����ł1����ł1���1046rat�j5ˣ{��ł1����ł1����ł1���1046rat�j5ˣ{��ł1����ł1����ł1���1046rat�j5ˣ{��ł1����ł1����ł1���1046rat�j5ˣ{�j5ˣ{�j5ˣ{�j5ˣ{�1048rat�
オンラインで同様のエラーが見つかりませんでした。知っている人はいますか?
私の設定
Linux バージョン 5.3.0-18-一般 (buildd@lcy01-amd64-027) (gcc バージョン 9.2.1 20190909(Ubuntu 9.2.1-8ubuntu1)) #19-Ubuntu SMP Tue, Oct 8 20:14:0
GNUアドレス構造1.23
ありがとうございます!
ベストアンサー1
2番目のddrescueコマンド:
sudo ddrescue -f -c1 -b4096 /dev/sda2 /media/ubuntu/dd/suivi6
ターゲットパラメータが欠落しているため、マップファイルがターゲットとして指定され上書きされます。
マッピングファイルに3番目のパラメータがないため、復元もせずに最初から上書きされます。
ターゲットがディスクパーティションではなく通常のファイルの場合は、新しいマッピングされたファイルを推測して作成しようとすることができますが、ddrescue --generate-mode
コピーを開始する前にターゲットドライブが完全にゼロになることを保証できない場合はお勧めできません。新しいファイルはデフォルトでゼロなので、これはターゲットファイルに対してより簡単に保証されます。
もう一度やり直す(他の目標に触れない方が良いです。そうしないと状況が悪化する可能性があります)、最終的に99.99%を節約しましたが、これは悪くありません。
ああ、私はばかです。ターゲットは、2番目のコマンドの汎用ファイルです。 suivi6ファイルを変更していない場合は、そのファイルから進行状況を生成してみることができます(ただし、このファイルは元のターゲットではなく現在のイメージであるため、維持する必要があります)。
ビルドモードを参照してくださいinfo ddrescue Generate
。おそらくmv suivi6 sda2.img
あまり混乱しない名前を与えるためです。 (また、通常のマップファイルはより小さいテキストファイルですが、ディスク全体のサイズがあることを確認してください)。