|簡體中文

比思論壇

 找回密碼
 按這成為會員
搜索



查看: 715|回復: 0
打印 上一主題 下一主題

NFS服务报错:RPC map failure的处理

[複製鏈接]

989

主題

1

好友

5296

積分

教授

Rank: 8Rank: 8

  • TA的每日心情

    2024-11-3 15:50
  • 簽到天數: 1258 天

    [LV.10]以壇為家III

    推廣值
    2
    貢獻值
    378
    金錢
    1528
    威望
    5296
    主題
    989

    回文勇士 文明人 中學生 高中生 簽到勳章 簽到達人 男生勳章 大學生 文章勇士 附件高人 附件達人 文章達人 教授

    樓主
    發表於 2012-9-14 18:59:40
    环境:VMware8 虚拟机   

    Linux发行版:CentOS5.8   

    内核版本:2.6.18-308.el5

    现象:开启两台虚拟机,运行的操作系统都是上述操作系统,把其中一台做服务器,开启NFS服务,开启portmap服务。

    另外一台做客户机,开启portmap服务,开启NFS服务。

    做好服务器上的共享目录后,在客户机上运行showmount -e 服务器IP地址发现,提示如下出错信息:

    [root@机器名略去 ~]# showmount -e 192.168.88.128
    mount clntudp_create: RPC: Port mapper failure - RPC: Unable to receive

    提示说rpc端口映射失败,仔细看了所有该启动的服务,发现有几个该启动的服务没有启动,尝试service nfs restart无效。

    在service nfs restart的过程中,会发现部分进程启动失败(这个不是一定的,可能所有进程都正常重启)

    [root@机器名略去 ~]# service nfs restart
    Shutting down NFS mountd: [  OK  ]
    Shutting down NFS daemon: [  OK  ]
    Shutting down NFS quotas: [  OK  ]
    Starting NFS services:  [  OK  ]
    Starting NFS quotas: [  OK  ]
    Starting NFS daemon: [  OK  ]
    Starting NFS mountd: [  OK  ]



    考虑到,可能会不会是Linux的防火墙iptables把数据包拦截了?

    查看iptables -nvxL

    [root@机器名略去 ~]# iptables -nvxL
    Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
        pkts      bytes target     prot opt in     out     source               destination         
         823    65116 RH-Firewall-1-INPUT  all  --  *      *       0.0.0.0/0            0.0.0.0/0         

    Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
        pkts      bytes target     prot opt in     out     source               destination         
           0        0 RH-Firewall-1-INPUT  all  --  *      *       0.0.0.0/0            0.0.0.0/0         

    Chain OUTPUT (policy ACCEPT 331 packets, 32038 bytes)
        pkts      bytes target     prot opt in     out     source               destination        

    Chain RH-Firewall-1-INPUT (2 references)
        pkts      bytes target     prot opt in     out     source               destination         
          88     7528 ACCEPT     all  --  lo     *       0.0.0.0/0            0.0.0.0/0           
          12     1152 ACCEPT     icmp --  *      *       0.0.0.0/0            0.0.0.0/0           icmp type 255
           0        0 ACCEPT     esp  --  *      *       0.0.0.0/0            0.0.0.0/0           
           0        0 ACCEPT     ah   --  *      *       0.0.0.0/0            0.0.0.0/0           
          18     4100 ACCEPT     udp  --  *      *       0.0.0.0/0            224.0.0.251         udp dpt:5353
           0        0 ACCEPT     udp  --  *      *       0.0.0.0/0            0.0.0.0/0           udp dpt:631
           0        0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           tcp dpt:631
         227    15052 ACCEPT     all  --  *      *       0.0.0.0/0            0.0.0.0/0           state RELATED,ESTABLISHED
           0        0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           state NEW tcp dpt:21
           0        0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           state NEW tcp dpt:25
           0        0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           state NEW tcp dpt:2049
           0        0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           state NEW tcp dpt:22
         478    37284 ACCEPT     udp  --  *      *       0.0.0.0/0            0.0.0.0/0           state NEW udp dpt:137
           0        0 ACCEPT     udp  --  *      *       0.0.0.0/0            0.0.0.0/0           state NEW udp dpt:138
           0        0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           state NEW tcp dpt:139
           0        0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           state NEW tcp dpt:445
           0        0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           state NEW tcp dpt:443
           0        0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           state NEW tcp dpt:23
           0        0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           state NEW tcp dpt:80
           0        0 REJECT     all  --  *      *       0.0.0.0/0            0.0.0.0/0           reject-with icmp-host-prohibited



    再查看命令,rpcinfo -p 192.168.88.128

    [root@机器名略去 ~]# rpcinfo -p 192.168.88.128
       program vers proto   port
        100000    2   tcp    111  portmapper
        100000    2   udp    111  portmapper
        100024    1   udp    819  status
        100024    1   tcp    822  status
        100011    1   udp    752  rquotad
        100011    2   udp    752  rquotad
        100011    1   tcp    755  rquotad
        100011    2   tcp    755  rquotad
        100003    2   udp   2049  nfs
        100003    3   udp   2049  nfs
        100003    4   udp   2049  nfs
        100021    1   udp  41030  nlockmgr
        100021    3   udp  41030  nlockmgr
        100021    4   udp  41030  nlockmgr
        100003    2   tcp   2049  nfs
        100003    3   tcp   2049  nfs
        100003    4   tcp   2049  nfs
        100021    1   tcp  37684  nlockmgr
        100021    3   tcp  37684  nlockmgr
        100021    4   tcp  37684  nlockmgr
        100005    1   udp    767  mountd
        100005    1   tcp    770  mountd
        100005    2   udp    767  mountd
        100005    2   tcp    770  mountd
        100005    3   udp    767  mountd
        100005    3   tcp    770  mountd

    可以看到,很多端口没有在iptables中打开。

    有两种解决办法,一种,把这些端口全部在iptables中允许,另外一种,关闭防火墙。

    这两种方法,个人觉得第二种比较方便一些,NFS开启的一些端口是随机的,不能固定加入这些端口。

    在NFS服务器端,

    [root@机器名略去 ~]# service iptables stop
    Flushing firewall rules: [  OK  ]
    Setting chains to policy ACCEPT: filter [  OK  ]
    Unloading iptables modules: [  OK  ]

    再重新在客户端showmount查看,

    [root@cahou ~]# showmount -e 192.168.88.128
    Export list for 192.168.88.128:
    /home/toshiba/sed_test/nfstest 192.168.88.0/24

    显示已经可以挂载,挂载看看,挂载成功,已可以访问该共享目录。

    [root@机器名略去 ~]#  mount -t nfs  192.168.88.128:/home/toshiba/sed_test/nfstest  /root/nfstest
    [root@机器名略去 ~]#
    [root@机器名略去 ~]#
    [root@机器名略去 ~]# cd /root/nfstest/;ls -l
    total 0
    -rw-r--r-- 1 root root 0 Sep  4 15:40 nfstest1
    -rw-r--r-- 1 root root 0 Sep  4 15:40 nfstest2
    -rw-r--r-- 1 root root 0 Sep  4 15:40 nfstest3
    重要聲明:本論壇是以即時上載留言的方式運作,比思論壇對所有留言的真實性、完整性及立場等,不負任何法律責任。而一切留言之言論只代表留言者個人意見,並非本網站之立場,讀者及用戶不應信賴內容,並應自行判斷內容之真實性。於有關情形下,讀者及用戶應尋求專業意見(如涉及醫療、法律或投資等問題)。 由於本論壇受到「即時上載留言」運作方式所規限,故不能完全監察所有留言,若讀者及用戶發現有留言出現問題,請聯絡我們比思論壇有權刪除任何留言及拒絕任何人士上載留言 (刪除前或不會作事先警告及通知 ),同時亦有不刪除留言的權利,如有任何爭議,管理員擁有最終的詮釋權。用戶切勿撰寫粗言穢語、誹謗、渲染色情暴力或人身攻擊的言論,敬請自律。本網站保留一切法律權利。

    手機版| 廣告聯繫

    GMT+8, 2024-11-16 08:45 , Processed in 0.019464 second(s), 27 queries , Gzip On.

    Powered by Discuz! X2.5

    © 2001-2012 Comsenz Inc.

    回頂部