我有一个使用NFS挂载其根文件系统的设备。 在我的NFS服务器上,我有一个代表设备文件系统的文件,即target.ext2,我在相应的/ export目录中装载。
我希望设备能够在挂载的目录上进行写入,但不希望对其进行的更改传播到target.ext2文件。 可能吗?
对不起,我错过了这个问题在过去…尝试使用“扇出”文件系统,这将允许您挂载一个“图像”,然后覆盖一个可写文件系统的不可写图像的顶部。 所有写入驱动器的操作都将导致对覆盖文件系统(而不是基本层)执行“修改”。 mini-fo就是这样一个文件系统,它可以让你做到这一点。
如果你愿意重新考虑你的体系结构的变化,你应该能够使用逻辑卷而不是回送文件来获得类似的结果。
如果您想尝试一下,请先将您的文件转换为逻辑卷:
lvcreate -n original -L 20G vg0 # assumes 20G size and a valid 'vg0' volume group dd if=/root/original.loopback of=/dev/vg0/original
然后创build一个快照:
lvcreate -s -n volatilecopy -L 2G /dev/vg0/original
现在,你可以挂载/ dev / vg0 / volatilecopy,并在其上写入2GB,而不会出现问题,而/ dev / vg0 / original将保持不变。
之后:
lvremove /dev/vg0/volatilecopy lvcreate -s -n volatilecopy -L 2G /dev/vg0/original
再次给你一个干净的状态。
优点:一遍又一遍地复制文件:这占用更less的空间(只需要额外的写入空间),速度更快。
不是我所知,缺less一个自定义的脚本被调用来重置主副本的图像和重新安装。
您希望允许写入文件夹而不将更改传播回文件系统的任何特定原因? 似乎将文件系统设置为只读将更容易,然后让用户在其他位置写入应该保留的更改。