我有一个嵌入式板,我在上面运行 Linux。Linux 通过 uboot 启动。完整的 Linux 映像构建为 Initramfs。当系统启动时,我发现根 FS 是读写的。我的理解是 Initramfs 默认应该是只读的。正确的?
我也尝试将 uboot 中的引导参数更改为只读,但没有效果。我想知道如何使 Initramfs 默认为只读?
我有一个嵌入式板,我在上面运行 Linux。Linux 通过 uboot 启动。完整的 Linux 映像构建为 Initramfs。当系统启动时,我发现根 FS 是读写的。我的理解是 Initramfs 默认应该是只读的。正确的?
我也尝试将 uboot 中的引导参数更改为只读,但没有效果。我想知道如何使 Initramfs 默认为只读?
完整的 Linux 映像构建为 Initramfs。
这是一个措辞不佳的描述,如果不是不准确的话。
initramfs 使用 cpio 归档文件,它不是映像文件。
cpio 归档文件可以链接到 Linux 内核映像。
initramfs “映像”始终是 cpio 归档文件,而不是文件系统映像。
我的理解是 Initramfs 默认应该是只读的。正确的?
错误的。
将 initramfs 挂载为只读文件系统是没有意义的。
创建并挂载 initramfs 时,它是一个空文件系统。
如果它是以只读方式挂载的,则 initramfs 无法填充其 cpio 存档,并且 initramfs 将保持为空文件系统。
使用内核命令行参数的建议root=/dev/ram ro
表明(已弃用)ramdisk 和 ramfs 之间存在混淆。
请参阅 Linux 内核文档/文件系统/ramfs-rootfs-initramfs.txt
我想知道如何使 Initramfs 默认为只读?
您可以将其重新安装为只读。
请参阅 http://lkml.iu.edu/hypermail/linux/kernel/0908.1/01693.html
和
https://serverfault.com/questions/463828/linux-initramfs-read-only