我想使用overlayFS挂载我的RO文件系统,以便使用两层FS (Lowerdir和Upperdir)。
我试过以下安装命令-
mount -t overlayfs -o lowerdir=/,upperdir=/overlay "overlayfs:/overlay" /mnt && root=/mnt它将/mnt挂载为overlayFS,但将其设置为RO。
为了将它挂载为RW,我尝试了以下方法(意思是Upperdir是RW) -
mount -t overlayfs -o rw,lowerdir=/,upperdir=/overlay "overlayfs:/overlay" /mnt && root=/mnt还是没什么好处。
一些一般的信息-
我想把R/W FS挂载为UBIFS,我的RO FS是SquashFS,我正在openWRT上工作,谢谢大家!
发布于 2015-12-29 12:26:19
你错过了workdir=:
目录覆盖主要涉及目录。如果给定的名称同时出现在上、下两种文件系统中,并且在任何一个文件系统中都引用一个非目录,那么下面的对象是隐藏的--名称仅指上面的对象。在上对象和下对象都是目录的情况下,将形成合并目录。在
mount时,两个目录作为挂载选项lowerdir和upperdir合并到一个合并目录中:-t覆盖层-olowerdir=/lower、upperdir =/ /merged、workdir =//merged-workdir需要是与upperdir相同的文件系统上的一个空目录。然后,每当在这样一个合并目录中请求查找时,在每个实际目录中执行查找,并将合并的结果缓存在属于覆盖文件系统的dentry中。如果两个实际查找都找到目录,都被存储,并且创建了一个合并目录,否则只存储一个目录:如果存在,则为上层目录,否则是较低的目录。只有目录中的名称列表被合并。其他内容(如元数据和扩展属性)仅为上层目录报告。下面目录的这些属性是隐藏的。现在可以使用冒号:作为目录名称之间的分隔符来提供多个较低层。例如:挂载-t覆盖层-olowerdir=/lower2 1:/lower2 2:/lower2 3 /merged,如示例所示,upperdir=和workdir=可以省略。在这种情况下,覆盖将是只读的。指定的较低目录将被堆叠,从最右边的一个开始,然后左转。在上面的例子中,lower1是顶部,lower2是中间层,lower3是底层。
https://unix.stackexchange.com/questions/252109
复制相似问题