Nfs

NFS 導出 ext4 和 btrfs 的覆蓋

  • August 1, 2021

我有 2 個數據源。一個是 btrfs (raid),一個是簡單的 ext4 分區。那些應該透明地顯示為一個。這是一個簡單的只讀範例,但lower/upper/workdir 版本會產生同樣的問題,btrfs 為上層,ext4 為下層。

手動掛載:

mount -t overlay overlay -o lowerdir=/mnt/raid/folder1/:/mnt/ext4/folder1 -o comment=merge  -o nfs_export=on /data/merged

fstab 掛載:

overlay /data/merged overlay defaults,lowerdir=/mnt/raid/folder1/:/mnt/ext4/folder1,comment=merge,nfs_export=on 0 0

這是我的 nfs 導出:

/data/merged 192.168.0.0/255.255.255.0(ro,fsid=1,async,insecure,crossmnt)

exportfs -ra產生:exportfs: /data/merged does not support NFS export

我的配置:帶有 HWE 核心 4.18.0-13-generic 的 Ubuntu 18.04 LTS 這是我的主要配置來源:https ://www.kernel.org/doc/Documentation/filesystems/overlayfs.txt

也許我錯過了一些 NFSv4 的東西(這是 nfs 導出覆蓋文件所需要的)?

編輯:根據要求,我的 sourcecs 坐騎:

UUID=d138b8fa-83e1-4df7-80dc-c1ed7d866f77       /mnt/raid       btrfs   defaults        0       2
UUID=6bb8f391-0872-40cf-8aff-8bdb32632098       /mnt/ext4        ext4    errors=remount-ro 0 2

編輯2:

grep -H . /sys/module/overlay/parameters/*
/sys/module/overlay/parameters/nfs_export:N

kernel.orgdmesg嘗試重現錯誤時,您還必須指定

  • -o index=on
  • -o index=on -o redirect_dir=nofollow當沒有upperdir

你的 mount 命令應該如下所示。

mount -t overlay overlay -o lowerdir=/mnt/raid/folder1/:/mnt/ext4/folder1 -o comment=merge -o nfs_export=on -o index=on -o redirect_dir=nofollow /data/merged

的輸出

/sys/module/overlay/parameters/nfs_export:N

顯示 mountoption 的預設值並驗證它是否實際可用。

引用自:https://serverfault.com/questions/949892