Setzen Sie unter Linux das Bit "temporärer Schreibschutz" für sdcard

2965
mikador

Ich möchte das TMP_WRITE_PROTECTBit (temporärer Schreibschutz) auf meiner SD-Karte setzen /dev/mmcblk0. Ich denke, das lässt sich durch das Umschreiben der CSD (Card Specific Data) an /sys/block/mmcblk0/device/csd, aber sicherlich gibt es bereits ein Linux-Tool, das all das Bit-Banging und das CRC neu berechnet?

Ich habe mmc-utils gefunden, aber es scheint eine inkompatible Schnittstelle zu verwenden:

# 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 

Und in einem Stack Overflow-Kommentar wurde ein Befehlszeilentool namens sdtool erwähnt, das jedoch keine URL enthält ...

2

1 Antwort auf die Frage

2
Dmitry Grigoryev

Das Geheimnis, das sdtoolSie nicht finden können, wird hier gehostet und Sie können es tatsächlich verwenden, um den temporären Schreibschutz auf Ihrer Karte zu aktivieren:

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

Ebenso unlockwird der Schreibschutz aufgehoben.

Ein Wort der Warnung: Mein System kann nicht erkennen, dass das Flag gesetzt ist. Daher muss ich das Dateisystem als schreibgeschützt neu einhängen. Mounten einer schreibgeschützten Karte, die unbemerkt Schreibzugriffe rwzulässt, die in der Realität nicht stattfinden, was zu seltsamen Dateisystemfehlern führen kann (die die SD-Karte glücklicherweise nicht beeinträchtigen, aber dennoch Programme auf Ihrem Computer übergeben können).

Wird `sdtool` für x86 gebaut? Melab vor 8 Jahren 0