有人可以告诉我 NFS 在 centos 6 中登录的位置吗?或者我可以在哪里告诉 NFS 发送日志?
目前,似乎没有这样的设置。试图让事情在没有日志的情况下工作是非常令人沮丧的。
[root@houston netshare]# locate nfs| grep log
[root@houston netshare]#
[root@houston netshare]# grep -Rni "nfs" /var/log
/var/log/anaconda.storage.log:23:20:41:33,962 DEBUG : registered device format class NFS as nfs
/var/log/anaconda.storage.log:24:20:41:33,962 DEBUG : registered device format class NFSv4 as nfs4
这是从 livecd 和 yum 更新运行的一天前的 centos 6 安装。
[root@houston ~]# cat /etc/exports
/var/netshare 10.10.0.10(rw,sync,no_root_squash)
/var/netshare/esxi1 192.168.111.119(rw,sync,no_root_squash)
/var/netshare 192.168.111.101(rw,sync.no_root_squash)
[root@houston ~]# chkconfig --list | egrep '(nfs|rpc*)'
nfs 0:off 1:off 2:off 3:off 4:off 5:off 6:off
nfslock 0:off 1:off 2:off 3:on 4:on 5:on 6:off
rpcbind 0:off 1:off 2:on 3:on 4:on 5:on 6:off
rpcgssd 0:off 1:off 2:off 3:on 4:on 5:on 6:off
rpcidmapd 0:off 1:off 2:off 3:on 4:on 5:on 6:off
rpcsvcgssd 0:off 1:off 2:off 3:off 4:off 5:off 6:off
[root@houston ~]# ps aux | egrep '(nfs|rpc*)'
rpc 1482 0.0 0.0 18972 1012 ? Ss Dec06 0:00 rpcbind
root 1587 0.0 0.0 0 0 ? S Dec06 0:00 [fc_rport_eq]
rpcuser 1648 0.0 0.0 23344 1352 ? Ss Dec06 0:00 rpc.statd
root 1690 0.0 0.0 0 0 ? S Dec06 0:00 [rpciod/0]
root 1691 0.0 0.0 0 0 ? S Dec06 0:00 [rpciod/1]
root 1692 0.0 0.0 0 0 ? S Dec06 0:00 [rpciod/2]
root 1693 0.0 0.0 0 0 ? S Dec06 0:00 [rpciod/3]
root 29056 0.0 0.0 107304 280 ? Ss 11:36 0:00 rpc.rquotad
root 29060 0.0 0.0 21760 1264 ? Ss 11:36 0:00 rpc.mountd
root 29111 0.0 0.0 25160 760 ? Ss 11:36 0:00 rpc.idmapd
root 29116 0.0 0.0 0 0 ? S 11:36 0:00 [nfsd4]
root 29117 0.0 0.0 0 0 ? S 11:36 0:00 [nfsd4_callbacks]
root 29118 0.0 0.0 0 0 ? S 11:36 0:00 [nfsd]
root 29119 0.0 0.0 0 0 ? S 11:36 0:00 [nfsd]
root 29120 0.0 0.0 0 0 ? S 11:36 0:00 [nfsd]
root 29121 0.0 0.0 0 0 ? S 11:36 0:00 [nfsd]
root 29122 0.0 0.0 0 0 ? S 11:36 0:00 [nfsd]
root 29123 0.0 0.0 0 0 ? S 11:36 0:00 [nfsd]
root 29124 0.0 0.0 0 0 ? S 11:36 0:00 [nfsd]
root 29125 0.0 0.0 0 0 ? S 11:36 0:00 [nfsd]
root 29357 0.0 0.0 100992 748 pts/1 S+ 12:56 0:00 egrep (nfs|rpc*)
[root@houston ~]# iptables -L
Chain INPUT (policy ACCEPT)
target prot opt source destination
ACCEPT all -- anywhere anywhere
REJECT all -- anywhere loopback/8 reject-with icmp-port-unreachable
ACCEPT all -- anywhere anywhere state RELATED,ESTABLISHED
ACCEPT tcp -- anywhere anywhere tcp dpt:http
ACCEPT tcp -- anywhere anywhere tcp dpt:https
ACCEPT tcp -- anywhere anywhere tcp dpt:51414
ACCEPT tcp -- anywhere anywhere state NEW tcp dpt:ssh
ACCEPT udp -- anywhere anywhere state NEW udp dpt:sunrpc
ACCEPT tcp -- anywhere anywhere state NEW tcp dpt:sunrpc
ACCEPT tcp -- anywhere anywhere state NEW tcp dpt:nfs
ACCEPT tcp -- anywhere anywhere state NEW tcp dpt:32803
ACCEPT udp -- anywhere anywhere state NEW udp dpt:filenet-rpc
ACCEPT tcp -- anywhere anywhere state NEW tcp dpt:892
ACCEPT tcp -- anywhere anywhere state NEW tcp dpt:47649
ACCEPT udp -- anywhere anywhere state NEW udp dpt:892
ACCEPT tcp -- anywhere anywhere state NEW tcp dpt:rquotad
ACCEPT udp -- anywhere anywhere state NEW udp dpt:rquotad
ACCEPT tcp -- anywhere anywhere state NEW tcp dpt:pftp
ACCEPT udp -- anywhere anywhere state NEW udp dpt:pftp
ACCEPT icmp -- anywhere anywhere
LOG all -- anywhere anywhere limit: avg 5/min burst 5 LOG level debug prefix `iptables denied: '
DROP all -- anywhere anywhere
Chain FORWARD (policy ACCEPT)
target prot opt source destination
DROP all -- anywhere anywhere
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
ACCEPT all -- anywhere anywhere
我在 2016 年遇到了同样的问题,在我的工作站上使用 CentOS 6.5,在客户端上使用 CentOS 7(同一主机上的 Vagrant 盒子)。我的具体问题与 OP 的问题相同,我找不到任何 nfsd 日志记录。
使用rpcdebug启用 NFS 日志记录
对我来说,对于将来遇到这个问题的其他人来说,答案是使用命令(在服务器端以 root/sudo 身份):
打开完整调试
/var/log/messages
当您从客户端发出 mount 命令时,这将启用上面ewwhite的帖子中显示的那种输出。
再次关闭,使用
您可以通过将关键字“all”替换为特定模块来减少调试信息的数量。这些列在
rpc.mountd 和 rpc.idmapd 添加 Startup Flags 以增加调试
-d all
您可以通过添加到 rpc.mountd 和-vvv
rpc.idmapd来获取更多调试信息。通过编辑 `/etc/sysconfig/nfs' 和设置来做到这一点:
您需要重新启动 nfs 服务(以 root/sudo 身份)才能应用:
这是 CentOS 6.n 的做法。在 CentOS 7 下,您需要改为查看
systemctl restart [servicename]
。[servicename] 很可能是 nfs,但我还没有在 CentOS 7 下这样做。为清楚起见,这些调试日志消息将写入
/var/log/messages
.你进去看了
/var/log/messages
吗?NFS 在那里记录。我建议
/var/log/
先检查一下,因为日志通常在某个地方。您还可以检查配置文件以了解日志的存储位置。
/var/nfs/nfslog
应该有实际的 NFS 事务日志记录,如果那是你要找的东西,你应该能够在/etc/nfs/nfslog.conf
和中找到其余的日志配置/etc/default/nfslogd
。