将 ext4 文件系统标记为只读

将 ext4 文件系统标记为只读

我想创建一个 ext4 文件系统,并向其中添加一些文件,然后“冻结”它,使其从此成为只读的。

我知道可以使用ro安装选项。但是有什么方法可以在文件系统本身中表明它是只读的吗?

我看到tune2fs有一个设置-o默认安装选项的选项,但-o ro不是有效的选项。

我还看到tune2fs有一个选项-E mount_opts。我尝试了-E mount_opts=ro环回文件系统(Ubuntu 14.10):

dd if=/dev/zero of=ext4test bs=1M count=32
mkfs.ext4 -L test ext4test
tune2fs -E mount_opts=ro ext4test
mkdir ext4testmnt
sudo mount ext4test ext4testmnt

但是,文件系统仍以读写方式挂载。

答案1

最近的内核(4.0 及更高版本)支持这一点,并且自 2015 年 2 月下旬以来,e2fsprogs(自 1.42.13 版本起可用)。

使用适当的内核和工具,您可以ext4使用以下命令将文件系统标记为只读tune2fs

tune2fs -O read-only ext4test

并一如既往地清除标志

tune2fs -O ^read-only ext4test

相关内容