나는 Debian 시스템의 USB 플래시 드라이브에 쓰려고 하는 하이브리드 ISO 이미지(Debian netinst, 크기 약 473MB)를 가지고 있습니다. 다음 명령( sdX
플래시 드라이브에 해당하는 장치) 중 하나를 사용하여 이 작업을 수행하려고 하면 :
$ cp image.iso /dev/sdX
$ dd if=image.iso of=/dev/sdX bs=1M status=progress
그런 다음 10~15분을 기다린 후에도 명령이 멈추고 완료되지 않습니다(플래시 드라이브의 LED는 마치 데이터가 아직 기록되는 것처럼 계속 깜박입니다. 과거에 시도한 다른 USB 드라이브/펜 드라이브의 경우). 일반적으로 약 1분 이내에 종료됩니다.) 또한 cp/dd 프로세스는 CTRL-C
원격으로도 중지할 수 없습니다 kill -9
. 복사 프로세스를 중지하려면 USB 포트에서 플래시 드라이브를 제거해야 합니다. (cp/dd가 보낸 데이터가 버퍼링되어 있고 플래시 드라이브가 모든 데이터가 최종적으로 기록되었음을 확인할 때까지 커널이 기다리고 있는 것 같습니다.)
출력을 확인해보니 dmesg
USB 포트에서 플래시 드라이브를 제거할 때 발생한 오류를 제외하고는 쓰기 오류가 표시되지 않았습니다.
그런 다음 동일한 플래시 드라이브에 exFAT 파티션을 생성하고(cp/dd 명령을 통해 ISO 이미지를 쓸 영역도 포함하도록 플래시 드라이브의 모든 공간을 할당) 이를 마운트하고 ISO 이미지를 일반으로 복사했습니다. 동일한 일이 발생하는지 확인하기 위한 것입니다. 약 2분 정도 걸렸지만(이 USB 플래시 드라이브는 쓰기 속도가 꽤 느린 것으로 나타났습니다) 완료되었습니다.
또한 플래시 드라이브가 의심스러운 방식으로 식별되는지 확인했지만 lsusb
"USB 저장소"로만 표시되었습니다.
장치에 직접 쓸 때 복사 작업이 중단(또는 매우 느림)되지만 파티션에 쓸 때는 제대로 작동하는 이유는 무엇일까요? 플래시 드라이브가 손상되었거나 첫 번째 블록 중 일부가 쓰기 금지되어 있습니까? 아니면 가짜/의심스러운 플래시 드라이브일 수 있으므로 피하는 것이 더 낫습니까?