我们已经设置了 iptables,允许 TCP/UDP 端口 111 2049 32769 32803 892
..我在 /etc/sysconfig/nfs 中做了以下更改
RPCMOUNTDOPTS="-p 892"
和
/etc/sysctl.conf
fs.nfs.nlm_tcp端口=32803
fs.nfs.nlm_udpport=32769
按照 Redhat 文档中所述,在 Redhat/Centos 7 的防火墙后运行 nfs
nfs 仍然没有绑定到这个提供的端口,并且占用任何随机端口,由于 iptables,这会限制任何客户端连接到 nfs。我们无法停止 iptables。
尝试使用 rpc.mountd -p 892 这个命令但似乎不起作用..
o/p-rpcinfo-p
程序与协议端口服务
100000 4 tcp 111 portmapper
100000 3 tcp 111 portmapper
100000 2 tcp 111 portmapper
100000 4 udp 111 portmapper
100000 3 udp 111 portmapper
100000 2 udp 111 portmapper
100024 1 udp 46390 status
100024 1 tcp 38521 status
100005 1 udp 20048 mountd
100005 1 tcp 20048 mountd
100005 2 udp 20048 mountd
100005 2 tcp 20048 mountd
100005 3 udp 20048 mountd
100005 3 tcp 20048 mountd
100003 3 tcp 2049 nfs
100003 4 tcp 2049 nfs
100227 3 tcp 2049 nfs_acl
100003 3 udp 2049 nfs
100003 4 udp 2049 nfs
100227 3 udp 2049 nfs_acl
100021 1 udp 40472 nlockmgr
100021 3 udp 40472 nlockmgr
100021 4 udp 40472 nlockmgr
100021 1 tcp 35454 nlockmgr
100021 3 tcp 35454 nlockmgr
100021 4 tcp 35454 nlockmgr
任何有关这个世界的帮助都将受到赞赏。
答案1
嗯,/usr/lib/systemd/system/nfs-mountd.service 使用 $RPCMOUNTDARGS 选项调用 rpc.mountd,这与 /etc/sysconfig/nfs 中的 RPCMOUNTDOPTS 不同。
还有另一个名为 nfs-config.service 的服务,它预处理 NFS 配置并将其输出到 /run/sysconfig/nfs-utils,并将 RPCMOUNTDOPTS 转换为 RPCMOUNTDARGS。
虽然 nfs.service 在使用停止/启动或重新启动时不会调用 nfs-config,但 /etc/sysconfig/nfs 中的配置不会更新 /run/sysconfig/nfs-utils。
解决方案很简单,在重新启动 nfs.service 之前运行“systemctl restart nfs-config”。