以前、Ubuntu で overlayroot を使ってルートファイルシステムを読み込み専用にしてみたのですが、Jetson Xavier NX で同じように試してみたところ、それだけではだめでした。
恐らくですが、ブートローダーが EXTLINUX であることが原因のような気がしています。
Jetson Xavier NX ではどうやってやればいいのかググってみると、NVIDIA のフォーラムで議論されているのが見つかりました。
- https://forums.developer.nvidia.com/t/xavier-nx-filesystem-to-readonly/185605
- https://forums.developer.nvidia.com/t/overlayfs-for-jetson/78540/29
その中で、解決策として提示されていたのが以下です。
環境
- Jetson Xavior NX
- Ubuntu 18.04
- JetPack 4.5.1
overlayroot のインストールと有効化
以下の記事を参考にしてください。
Jetson Xavier NX ではこれに加え、次のことが必要でした。
/boot/initrd の置き換え
GitHub にスクリプトが公開されているので、まずこれをクローンします。
$ git clone https://github.com/negachov/overlayroot-jetpack
あとは以下を実行するだけです。
$ cd overlayroot-jetpack
$ sudo ./update-initramfs-jetpack
$ reboot
これで、再起動後に overlayroot が有効になっていました。
参考 URL
- https://forums.developer.nvidia.com/t/xavier-nx-filesystem-to-readonly/185605
- https://forums.developer.nvidia.com/t/overlayfs-for-jetson/78540/29
- https://docs.nvidia.com/jetson/l4t/Tegra%20Linux%20Driver%20Package%20Development%20Guide/uboot_guide.html#wwpID0E0YD0HA
- https://zenn.dev/tunefs/articles/288d3a069f0cb3