일반 명령을 사용하여 추출하거나 복사할 수 없는 DVD가 있습니다. 복사하려고 하면 먼저 정상 속도로 복사한 다음 속도가 느려지고 아무것도 하지 않는 것처럼 오랜 시간을 보냅니다.
dd
이제 만드는 데 사용된 .iso 이미지에서 데이터를 추출하려고 합니다 . 다음 명령을 사용합니다.
dd if=/dev/sr0 of=image.iso bs=2048 conv=noerror,notrunc iflag=nonblock
noerror
:읽기 오류 후 계속
notrunc
:출력 파일을 자르지 마십시오.
nonblock
: 비차단 I/O 사용
이제 추출이 어려운 부분에 이르렀습니다. 항상 다음과 같은 메시지가 나타납니다.
dd: error reading ‘/dev/sr0’: Input/output error
486221+0 records in
486221+0 records out
995780608 bytes (996 MB) copied, 76031,9 s, 13,1 kB/s
1분마다 몇 바이트씩 증가합니다. 보시다시피, 이런 일이 한동안 계속되고 있습니다...
그래서 제 질문은 이렇습니다. 내 컴퓨터는 지금 무엇을 하고 있나요?드라이브 속도가 느려졌지만 여전히 일부 데이터를 추출할 수 있습니까(바이트 수가 증가함)? 속도가 낮을수록 데이터를 더 쉽게 읽을 수 있습니까? 아니면 드라이브가 일부 데이터를 얻을 때까지 동일한 데이터를 반복해서 읽으려고 하는 것입니까?뭐가 문제 야?:)
답변1
후자의.
CD가 포함된 IME, 일부 읽기 실패 문제는 다음 방법으로 해결할 수 있습니다.주행 속도 감소. 그러나 드라이브는 이를 알지 못합니다(특정 디스크에 대해 어떤 속도가 안전해야 하는지. 말 그대로 최고 속도는 디스크 재질의 강도에 따라 제한됩니다). 둘째, 최소 속도는 1x가 되며 이는 여전히 13kB/s보다 훨씬 높은 수준입니다.
또한 를 사용하여 커널 로그를 보면 dmesg
커널에서 재시도 메시지가 표시될 수도 있다고 생각합니다. (그러나 나는 이것이 대부분 드라이버 문제라고 생각합니다. 커널은 그렇게 여러 번 재시도하지 않습니다.)
AFAIK 드라이브 재시도에 대한 더 나은 제어 기능이 부족하다는 것은 "복사 방지" 구성표에서 악용된 펌웨어 제한 사항입니다.
답변2
디스크 읽기 오류가 발생하면 일반적으로 일종의 재설정 프로세스가 있습니다. 기계 장비의 경우 이는 움직이는 부품을 기본 위치로 이동한 다음 다시 이동하는 것을 의미합니다. 문제가 기계적 조정인 경우 읽기 헤드가 두 번째로 올바르게 배치되었기 때문에 장치를 다시 읽을 수 있게 만드는 것이 가능할 수 있습니다. 문제가 재현 가능하더라도 읽기 오류로 인해 움직이는 부품이 올바른 위치에 있지 않기 때문에 기계적 재설정이 필요할 수 있습니다. 이러한 부품을 이동하는 데는 시간이 걸립니다.
커널 로그에서 재설정을 볼 수 있습니다(실행 중 dmesg
, 참조).dmesg 항목의 의미를 찾는 방법은 무엇입니까?예를 들어).
답변3
DVD를 읽으려고 하는데 디스크가 심하게 손상되어 읽을 수 없는 것 같습니다. 디스크 상태가 좋지 않습니까? 흠집이 많나요?
자동차처럼 자동차 왁스로 광택을 내면 살릴 수 있습니다. 광학 판독기가 정보를 읽을 수 있도록 스크래치를 즉시 제거하고 dd를 사용하여 정보를 덤프할 수 있어야 합니다.