SD 카드를 마운트할 수 없습니다

SD 카드를 마운트할 수 없습니다

SD 카드를 설치하고 싶어요. dmesg 로그를 삽입하면 다음이 표시됩니다.

[Thu Oct 25 10:59:44 2018] sd 0:0:0:0: [sdb] 30318592 512-byte logical blocks: (15.5 GB/14.5 GiB)
[Thu Oct 25 10:59:44 2018]  sdb: sdb1

좋아 보이지만 설치하려고 할 때 command를 사용하면 실패합니다 sudo mount /dev/sdb1 /mnt/sdcard. dmesg 출력은 다음과 같습니다.

[Thu Oct 25 10:59:55 2018] FAT-fs (sdb1): error, invalid access to FAT (entry 0x00038a03)
[Thu Oct 25 10:59:55 2018] FAT-fs (sdb1): Filesystem has been set read-only

누구든지 무엇이 잘못되었는지 말해 줄 수 있나요? 모든 데이터가 손실되므로 카드를 포맷하고 싶지 않습니다.

답변1

Linux 커널 소스 코드를 읽어보면 <source code root>/fs/fat/fatent.c메시지의 표현이 약간 잘못되었음을 알 수 있습니다. 이는 실제로 액세스 중인 FAT 항목이 유효성 검사에 실패했음을 의미합니다.

카드를 마운트 해제한 다음 실행하여 fsck.fat -n /dev/sdb1카드의 파일 시스템 상태를 평가하고 가능한 경우 실행하여 fsck.fat -aw /dev/sdb1복구를 시도할 수 있습니다.

파일 시스템을 복구하기 전에 카드 내의 파일이 중요한 경우 카드 내용의 이미지를 만들 수 있습니다.dd if=/dev/sdb1 of=/some/place/with/plenty/of/space/sdcard.img bs=16k

답변2

처음에는 이것이 SD 카드의 잠금 메커니즘 때문일지도 모른다고 생각했지만, 구글링을 해보니 Linux가 FAT 파티션에서 손상된 데이터를 읽으려고 할 때 나타나는 메시지인 것 같습니다. fsck를 시도해 보겠습니다. 그래도 문제가 해결되지 않으면 다시 포맷하는 것 외에는 선택의 여지가 없을 수 있습니다. 그러나 SD 카드가 실제로 읽기 전용으로 마운트된 경우에도 일부 데이터를 복구하는 것이 가능할 수 있습니다.

관련 정보