nfs配置以及No route to host解決


原文:https://blog.csdn.net/dreameras/article/details/24176257

1、開啟portmap和nfs服務

     service portmap start

     service nfs start

2、將要共享的目錄寫到exports文件中 假設共享的目錄為 /sharedisk/

     vim /etc/exports

     在exports文件中添加

     /sharedisk    192.168.0.0(rw,no_root_squash,async)

     #表示將/sharedisk這個目錄共享給192.168.0.*這些客戶機,括號中的參數設置意義為:

     ro                          該主機對該共享目錄有只讀權限
     rw                         該主機對該共享目錄有讀寫權限
     root_squash         客戶機用root用戶訪問該共享文件夾時,將root用戶映射成匿名用戶
     no_root_squash   客戶機用root訪問該共享文件夾時,不映射root用戶
     all_squash            客戶機上的任何用戶訪問該共享目錄時都映射成匿名用戶
     anonuid                將客戶機上的用戶映射成指定的本地用戶ID的用戶
     anongid                將客戶機上的用戶映射成屬於指定的本地用戶組ID
     sync                      資料同步寫入到內存與硬盤中
     async                    資料會先暫存於內存中,而非直接寫入硬盤
     insecure                允許從這台機器過來的非授權訪問

3、重啟nfs 或者使用exportfs命令使設置生效

     重啟nfs:

     service nfs restart

     用exportfs

     exportfs -rv

     #exportfs用法

     -a :全部mount或者unmount /etc/exports中的內容 
     -r :重新mount /etc/exports中分享出來的目錄
     -u :umount 目錄
     -v :將詳細的信息輸出到屏幕上

這樣nfs的服務器端就設置好了。

4、在客戶端掛載該目錄:

     在本地創建掛載的目錄

     mkdir /sharedisk

     mount -t nfs 192.168.0.10:/sharedisk  /sharedisk

     #將服務器192.168.0.10上的/sharedisk/ 路徑掛載到本地

此時,如果服務器端的防火牆有開着的話,將會提示錯誤,如:

     mount: mount to NFS server '192.168.0.10' failed: System Error: No route to host.

我在掛載的時候就被卡在這里了,主要是對防火牆的設置不太熟悉,在網上找了一些文檔按照說明做了下還是不行

后來先讀了下iptables的資料,搜索了下nfs所需的服務,結合前面看的設置文檔,終於搞定。


由於nfs服務需要開啟 mountd,nfs,nlockmgr,portmapper,rquotad這5個服務,需要將這5個服務的端口加到iptables里面

而nfs 和 portmapper兩個服務是固定端口的,nfs為2049,portmapper為111。其他的3個服務是用的隨機端口,那就需要

先把這3個服務的端口設置成固定的。



5、查看當前這5個服務的端口並記錄下來 用rpcinfo -p


這里顯示 nfs  2049, portmapper  111, 將剩下的三個服務的端口隨便選擇一個記錄下來

mountd  976

rquotad  966

nlockmgr  33993

6、將這3個服務的端口設置為固定端口

     vim  /etc/services

     在文件的最后一行添加:

     mountd  976/tcp

     mountd  976/udp

     rquotad  966/tcp

     rquotad  966/udp

     nlockmgr 33993/tcp

     nlockmgr 33993/udp

     保存並退出。


7、重啟下nfs服務。  service nfs restart

8、在防火牆中開放這5個端口

     編輯iptables配置文件  

     vim /etc/sysconfig/iptables

     添加如下行:

-A RH-Firewall-1-INPUT -s 192.168.0.0/24 -m state --state NEW -p tcp --dport 111 -j ACCEPT
-A RH-Firewall-1-INPUT -s 192.168.0.0/24 -m state --state NEW -p tcp --dport 976 -j ACCEPT
-A RH-Firewall-1-INPUT -s 192.168.0.0/24 -m state --state NEW -p tcp --dport 2049 -j ACCEPT
-A RH-Firewall-1-INPUT -s 192.168.0.0/24 -m state --state NEW -p tcp --dport 966 -j ACCEPT
-A RH-Firewall-1-INPUT -s 192.168.0.0/24 -m state --state NEW -p tcp --dport 33993 -j ACCEPT

-A RH-Firewall-1-INPUT -s 192.168.0.0/24 -m state --state NEW -p udp --dport 111 -j ACCEPT
-A RH-Firewall-1-INPUT -s 192.168.0.0/24 -m state --state NEW -p udp --dport 976 -j ACCEPT
-A RH-Firewall-1-INPUT -s 192.168.0.0/24 -m state --state NEW -p udp --dport 2049 -j ACCEPT
-A RH-Firewall-1-INPUT -s 192.168.0.0/24 -m state --state NEW -p udp --dport 966 -j ACCEPT
-A RH-Firewall-1-INPUT -s 192.168.0.0/24 -m state --state NEW -p udp --dport 33993 -j ACCEPT

保存退出並重啟iptables

service iptables restart



重新執行步驟4掛載即可


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM