Встановіть біт sdcard "тимчасовий захист від запису" в Linux


3

Я хочу встановити TMP_WRITE_PROTECTбіт (тимчасовий захист від запису) на своїй SDCard /dev/mmcblk0. Я думаю, що це можна зробити, переписавши CSD (дані, пов’язані з картою) на /sys/block/mmcblk0/device/csd, але, безумовно, вже є інструмент Linux, щоб зробити все, що біт-банг і перерахувати CRC?

Я знайшов mmc-utils , але, здається, використовується несумісний інтерфейс:

# 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

І коментар переповнення стека згадав інструмент командного рядка під назвою sdtool , але не містить URL ...

Відповіді:


3

Це таємниче sdtoolви не можете знайти розміщений тут , і ви дійсно можете використовувати його , щоб включити тимчасовий захист від запису на мапі:

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

Так само unlockзніме захист від запису.

Слово попередження: моя система не в змозі розпізнати, що прапор встановлений, тож я повинен перезавантажити файлову систему як лише для читання. Монтаж картки, захищеної від запису, як rwмовчки дозволить записувати, що насправді не відбудеться, що призведе до дивних помилок файлової системи (які, на щастя, не вплинуть на SD-карту, але все ж можуть передавати програми на комп'ютер).


Чи працює sdtoolдля x86?
Мелаб
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.