문제를 풀다

문제를 풀다

내 카메라용 SD 카드가 있습니다. 카메라에서는 사진을 찍을 수 있고, 파일을 삭제할 수 있지만... 내 컴퓨터에서는(데비안은 불안정합니다.) 읽을 수만 있고 쓸 수는 없습니다. 이 이상한 일은 최근, 아마도 몇 주 전에 일어났습니다. 저는 Camera Tools를 사용하여 SD 카드를 포맷하고 그 위에 Magic Lantern을 설치했습니다(어쨌든 상관없다고 생각합니다).

Linux에서 파티션을 읽기/쓰기로 강제로 다시 마운트하려고 하면 다음 오류가 발생합니다.

$ sudo mount -rw -o remount /dev/mmcblk0p1
mount: /media/me/EOS_DIGITAL: /dev/mmcblk0p1 is write-protected but explicit read-write mode requested.

있으니 참고해주세요아니요사물함 위치를 변경하려고 했으나 카메라에서 SD 카드를 계속 읽을 수 있는 사물함 문제가 발생했습니다.

어떤 아이디어가 있나요? 감사해요!

추신: 귀하의 방법으로 SD 카드의 데이터가 손상될 경우, 먼저 백업할 수 있는 방법을 찾을 수 있도록 미리 알려주시기 바랍니다!

답변1

문제를 풀다

이런 종류의 문제(외부 플래시 드라이브/SD 카드/...Linux에서 읽기 전용으로 마운트)가 발생할 때마다 FAT 파일 시스템이 제대로 마운트 해제되지 않아 오류가 발생했기 때문입니다. Windows 시스템에 설치하거나(Windows에서 문제를 해결할 수 있도록) 사용하면 fsck.fat문제가 해결됩니다. fsck.fatSD카드가 손상될 수 있으니 주의해서 사용해주세요 .

백업 SD 카드

dd if=<your sdcard device, ie: /dev/sdb> of=backup.sdcard전체 SD 카드를 백업하는 데 사용하십시오 . 그런 다음 나중에 설치할 수 있습니다. 다음을 사용하세요.

  1. 파티션 테이블이 없지만 FAT를 직접 추가하는 경우: mount -o loop backup.sdcard mountpoint/

  2. 분할된 테이블이 있는 경우 먼저 오프셋을 계산해야 합니다. 예를 들어:

    $ sudo fdisk -l /dev/sda
    Disk /dev/sda: 238.5 GiB, 256060514304 bytes, 500118192 sectors
    Units: sectors of 1 * 512 = 512 bytes
    Sector size (logical/physical): 512 bytes / 4096 bytes
    I/O size (minimum/optimal): 4096 bytes / 4096 bytes
    Disklabel type: dos
    Disk identifier: 0xe9a3179f
    
    Device     Boot  Start       End   Sectors   Size Id Type
    /dev/sda1  *      2048    499711    497664   243M 83 Linux
    /dev/sda2       501758 500117503 499615746 238.2G  5 Extended
    /dev/sda5       501760 500117503 499615744 238.2G 83 Linux
    

block_size * 501758501758부터 시작하는 sda 파티션을 마운트하려면 오프셋을 적용해야 합니다 :

mount -o loop,offset=$((512*501758)) /dev/sda mountpoint

관련 정보