我必须使用 romfs 创建一个带有自定义可加载模块的文件系统。但是,我有一些困惑(我对内核的东西还是新手):
看完
romfs文档:romfs,据我所知,romfs是一个类似于 的文件系统ext2, ext3, ext4....,用于创建内核启动时需要的init ramdisk。不过据说romfs从2.1.21版开始就被纳入内核了:romfs homepage。在主页上,我们只能下载genromfs用于创建romfs图像文件的实用程序。所以,我想在这里明确一点:romfs内核中包含的模块是用来读取romfs文件系统的,genromfs是用来创建的,不是吗(我试过了genromfs,但我想确认一下)?initrd由mkinitrd -allow-missing -f initrd.img kernel-version在源目录(要加载的文件系统)创建并由: 解包gzip -dc initrd.img | cpio -idv,在使用 romfs 时,我必须使用创建它的图像mkinitrd并使用: 解包它genromfs -fdv romfs.img。这与内核启动时的 initrd 相同吗?initrd涉及压缩,虽然romfs不是,这可以吗?如果是这样,则必须将
romfs模块内置到内核中,以便在内核启动的早期阶段进行读取,对吗?在我的系统中,我们有一台无盘机器,目前,initrd它被用作引导阶段文件系统以及最终的根文件系统。但是,由于romfs是只读的,使用romfs被拒绝的用户写入文件系统的能力(所以,我们不能做类似的事情echo "something" > /tmp/something.txt)?