ddrescue: 맵 파일에 오류가 있습니다

ddrescue: 맵 파일에 오류가 있습니다

손상된 파일을 복구하려고 합니다.분할하드디스크 손상으로 인해GNU 주소 구조.

이 작업을 수행하기 위해 ubuntu tuto를 따라 밤새 실행했지만 세 번째와 네 번째 명령이 실패했습니다. 아래 스크립트 로그를 참조하세요.

표준 출력:

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:06 UTC 2019

GNU 주소 구조 1.23

감사합니다!

답변1

두 번째 ddrescue 명령:

sudo ddrescue -f -c1 -b4096 /dev/sda2 /media/ubuntu/dd/suivi6

대상 매개변수가 누락되어 맵 파일이 대상으로 지정되고 덮어쓰여집니다.

매핑 파일로 세 번째 매개 변수가 없으므로 복원도 되지 않고 처음부터 덮어씁니다.

대상이 디스크 파티션이 아닌 일반 파일인 경우 새 매핑된 파일을 추측하여 생성하려고 시도할 수 있지만, ddrescue --generate-mode복사를 시작하기 전에 대상 드라이브가 완전히 0이 되도록 보장할 수 없다면 이는 권장되지 않습니다. 새 파일은 기본적으로 0이므로 이는 대상 파일에 대해 더 쉽게 보장됩니다.

다시 시작하거나(다른 목표로 다시 건드리지 않는 것이 더 낫습니다. 그렇지 않으면 상황이 더 악화될 수 있습니다) 결국 99.99%를 절약했는데, 이는 나쁘지 않습니다.


아, 난 바보야. 대상은 두 번째 명령의 일반 파일입니다. suivi6 파일을 수정하지 않은 경우 해당 파일에서 진행 상황을 생성해 볼 수 있습니다(그러나 이 파일은 원래 대상이 아닌 현재 이미지이므로 유지해야 합니다).

빌드 모드를 참조하세요 info ddrescue Generate. 어쩌면 mv suivi6 sda2.img덜 혼란스러운 이름을 주기 위해서일 수도 있습니다. (또한 일반 맵 파일은 더 작은 텍스트 파일인 반면 전체 디스크 크기를 가지고 있는지 확인하십시오).

관련 정보