Linux

NFSv4 如何在 FreeBSD 上共享 ZFS 文件系統?

  • September 28, 2021

使用 FreeBSD 9,並像這樣創建了 ZFS 文件系統

zfs create tank/project1
zfs set sharenfs=on tank/project1

網上有很多關於在 FreeBSD 上設置 NFSv3 的方法,但我找不到任何一個 NFSv4 以及何時使用 ZFS 完成 NFS 共享。

例如,這個方法說我必須通過 重新啟動(NFSv3)nfsd -u -t -n 4,但我什至沒有nfsd

當我做

# echo /usr/ports/*/*nfs*
/usr/ports/net-mgmt/nfsen /usr/ports/net/nfsshell /usr/ports/net/pcnfsd /usr/ports/net/unfs3 /usr/ports/sysutils/fusefs-chironfs /usr/ports/sysutils/fusefs-funionfs /usr/ports/sysutils/fusefs-unionfs
#

我沒有看到任何 NFSv4 伺服器,我可以使用pkg_add.

問題

如何安裝和設置 NFSv4,以便可以從例如 Linux 主機安裝共享?

NFSv4 內置在 FreeBSD 上(8.x 中的實驗支持,9.x 和 lter 中的生產質量)。

nfsd 應該位於/etc/rc.d/nfsd

您應該首先在 rc.conf 文件中啟用它或執行/etc/rc.d/nfsd onestart

  1. 啟用 nfs

echo nfs_server_enable="YES" >> /etc/rc.conf

對於 NFSv4,您還需要以下內容:

echo nfsv4_server_enable="YES" >> /etc/rc.conf (啟用 NFSv4)

echo nfsuserd_enable="YES" >> /etc/rc.conf (v4 所需的 NFS 使用者/組資訊)

2)創建目錄並導出它們

# mkdir -p /mnt/{dir1,dir2}
# vi /etc/exports 

(將以下行添加到/etc/exports文件中)

/mnt/dir1  -alldirs  192.168.1.x/24
/mnt/dir2  -alldirs  192.168.1.x/24
  1. 使用/etc/rc.d/nfsd restart 或 重新啟動 nfsdservice nfsd restart

有關更多資訊,請參閱FreeBSD 手冊中處理 NFS 的部分

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