Как создать корневую файловую систему только для чтения в Arch-ARM

Как создать корневую файловую систему только для чтения в Arch-ARM

У меня следующая конфигурация:

  • hw: RPi 3 Модель B
  • os: 4.4.37-1-ARCH #1 SMP armv7l GNU/Linux
  • Файловая система: /boot(vfat), /(ext4), /var(ext4)
  • разделы: три; смонтированы: /boot, /, /var
  • память: mlc nand flash micro sd

Недавно я получаю ошибки kernel panic во время загрузки, ссылающиеся на файл в lib, который оказался каким-то образом поврежден.

kernel panic "/sbin/init" error while loading shared libraries /usr/lib/libseccomp.so.2 invalid elf header

Итак, моя теория заключается в том, что поскольку моя корневая файловая система НЕ доступна только для чтения, а я использую флэш-память NAND и происходят неожиданные отключения, некоторые файлы повреждаются.

Цель состоит в том, чтобы сделать корневую файловую систему доступной только для чтения, что может решить проблему.

К сожалению, мне не удалось найти ни одного хорошего надежного источника информации о том, как создать корневую файловую систему только для чтения в Arch Linux.

Также опубликовано на форуме Arch Linux:https://archlinuxarm.org/forum/viewtopic.php?f=9&t=11621

решение1

Если кому-то интересно, то в итоге я просто изменил /boot/cmdline.txtи заменил rwна rofor root:

root=/dev/mmcblk0p2 ro

также измените fstabследующим образом, чтобы сделать bootраздел доступным только для чтения. обратите внимание, /varчтоНЕТтолько для чтения:

/dev/mmcblk0p1  /boot   vfat    defaults,ro,errors=remount-ro        0       0
/dev/mmcblk0p3  /var    ext4    defaults,noatime        0       2

Связанный контент