centos7 搭建NFS服務

1、 所需要的軟件
RPC 主程序:rpcbind
在啓動任何RPC服務之前,我們都需要啓動rpcbind才行

NFS 主程序:nfs-utils

2、 NFS的軟件結構
主要配置文件:/etc/exports
可以參考我們配置好的文件exports

NFS文件系統維護命令: /usr/sbin/exportfs
exportfs 這個可是好命令啊,如果不想重新處理/etc/exports文件,當重新設置完/etc/exports後不需要重新啓動NFS可以使用這個命令來做

共享資源的共享文件目錄:/ var/lib/nfs/*tab
/var/lib/nfs/etab:主要記錄NFS所共享出來的目錄的完整權設置值

						/var/lib/nfs/xtab :則記錄曾經鏈接到此NFS服務器的相關客戶機 (不過我沒有發現記錄)

客戶端查詢服務器共享資源的命令:/usr/sbin/showmount
服務端命令:showmount -e localhost
客戶端命令: showmount -e 192.168.137.153

客戶機不需要啓動NFS服務不過需要啓動rpcbind服務

3、 啓動NFS
先啓動rpcbind服務
命令:systemctl restart rpcbind.service

 再啓動nfs-utils服務

命令:systemctl start nfs-utils.service

rpcbind 啓動的端口在111 ,同時在tcp與udp
NFS 本身服務啓動就在端口2049上
其他的prc*服務端口都是隨機產生的,

4、查看rpc服務的註冊狀態
rpcinfo -p localhost

5、 NFS的連接查看
查看我們設置好的相關exports共享目錄信息
命令:showmount -e localhost

不過還有很多默認的參數可以使用這個命令查看
命令:tail /var/lib/nfs/etab

我們介紹下第二步所說的命令:exportfs
exportfs [-aruv]
-a :全部掛載
-r :重新掛載
-u : 卸載某一目錄
-v : 在exportfs的時候,將共享的目錄顯示到屏幕

6、 NFS客戶端的設置
(1) 確定開啓了rpcbind服務
(2) 掃描NFS服務端共享了哪些目錄
(3) 在本地建立預計要掛載點目錄
(4) 利用mount將遠程主機直接掛載到相關目錄

我準備將遠程主掛載到我的/home/nfs
#mkdir /home/nfs
#ll /home/

我趕緊的看了下遠程共享目錄,因爲忘記服務端共享什麼目錄了
#showmount -e 192.168.137.153

現在就開始實驗將服務器共享目錄掛載到本地的/home/nfs目錄下

#mount.nfs 192.168.137.153:/home/nfs /home/nfs/

掛載成功

7、 卸載掛載目錄
#umount.nfs /home/nfs/

卸載掛載目錄成功

8、 深入——客戶端掛載
除了NFS服務需要保護之外,我們使用的NFS文件系統也需要自我保護
#mount.nfs -o nosuid,nodev,noexec,rw 192.168.137.153:/home/nfs/ /home/nfs/
這樣一來掛載的這個文件系統只能進行數據訪問,相對於客戶端是比較安全一些的
nosuid :只要使用nosuid就可以取消SUID的功能了

nodev :是否可以保留設備文件的特殊功能? 一般來說只有/dev這個目錄纔會有特殊的設備,因此可以選擇nodev

noexec:是否具有執行二進制文件的權限? 如果想要掛載的僅是數據分區(例如/home),那麼可以選擇noexec

9、 額外的NFS掛載參數
如果NFS是用在告訴運行的環境當中的話,那麼建議加上以下參數
#mount.nfs -o nosuid,noexec,rw,nodev -o bg,soft,rsize=32700,wsize=32700 192.168.137.153:/home/nfs /home/nfs/

bg :後臺執行
soft :RPC會在time out後重復呼叫。直到對方恢復連接爲止
rsize :讀出區塊大小
wsize :寫入區塊大小

10、 測試上面的假如服務端脫機了
服務端 192.168.137.153 :systemctl stop nfs

客戶端 192.168.137.153 :df

客戶端這邊df查看磁盤目錄加載不出來,

現在我們將服務端192.168.137.153 開啓NFS服務
#systemctl start nfs

客戶端192.168.137.151 立馬有反應了,因爲soft掛載參數,一直呼叫主機,當服務端開啓NFS服務,客戶端這邊PRC註冊成功加載出磁盤容量

測試完成

11、 使NFS開機就掛載
#vim /etc/rc.d/rc.local
添加:
mount.nfs -o nosuid,noexec,nodev,rw,bg,soft,rsize=9999,wsize=9999 192.168.137.153:/home/nfs /home/nfs

現在df查看下是否掛載服務端的共享目錄

沒有發現,接下來就是重啓系統看看開機是否會自動掛載NFS服務端共享目錄,前提記住服務端沒有關機哈,不然你讓客戶端怎麼去獲取服務端的共享目錄。
#reboot
重啓df 並沒有發現掛載上去了,原因是因爲配置文件/etc/rc.d/rc.local裏面的這句話
#Please note that you must run ‘chmod +x /etc/rc.d/rc.local’ to ensure
使用它要修改權限 ,它沒有執行權限

現在就修改權限吧
#chmod u+x /etc/rc.d/rc.local
#reboot
現在使用df查看下是否成功掛載

發佈了33 篇原創文章 · 獲贊 0 · 訪問量 708
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章