问题描述
- clnt_create: RPC: Program not registered
-
showmount -e 192.168.40.177
安装nfs服务后,启动portmap,nfs,后可以查看到111,2049端口。使用如上命令就报
clnt_create: RPC: Program not registered这个问题不知道怎么回事,希望大家给予指教,这个前几天搭好了,还可以用,今天重新启动就不行了,重装了也不行,怎么回事
日志:
Jul 14 15:20:32 zsq177 rpc.mountd[7811]: Caught signal 15, un-registering and exiting.
Jul 14 15:20:35 zsq177 kernel: nfsd: last server has exited, flushing export cache
Jul 14 15:20:35 zsq177 kernel: svc: failed to register nfsdv2 RPC service (errno 111).
Jul 14 15:20:35 zsq177 kernel: svc: failed to register nfsaclv2 RPC service (errno 111).
Jul 14 15:20:35 zsq177 kernel: nfsd: last server has exited, flushing export cache
Jul 14 15:20:35 zsq177 kernel: svc: failed to register nfsdv2 RPC service (errno 97).
Jul 14 15:20:35 zsq177 kernel: svc: failed to register nfsaclv2 RPC service (errno 97).
Jul 14 15:20:35 zsq177 kernel: nfsd: last server has exited, flushing export cache
Jul 14 15:20:38 zsq177 kernel: svc: failed to register nfsdv2 RPC service (errno 111).
Jul 14 15:20:38 zsq177 kernel: svc: failed to register nfsaclv2 RPC service (errno 111).
Jul 14 15:20:38 zsq177 kernel: nfsd: last server has exited, flushing export cache
Jul 14 15:20:38 zsq177 kernel: svc: failed to register nfsdv2 RPC service (errno 97).
Jul 14 15:20:38 zsq177 kernel: svc: failed to register nfsaclv2 RPC service (errno 97).
Jul 14 15:20:38 zsq177 kernel: nfsd: last server has exited, flushing export cache
Jul 14 15:20:40 zsq177 kernel: svc: failed to register nfsdv2 RPC service (errno 111).
Jul 14 15:20:40 zsq177 kernel: svc: failed to register nfsaclv2 RPC service (errno 111).
Jul 14 15:20:40 zsq177 kernel: nfsd: last server has exited, flushing export cache
Jul 14 15:20:40 zsq177 kernel: svc: failed to register nfsdv2 RPC service (errno 97).
Jul 14 15:20:40 zsq177 kernel: svc: failed to register nfsaclv2 RPC service (errno 97).
Jul 14 15:20:40 zsq177 kernel: nfsd: last server has exited, flushing export cache
Jul 14 15:21:08 zsq177 rpcbind: rpcbind terminating on signal. Restart with "rpcbind -w"
Jul 14 15:21:48 zsq177 rpcbind: cannot bind * on udp: Address already in use
Jul 14 15:21:48 zsq177 rpcbind: cannot bind tcp: Address already in use
Jul 14 15:21:54 zsq177 kernel: svc: failed to register nfsdv2 RPC service (errno 97).
Jul 14 15:21:54 zsq177 kernel: svc: failed to register nfsaclv2 RPC service (errno 97).
Jul 14 15:21:54 zsq177 kernel: nfsd: last server has exited, flushing export cache
Jul 14 15:21:54 zsq177 kernel: svc: failed to register lockdv1 RPC service (errno 97).
Jul 14 15:21:54 zsq177 kernel: NFSD: Using /var/lib/nfs/v4recovery as the NFSv4 state recovery directory
Jul 14 15:21:54 zsq177 kernel: NFSD: starting 90-second grace perio
解决方案
是不是NFS有问题
root@10.80.3.154]$ service nfs status
rpc.svcgssd is stopped
rpc.mountd is stopped
nfsd is stopped
rpc.rquotad is stopped
root@10.80.3.154]$ service nfs start
Starting NFS services: [ OK ]
Starting NFS quotas: [ OK ]
Starting NFS daemon: [ OK ]
Starting NFS mountd: [ OK ]
root@10.80.3.154]$ chkconfig nfs on
解决方案二:
[root@zsq177 mnt-177]# service portmap start
正在启动 portmap: [确定]
[root@zsq177 mnt-177]# service nfs restart
关闭 NFS mountd: [确定]
关闭 NFS 守护进程: [确定]
关闭 NFS quotas: [确定]
关闭 NFS 服务: [确定]
启动 NFS 服务: [确定]
关掉 NFS 配额: [确定]
启动 NFS 守护进程: [确定]
启动 NFS mountd: [确定]
[root@zsq177 mnt-177]# showmount -e 192.168.40.177
clnt_create: RPC: Program not registered
在另一台主机上重新安装了一下,没有什么问题,用showmount命令可以查看到共享目录,但是这个主机配置的就不可以,不知道怎么回事?
解决方案三:
OK了
我用ps -ef | grep rpc 查看正常的nfs处是[root@zsq software]# ps -ef | grep rpc
rpc 1488 1 0 10:01 ? 00:00:00 rpcbind
rpcuser 1556 1 0 10:01 ? 00:00:00 rpc.statd
root 1605 2 0 10:01 ? 00:00:00 [rpciod/0]
root 1612 1 0 10:01 ? 00:00:00 rpc.idmapd
root 6313 1 0 17:31 ? 00:00:00 rpc.rquotad
root 6329 1 0 17:31 ? 00:00:00 rpc.mountd
root 6424 4677 0 17:38 pts/0 00:00:00 grep rpc
故障的nfs处为:
[root@zsq177 mnt-177]# ps -ef | grep rpc
root 1745 2 0 12:01 ? 00:00:00 [rpciod/0]
root 7207 1 0 15:12 ? 00:00:00 rpc.idmapd
rpc 8335 1 0 15:21 ? 00:00:00 rpcbind
root 9778 1 0 17:34 ? 00:00:00 rpc.rquotad
root 9795 1 0 17:34 ? 00:00:00 rpc.mountd
rpc 9888 1 0 17:41 ? 00:00:00 portmap
rpcuser 9896 1 0 17:42 ? 00:00:00 rpc.statd
root 9903 1 0 17:42 ? 00:00:00 rpc.idmapd
root 9905 2210 0 17:42 pts/0 00:00:00 grep rpc
发现portmap的启动用户不相同,故障处是rpc启动的portmap,查看netstat -unltp | grep 111正常的为:
tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN 1488/rpcbind
tcp 0 0 :::111 :::* LISTEN 1488/rpcbind
udp 0 0 0.0.0.0:111 0.0.0.0:* 1488/rpcbind
udp 0 0 :::111 :::* 1488/rpcbind
故障的为:
[root@zsq177 mnt-177]# netstat -unltp | grep 111
tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN 10017/portmap
tcp 0 0 :::111 :::* LISTEN 8335/rpcbind
udp 0 0 0.0.0.0:111 0.0.0.0:* 10017/portmap
udp 0 0 :::111 :::* 8335/rpcbind
所以就关闭了portmap ,nfs,rpcbind服务
重新执行了:yum reinstall -y rpcbind
在启动这个三个服务,执行showmount -e 192.168.40.177就能看到信息了
Export list for 192.168.40.177:
/home/sq zsq158
这个是怎么解释的还不清楚,要是哪个大神路过这,希望能答疑解惑,先行谢过!!!
解决方案四:
clnt_create: RPC: Program not registered
是由于你nfs服务器没有启动,可通过service nfs start 启动
如果是showmount -e引起一般不会影响mount命令功能。
rpc.sgeccd已停止 同样属于正常。......
答案就在这里:clnt_create: RPC: Program not registered