USB 하드 드라이브에서 ddrescue가 매우 느림


9

노트북에서 HDD를 복구하는 중입니다. 전혀 부팅되지 않았으며 디스크 유틸리티는 아무런 문제가 없다고보고했지만 디스크를 마운트하지는 않았습니다. USB 어댑터를 통해 HDD를 연결했습니다. ddrescue이렇게 실행 :

sudo ddrescue -v -n /dev/disk1s2 "/Volumes/Original HD/image.dmg" ddrescue.log

지금까지 오류는 없지만 평균 읽기 속도가 점차 50KB / s로 떨어졌습니다. 처음에는 약 2MB / s였습니다. 파티션의 크기는 300GB입니다. 지금까지 160GB를 복구 할 수있었습니다. MacBook의 HFS + 파티션으로 복구 중입니다.

이 느린 전송 속도의 원인은 무엇이며 어떻게 증가시킬 수 있습니까?

답변:


8

이것은 ddrescueOSX에서 & USB 전송이 작동 하는 방식 일 것 같습니다 . 이 글타래에서 제목 : 제목 : [Bug-ddrescue] ddrescue 10x slow under osx .

모든 기능을 갖춘 하드 드라이브에서 작업 할 때 Linux에서는 전체 I / O 속도를 수행합니다. 기본 컴파일 플래그를 사용하여 osx에서 컴파일하면 크기가 느려지고 때로는 Kb / s로 크롤링됩니다. 출력 파일이 / dev / null 인 경우 문제가 지속됩니다.

같은 스레드에도이 응답이있었습니다.

OS X에서의 경험과 테스트에서 /dev/rdisk…항상 원시 문자 장치에 액세스하는 것이 좋습니다. 또한 더 큰 복사 블록 크기를 설정하여 전송 속도를 더욱 향상시킬 수 있습니다. 512KiB ( ddrescue -c 1Ki) 크기는 대부분의 경우 최상의 결과를 주었다.

그리고 : OS X 원시 문자 장치의 크기는 정의되어 있으므로 첫 실행에서도 쉽게 사용할 수 있습니다. (적어도이 시점에서 기존 문서의 원시 장치에 대한 참고 사항은 ddrescueOS X에 적용되지 않습니다.)

ddrescue다른 유틸리티 는 OS X에서 같은 동작을 나타내 dd거나 그렇기 때문에 이것이 버그라고 생각하지 않습니다.cat

/ dev / disk… 블록 장치에 액세스하면 사용 된 복사 블록 크기에 관계없이 속도가 다소 느려집니다. 반면에 / dev / rdisk… 원시 문자 장치의 읽기 속도는 선택한 복사 블록 크기에 따라 다릅니다.

  • 512 바이트 ( ddrescue -c 1기본값은 dd)가 가장 느립니다.
  • 4096 바이트 ( ddrescue -c 8, dd bs=4K) 로 설정하면 / dev / disk에 액세스 할 때와 같은 속도가 느려집니다…
  • ddrecue의 기본값 인 128 섹터 (= 64KiB ddrescue -c 128, dd bs=64K)는 상당히 좋은 결과를 가져옵니다.
  • 그 이상 (최대 ddrescue -c 1Ki/ dd bs=512K) 을 곱하면 최대 속도 (대부분 8-12 배 빠름 /dev/disk…)를 얻습니다.
  • 그 이상으로 상승하면 테스트에서 더 이상 전송 속도가 증가하지 않았습니다. 때때로 그것은 심지어 감소했습니다.

그것들은 제 자신의 측정 결과이며, 사용되는 미디어 및 IO 하드웨어에 따라 결과가 달라질 수 있습니다. 다른 사용자가 자신의 경험을 공유한다면 주제를 더 잘 이해할 수있을 것입니다.

참고 문헌


1
복사 블록 크기를 변경해도 필자의 경우 전송 속도에 영향을 미치지 않습니다. 그러나 / dev / null을 사용하면 입력 파일 위치를 200GB로 설정하여 좋은 전송 속도 (최대 8MB / s)를 얻을 수있었습니다. 추가 매개 변수를 사용하여 복원 프로세스를 다시 시작했습니다 -i214748364800. 초기 0-160GB가이 영향을받지 않기를 바랍니다.
Mik

1
불행히도 전송 속도의 증가는 오래 가지 못했습니다. ddrescue유닉스 시스템에서 실행하려고 합니다.
Mik


@Mik 다른 위치에서 복구를 재개하는 데 사용한 정확한 매개 변수를 제공해 주셔서 감사합니다. 121242584064 위치에서 실패한 소스 드라이브에서 다시 시작하려고했지만 ddrescue가 정렬되지 않은 읽기 오류라고 말했습니다. 섹터 크기가 정확합니까? 그래서 당신의 가치를 사용하여 200GB로 재개했습니다. 그리고 아니요, 초기 0-160GB에는 영향을 미치지 않습니다.
콜린

0

HFS+MacOS 의 파일 시스템에 대해서는 잘 모르지만 USB 스틱에서 Linux Mint를 실행하는 랩톱에서 500GB 내장 하드 드라이브 (SATA를 통해 연결됨)를 구출하여 구조 이미지와 로그 파일을 exFat포맷 된 USB 하드 드라이브는 다소 느리게 시작되었지만 (1-2MB / 초) 약 250GB 후에는 100KB / 초 미만으로 크롤링되었습니다. 복구 이미지 파일이 커질수록 속도가 느려지는 것 같습니다.

그런 다음 복구 이미지와 로그 파일을 다른 임시 위치 ext4로 이동하고 파일 시스템으로 USB 하드 드라이브를 다시 포맷 하고 파일을 다시 이동 한 다음 ddrescue 프로세스를 다시 시작했습니다. 이제 1-20MB / sec로 다시 실행됩니다. 그러나 평균 약 7MB / sec)!

exFat매우 큰 파일 (수백 기가 바이트)에서는 잘 재생되지 않는 것 같습니다 . 이미 말했듯이, 나는 이것이 또한 사건인지 아닌지 HFS+모르지만 아마도 당신 ext4은 기회 를주고 싶어합니다 .

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.