Linux 挂载 FreeBSD 的 NFS v4
这东西比较烦主要是两边的配置文件,参数,定义,都不太好对的上号
参考文档: https://www.jianshu.com/p/c005bbde1cb6
但是该文档有些问题,语焉不详
总结如下:
FreeBSD 配置详见手册 https://www.freebsd.org/doc/handbook/network-nfs.html
要点:
nfsuserd_flags 不需要配置,如果你的主机有合法的域名的话,哪怕是内网 DNS 或者 hosts 文件已经配好
其余全部缺省配置就好,用 bsdconfig 把相关的服务统统 enable 就可以,要包括 nfsuserd
/etc/exports 举例:
V4: /usr/home -network 允许的网段 /掩码
/usr/home/xw -alldirs -maproot=root
pf 开放端口:udp+tcp 111,2049
CentOS 客户端:
几个服务
systemctl start nfs
systemctl start rpcbind
systemctl start rpc-statd
systemctl start nfs-idmapd
systemctl start nfs-mountd
/etc/idmapd.conf 文件,只需要修改一个地方:
Domain = 主机的合法域名(或者内网可解析域名,或者 nfsuserd_flags 里面强行写入的)
在这里我的主机有合法 FQDN abc.xxx.com ,这里只需要写成 xxx.com 就可以
具体 debug 可以看 /var/log/message
最后就是 /etc/fstab 写法
从 NFS v3 过来的回遇到 No such file or directory 错误简直不可理喻
其实是因为 v4 已经定义了一个“根”,就在 /etc/exports 第一行那里
所以根据我的这个例子,挂载的时候,路径不能写成 /usr/home/xw,而必须写成 /xw
host:/xw /mnt/backup nfs4 rw 0 0
options 的写法详见 linux 的 nfs v4 文档,比如 rsize=32768,wsize=32768,intr,noatime
参考文档: https://www.jianshu.com/p/c005bbde1cb6
但是该文档有些问题,语焉不详
总结如下:
FreeBSD 配置详见手册 https://www.freebsd.org/doc/handbook/network-nfs.html
要点:
nfsuserd_flags 不需要配置,如果你的主机有合法的域名的话,哪怕是内网 DNS 或者 hosts 文件已经配好
其余全部缺省配置就好,用 bsdconfig 把相关的服务统统 enable 就可以,要包括 nfsuserd
/etc/exports 举例:
V4: /usr/home -network 允许的网段 /掩码
/usr/home/xw -alldirs -maproot=root
pf 开放端口:udp+tcp 111,2049
CentOS 客户端:
几个服务
systemctl start nfs
systemctl start rpcbind
systemctl start rpc-statd
systemctl start nfs-idmapd
systemctl start nfs-mountd
/etc/idmapd.conf 文件,只需要修改一个地方:
Domain = 主机的合法域名(或者内网可解析域名,或者 nfsuserd_flags 里面强行写入的)
在这里我的主机有合法 FQDN abc.xxx.com ,这里只需要写成 xxx.com 就可以
具体 debug 可以看 /var/log/message
最后就是 /etc/fstab 写法
从 NFS v3 过来的回遇到 No such file or directory 错误简直不可理喻
其实是因为 v4 已经定义了一个“根”,就在 /etc/exports 第一行那里
所以根据我的这个例子,挂载的时候,路径不能写成 /usr/home/xw,而必须写成 /xw
host:/xw /mnt/backup nfs4 rw 0 0
options 的写法详见 linux 的 nfs v4 文档,比如 rsize=32768,wsize=32768,intr,noatime