如何使用overlayfs合并目录(只读)?

如何使用overlayfs合并目录(只读)?

我使用 Overlayfs 将三个目录合并在一起,如下所示:

mount -t overlay overlay -o lowerdir=/dir1:/dir2:/dir3 /targetdir

这部分符合我的预期。下层目录中的一些文件在目标目录中是可见的,但是目录不合并。例如,如果我有以下文件:

/dir1/subdir/file1
/dir2/subdir/file2
/dir3/subdir/file3

然后我期望在目标中看到:

/targetdir/subdir/file1
/targetdir/subdir/file2
/targetdir/subdir/file3

但我实际看到的是:

/targetdir/subdir/file3

看起来目录没有合并,而是列表中最右边的条目lowerdir优先于其他条目。

这就是我认为相关的部分文档

现在可以使用冒号(“:”)作为目录名称之间的分隔符来给出多个较低层。例如:

mount -t overlay overlay -olowerdir=/lower1:/lower2:/lower3 /merged

如示例所示,“upperdir=”和“workdir=”可以省略。在这种情况下,覆盖层将是只读的。

指定的下级目录将从最右边的目录开始向左堆叠。在上面的例子中,lower1 是顶层,lower2 是中间层,lower3 是底层。

我现在想知道我是否应该以不同的方式解释上面的“堆叠”一词,因为我认为它的意思是“合并”。

相关内容