USB 외부 디스크에서 손상된 것처럼 보이는 파티션을 복구하거나 복구하십시오.

USB 외부 디스크에서 손상된 것처럼 보이는 파티션을 복구하거나 복구하십시오.

친구가 이걸 가져왔어WD 마이패스포트 외장하드그녀의 파일을 복구할 수 있는지 알아보려면 저에게 연락하세요. 정전 후 장치가 "작동하지 않습니다." 그녀의 증언에 따르면, 장치가 연결되었을 때 Windows는 드라이브를 "인식"했지만(그게 무엇을 의미하든) 그녀는 "파일을 볼 수 없었습니다."

내 Ubuntu 14.10 시스템에서는 다음과 같은 결과를 얻습니다.

$ lsusb
Bus 004 Device 002: ID 1058:0748 Western Digital Technologies, Inc. My Passport 1TB USB 3.0

다음 두 장치는 드라이브가 연결되면 나타나지만 제거하면 사라집니다.

crw-rw----  1 root disk       21,   3 Jan 11 19:30 sg3
crw-------  1 root root       21,   4 Jan 11 19:30 sg4

/dev/하위 디렉터리나 하위 디렉터리 중 하나에서 다른 항목을 놓쳤을 수 있습니다. 드라이브를 분리한 후에도 다음 파일이 여전히 남아 있기 때문에 다음 파일이 관련이 있는지 여부는 알 수 없습니다.

$ ls -la /dev/usb
crw-------  1 root root 180, 0 Jan 11 19:00 hiddev0

드라이브에 연결할 SATA 또는 IDE 포트를 얻기 위해 케이스를 분해했지만 장치의 PCB에 USB 3.0 연결이 있습니다. 비어 있는 것처럼 보이는 일부 점퍼(예: 기존 IDE 드라이브의 점퍼)가 있지만 케이스 외부에서는 접근할 수 없습니다.

이 드라이브를 마운트하기 위한 다음 단계는 무엇입니까?dd이상적으로는 그 내용을 안전한 곳으로 옮기고 fsck기도를 드리고 싶습니다 . Western Digital이 두 파티션 유형 중 하나를 사용하여 장치를 판매하는 것으로 나타나기 때문에 장치가 FAT 또는 NTFS로 포맷되었는지 확실하지 않습니다. 잘못된 FAT 또는 NTFS 유형을 설치하려고 하면 /dev/sg3추가 손상이 발생합니까 ?/dev/sg4

편집하다:/dev/sg3그리고 /dev/sg4장치가 설치되지 않습니다. 마운트 시도의 결과는 다음과 같습니다.

$ ls -la | grep sg
drwxr-xr-x   2 root root           140 Jan 11 20:43 bsg
crw-r--r--   1 root root        1,  11 Jan 11 19:00 kmsg
crw-rw----   1 root disk       21,   0 Jan 11 19:00 sg0
crw-rw----+  1 root cdrom      21,   1 Jan 11 19:00 sg1
crw-rw----   1 root disk       21,   2 Jan 11 19:00 sg2
crw-rw----   1 root disk       21,   3 Jan 11 20:43 sg3
crw-------   1 root root       21,   4 Jan 11 20:43 sg4

$ mkdir ~/inbal

$ sudo mount -t ntfs /dev/sg
sg0  sg1  sg2  sg3  sg4  

$ sudo mount -t ntfs /dev/sg4 ~/inbal
[sudo] password for dotancohen: 
Error reading bootsector: Illegal seek
Failed to sync device /dev/sg4: Invalid argument
Failed to mount '/dev/sg4': Illegal seek

$ sudo mount -t ntfs /dev/sg3 ~/inbal
Error reading bootsector: Illegal seek
Failed to sync device /dev/sg3: Invalid argument
Failed to mount '/dev/sg3': Illegal seek

$ sudo mount -t vfat /dev/sg4 ~/inbal
mount: /dev/sg4 is not a block device

$ sudo mount -t vfat /dev/sg3 ~/inbal
mount: /dev/sg3 is not a block device

답변1

나는 이것이 오래된 질문이라는 것을 알고 있으며 이 답변은 실제로 평판이 충분하지 않은 의견이어야 하지만 여기에 일종의 경고가 제공되어야 한다고 생각했습니다.

읽기 전용으로 설치하려고 해도 드라이브에 대한 쓰기 액세스가 발생할 수 있습니다!

가장 좋은 예는 Reiserfs 파티션을 읽기 전용(!)으로 마운트하는 것입니다. 이렇게 하면 디스크에서 최소 1바이트가 변경되며, 이는 설치 전후에 찍은 파티션 이미지를 비교하여 쉽게 확인할 수 있습니다. Reiserfs 버전 3.6.24에서 다시 나타났습니다. 나는 이것이 일종의 설치 카운터 증가라고 생각합니다.

이전 NTFS 드라이버에서도 비슷한 상황을 보았지만 파티션을 다시 마운트 해제한 후 디스크의 변경 사항이 되돌려졌습니다. 참고: 우리는 읽기 전용 설치에 대해 이야기하고 있습니다!

따라서 디스크를 복구하려고 할 때 dd마운트 시도, 심지어 읽기 전용 시도 이전에 유사한 작업이 발생합니다.

질문에 설명된 상황에 대한 또 다른 장애물은 커널이 드라이브에 액세스하기 위한 블록 장치를 설정할 수 없다는 것입니다.

ls목록에서 볼 수 있듯이 /dev이러한 sg*파일은 문자 장치입니다. SCSI 명령을 사용하여 하위 수준 장치와 통신하는 데 사용됩니다. 예를 들어SCSI-일반-HOWTO. 이러한 장치는 mount 명령에 사용할 수 없습니다.

에서 드라이브의 블록 장치가 표시되지 않으면 대부분 의 /proc/partitions진단 및 복구 도구(예: Smartmontools, hdparm.testdiskdd

이 일을 하려면 아주 훌륭한 마법사가 필요할 것 같아요.

관련 정보