Defina o sdcard “temporary write protect” no Linux

2

Eu quero definir o bit TMP_WRITE_PROTECT (proteção contra gravação temporária) no meu sdcard /dev/mmcblk0 . Acho que isso pode ser feito reescrevendo o CSD (dados específicos do cartão) em /sys/block/mmcblk0/device/csd , mas com certeza já existe uma ferramenta do Linux para fazer tudo isso e recalcular o CRC?

Encontrei mmc-utils , mas parece usar uma interface incompatível:

# mmc extcsd read /dev/mmcblk0
ioctl: Connection timed out
Could not read EXT_CSD from /dev/mmcblk0
# mmc writeprotect get /dev/mmcblk0 
ioctl: Connection timed out
Could not read EXT_CSD from /dev/mmcblk0

E um comentário de estouro de pilha mencionou uma ferramenta de linha de comando chamada sdtool , mas não fornece um URL ...

    
por mikador 13.03.2015 / 13:26

1 resposta

2

Esse misterioso sdtool que você não pode encontrar está hospedado aqui , e você pode realmente usá-lo para ativar a proteção temporária contra gravação em seu cartão:

sudo umount /dev/mmcblk0p*
sudo sdtool /dev/mmcblk0 lock
sudo sdtool /dev/mmcblk0 reset

Da mesma forma, unlock removerá a proteção contra gravação.

Uma palavra de aviso: meu sistema não é capaz de reconhecer que o sinalizador está configurado, então cabe a mim remontar o sistema de arquivos como somente leitura. A montagem de cartões protegidos contra gravação como rw permitirá silenciosamente gravações que, na realidade, não ocorrerão, resultando em erros estranhos no sistema de arquivos (que felizmente não afetarão o cartão SD, mas ainda podem entregar programas em seu computador).

    
por 16.04.2015 / 11:12

Tags