如何在Linux 3.19中使用Overlayfs来挂载多个lowerdir

时间:2016-01-14 10:23:27

标签: linux-kernel filesystems embedded-linux

有一个类似的question,答案指向将内置于3.19 Linux内核中的Overlay,它将支持多个较低层。答案提供的链接(以及我偶然发现的其他页面)在Linux 3.19中没有提供有关如何执行此操作的任何信息,并且只表明它是可能的。

我目前正在运行3.19,试图让多个较低的图层叠加时出现问题。

从我已阅读的内容来看,安装多个lowerdir s的叠加层看起来像这样

    mount -t overlay overlay -o lowerdir=/firstlower:/secondlower,upperdir=/upper/root,workdir=/upper/workdir /merged

其中两个较低层是冒号分隔的。我虽然没有找到足够可靠的来源来确认这些信息,但我希望这篇文章有所帮助。

使用上面的代码会出现错误:

      overlayfs: failed to resolve '/firstlower:/secondlower': -2
      mount: mounting overlay on /merged failed: Invalid argument

有谁知道出了什么问题?我知道我可以覆盖这两个较低层,然后重新覆盖结果但是我希望能够在一行上执行此操作,因为要求在3.19 Overlay中有一个workdir我想要缺席来自我们较低层的任何一层。

1 个答案:

答案 0 :(得分:1)

指定多个较低目录的语法正确且有效,如https://www.kernel.org/doc/Documentation/filesystems/overlayfs.txt中所述。但显然支持此功能的commit仅用于4.0而不是3.19。

ravi@tuxpad linux$ git describe --contains  a78d9f0d5d5ca9054703376c7c23c901807ddd87
v4.0-rc1~2^2~17^2~8