Nfs

使用 OverlayFS 合併兩個 NFS 共享

  • March 2, 2016

我有兩個目錄(a 和 b),它們是與文件 foo.txt 和 bar.txt 共享的 NFS:

我想將這兩個目錄合併到目錄合併(不必是可寫的)

這可以通過命令:

sudo mount -t overlay -olowerdir=a:b overlay merge

乍一看一切正常:

.
├── a
│   └── foo.txt
├── b
│   └── bar.txt
└── merge
   ├── bar.txt
   └── foo.txt

但我無法讀取文件內容: $ cat merge/foo.txt cat: merge/foo.txt: No such device or address

這僅發生在 NFS 共享上,在普通 FS 上沒有問題。


根據文件https://www.kernel.org/doc/Documentation/filesystems/overlayfs.txt

覆蓋文件系統結合了兩個文件系統——一個“上層”文件系統和一個“下層”文件系統。

兩個只讀文件系統的只讀覆蓋可以使用任何文件系統類型。

所以我猜NFS不是問題。

你用的是什麼核心?似乎在核心 4.2 中引入了一個錯誤:

https://github.com/coreos/rkt/issues/1537

引用自:https://unix.stackexchange.com/questions/250774