linux Yocto上的只读文件系统

z3yyvxxp  于 2023-08-03  发布在  Linux
关注(0)|答案(2)|浏览(170)

我对yocto项目的“read-only-rootfs”特性有几个问题,不幸的是,文档没有那么有用。
因此,将其添加到EXTRA_IMAGE_FEATURES使yocto fs只读,但在:

5.15.3. Areas With Write Access

With the read-only-rootfs feature enabled, any attempt by the target to
write to the root filesystem at runtime fails. Consequently, you must make
sure that you configure processes and applications that attempt these types
of writes do so to directories with write access (e.g. /tmp or /var/run).

字符串
他们说,一些地区可以成为rw,但他们没有提供有关这方面的额外信息。
我想实现的是所有的操作,进程和东西要加载到RAM和SD卡应该保持不变,就好像它是后flasing,不写一个位上。但用户应该有可能打开一个特定的文件夹(内存区域)的sd卡rw每当他想写的东西,然后把系统只读了。
是不是有人做的?你会帮我很多。

2mbi3lxu

2mbi3lxu1#

默认情况下,Yocto应该创建所有需要的RW挂载作为tmpfs。它们位于RAM中,因此易失性(在关机/重启时删除)。
为了持久地存储数据,我实现了以下方法:

  • RootFS位于持久存储器的RO装载分区上。此分区在运行时期间保持“未触及”。
  • 需要在运行时期间改变/写入的数据(如配置、日志等)被存储在持久存储器的第二分区上。此分区在已装载的RW中。
  • 默认情况下在RootFS上但需要更改的配置被移动到第二个分区,并被指向这些文件的符号链接所取代。
  • 第二个分区是使用自定义fstab文件自动挂载的,该文件是通过base-files_*.bbappend添加的。

也许还有其他方法可以做到这一点,但这个解决方案多年来一直没有遇到困难;- )

xmq68pz9

xmq68pz92#

meta-readonly-rootfs-overlay提供了必要的脚本和配置,以在只读根文件系统之上设置可写的根文件系统覆盖。

相关问题