rsync가 손상된 하드 드라이브 블록에서 파일을 읽으려고하지 않고 파일을 건너 뛰도록 지시하는 방법 것 같습니다. 그러나

하드웨어 오류가있는 디스크에서 파일을 복구하려고합니다.

디스크는 디스크 유틸리티로 복구되었지만 디스크가 손상되었다고 알려주므로 오류가 발생하기 전에 모든 것을 백업해야합니다.

그래서 파인더를 통해 파일을 복사하려고 시도했지만 멈추었습니다. 다른 유틸리티를 사용해 보니 헤드가 손상된 블록에 닿으면 파일을 복사하려고 시도합니다.

그래서 rsync로 시도했지만 작동하는 것 같습니다. 그러나 내가 나쁜 블록을 칠 때까지는 영원히 걸립니다.

그래서 파일이 너무 오래 걸리는 경우 파일을 방해하지 않도록 Rsync에 지시하는 방법이 있는지 궁금합니다. 각 파일에 대한 시도 횟수를 지정하거나 각 파일에 대해 얼마나 오래 시도해야합니까?

이 드라이브가 얼마나 오랫동안 정직하게 지속되는지 확실하지 않으므로 모든 데이터를 최대한 빨리 가져 오지만 여전히 마운트하여 파인더에서 데이터를 볼 수 있습니다.

이것이 내가 명령으로 사용하는 것입니다. 파일에 대한 시도를 줄일 수있는 방법이 있다면 조언하십시오. 따라서 손상된 블록을 읽으려고 rsync를 사용할 수는 있지만 특정 섹터에 너무 오래 걸리지 않도록하십시오.

rsync -arv -e--ignore-errors --partial-dir=/Volumes/backup/partial /Volumes/work /Volumes/backup

미리 감사드립니다.



답변

짧은 대답 : rsync이 경우에는 올바른 도구가 아닙니다. 사용하면 해로울 수 있습니다. 대신 (보다 낫게 )
사용하십시오 . 당신이 원하는 것을 할 수 있습니다.ddrescuedd_rescue


디스크가 물리적으로 손상된 경우에 가능성이 벽돌 을 복구하려는 시도와 그것.

그것은 단지의 사용에 대한 질문입니다 시간 , 때 rsync영원히 손상된 분야에 접근하는 걸 것으로 보인다. 문제는 반복 작업에 돌이킬 수없는 실패 캔이 발생한다는 것입니다, 그리고 당신은 더 이상 고가의 부품 교체없이 데이터를 구출 할 수없는 것 (여전히 가능할 것이다 경우 항상 당신은 필요가 없습니다 벽돌 당신의 HDD를 ).

이 경우 내가 찾은 가장 안전한 절차는

  1. 손상되지 않은 다른 디스크에 원시 이미지 를 작성합니다 .
  2. 해당 이미지 의 사본 을 만듭니다 .
  3. 하려면 수정하는 복사 작업 파일 시스템 및 파일을 구출 .

왜 사본? 파일 시스템 수정 단계 에서 문제가 발생 하면 원래 손상된 HDD를 다시 만질 필요없이 항상 다시 시작할 수 있습니다 .

ddrescue읽기 오류의 경우에도 제대로 작동하기 때문에 원시 디스크 이미지를 포함하여 결함을 포함 하려면을 사용하는 것이 좋습니다 .


함께하는 방법 ddrescue

손상된 섹터를 재 시도하거나 분할하지 않고 가능한 많은 데이터를 복사 ddrescue하여 사용하려는 그대로 정확하게 사용할 수 있습니다 rsync.
이 명령은 아래에 있습니다 (장치 대신에 /dev/hda1).

ddrescue --no-split /dev/hda1 imagefile logfile

그런 다음 첫 번째 통과 ( 더 빠른 통과)를 수행 한 후 오류 발생시 3 회 액세스를 시도하여 세분화 할 수 있습니다.

ddrescue --direct --max-retries=3 /dev/hda1 imagefile logfile

ddrescue다른 옵션으로 명령 호출을 반복하여 이미지를 계속 세분화하여 매번 더 많은 데이터를 추출하려고 시도합니다 (참조 참조). 완료되면 사본을 작성하고 (필요한 공간이 모두있는 경우) 파일 시스템 을 수정할 수 있습니다.

원시 이미지는 원래 HDD 만큼 커집니다 .
인터넷,이 사이트 및 StackExchange의 다른 사이트에서 데이터를 구하는 방법 또는 다른 도구에 대한 많은 질문과 답변을 찾을 수 있습니다 ddrescue.

참고 문헌 :


답변