내 컴퓨터에 백업 복사본을 만들려고 하는(읽기 전용, 상업용, 이중 레이어) DVD가 있습니다(DVD가 손상될 수 있기 때문입니다). 그러나 디스크 크기를 확인하려고 하면 크기가 일관되지 않습니다.
$ blockdev --getsize64 /dev/sr0
7687522304
$ isosize /dev/sr0
7899633664
$ cat /sys/block/sr0/size
15428972
$ echo '512 *' $(cat /sys/block/sr0/size) | bc
7899633664
여기에는 blockdev
한 가지 크기가 보고되고 다른 크기는 더 큰 크기가 보고됩니다. 불행하게도 dd
등 은 나머지 212111360바이트에 데이터가 있는 것 같은데도 보고된 크기를 cat
사용하는 것 같습니다 . 디스크 이미지가 제대로 작동 하지 않거나 마운트된 디스크에서 더 큰 크기에 가까운 것을 제공합니다(정확하지 않음). 예를 들어 파일 시스템 오버헤드 때문일 수 있음) 실제로 마운트된 파일 시스템에 액세스하려고 하면 I/O 오류가 발생하는 경우가 많습니다.blockdev
dd
cat
du -b
그럼에도 불구하고 디스크는 독립 실행형 플레이어에서 올바르게 재생되고 작동하는 것처럼 보이지만(때로는 불안정하게) libdvdnav
작동하지 않습니다 libdvdread
.
디스크는 어떻게 됐나요? 백업 사본을 얻으려면 어떻게 해야 합니까?
편집: 문제의 디스크에 대한 자세한 내용을 추가했습니다. 또한 "백업 복사본을 얻는 방법"이라는 시급한 질문을 해결하기 위해(또는 실패할 경우 더 많은 정보를 얻기 위해) Windows를 사용하여 백업을 시도할 계획이지만 여전히 무슨 일이 일어나고 있는지 알고 싶습니다. 그리고 Linux에서 이것을 어떻게 할 수 있는지 알려드리겠습니다.
EDIT2: Windows 자체는 작동하는 것 같지만 기본 디스크 이미저가 없습니다. Cygwin은 이상하고 관련이 없어 보이는 오류를 생성했으며 ISO를 생성하도록 설계된 Windows 프로그램은 내 Linux 시스템에 없는 여러 불량 섹터를 발견했습니다. 이것은 내가 기대했던 결과가 아닙니다. 현재 문제에 대한 힌트를 제공할 경우를 대비해 여기에 게시하지만 그렇게 하고 싶지는 않습니다.
blockdev
편집 3: 디스크를 교체할 때 디스크 크기가 "고착"되는 경우가 있는 것 같습니다 . 명령줄에서 "꺼내기" 대신 실제 트레이 꺼내기 버튼을 사용할 때 이런 일이 발생하는 것 같습니다. 추가 조사가 필요하지만(이것이 실제로 트리거입니까?) 두 가지 설명을 제공하는 것 같습니다(프로그래머가 USB 드라이브, 특히 읽기에서 더 많은 것을 기대해야 함에도 불구하고 디스크를 제대로 마운트 해제하지 않으면 시스템이 혼란스러워집니다). 미디어만 해당) 및 잠재적인 해결 방법(크기를 blockdev
8.5GB로 수정).
이제 관련성이 있을 수 있습니다. 저는 Fedora 20을 사용하고 있으며 systemd
자동으로 폴더에 디스크를 마운트한다고 덧붙일 것입니다 /run/media/dhouck/<DISCNAME>
. DISCNAME은 파일 시스템에 의해 자동으로 결정됩니다. UDF에 대해 정확히 어떻게 말할 수 있을지는 모르지만 관련성이 있는지 의심됩니다. 크기가 정체되면 설치 경로의 DISCNAME 부분도 변경할 수 없습니다. 시스템의 일부가 미디어가 제거되었음을 인식하지 못해 제대로 마운트 해제하지 못한 것 같습니다.
답변1
문제는 DVD 자체에 의한 것이 아니라 디스크를 마운트 해제하지 않고 하드웨어 꺼내기 버튼을 사용했을 때 Linux가 혼란스러워서 발생한 것으로 밝혀졌습니다( eject
올바로 마운트 해제를 처리했기 때문에 명령이 작동했습니다). 디스크는 읽기 전용이므로 안전하다고 가정하고, 안전하지 않은 마운트 해제 없이 미디어를 제거하면 쓰기 문제만 발생할 것이라고 가정합니다.