
私の設定は次の通りです:
- ハードウェア: RPi 3 モデル B
- os: 4.4.37-1-ARCH #1 SMP armv7l GNU/Linux
- ファイルシステム: /boot(vfat)、/(ext4)、/var(ext4)
- パーティション: 3; マウント済み: /boot、/、/var
- ストレージ: MLC NAND フラッシュ Micro SD
最近、起動時に 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
興味のある方のために、私が最終的に行ったことは、 root に対して変更し/boot/cmdline.txt
て置き換えることだけでした:rw
ro
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