centos 7 安裝nfs 服務
一、安裝
yum install -y nfs-utils
二、配置
vim /etc/exports
/data/nfs/ 192.168.56.0/24(rw,sync,no_root_squash,no_all_squash)
三、啟動nfs服務
先為rpcbind和nfs做開機啟動:(必須先啟動rpcbind服務)
systemctl enable rpcbind.service
systemctl enable nfs-server.service
然後分別啟動rpcbind和nfs服務:
systemctl start rpcbind.service systemctl start nfs-server.service
確認NFS伺服器啟動成功:rpcinfo -p
檢查 NFS 伺服器是否掛載我們想共享的目錄 /data/nfs/:exportfs
#使配置生效exportfs -r
可以檢視到已經ok
/data/nfs/ 192.168.56.0/24
四、在從機上安裝NFS 客戶端
首先是安裝nfs,同上,然後啟動rpcbind服務yum install -y nfs-utils
先為rpcbind做開機啟動:
systemctl enable rpcbind.service
然後啟動rpcbind服務:
systemctl start rpcbind.service
注意:客戶端不需要啟動nfs服務
檢查 NFS 伺服器端是否有目錄共享:showmount -e nfs伺服器的IP
showmount -e 192.168.56.44
Export list for 192.168.56.44:
/data/nfs 192.168.56.0
五 常用命令
1、exportfs
如果我們在啟動了NFS之後又修改了/etc/exports,是不是還要重新啟動nfs呢?這個時候我們就可以用exportfs 命令來使改動立刻生效,該命令格式如下:
exportfs [-aruv] -a # 全部掛載或解除安裝 /etc/exports中的內容 -r #重新讀取/etc/exports 中的資訊 ,並同步更新/etc/exports、/var/lib/nfs/xtab -u #解除安裝單一目錄(和-a一起使用為解除安裝所有/etc/exports檔案中的目錄) -v #在export的時候,將詳細的資訊輸出到螢幕上。
具體例子:
exportfs -au #解除安裝所有共享目錄
2、nfsstat
檢視NFS的執行狀態,對於調整NFS的執行有很大幫助。
3、rpcinfo
檢視rpc執行資訊,可以用於檢測rpc執行情況的工具
rpcinfo -p看出RPC開啟的埠所提供的程式有哪些。
4、showmount
-a 顯示已經於客戶端連線上的目錄資訊
-e IP或者hostname 顯示此IP地址分享出來的目錄
最後注意兩點,雖然通過許可權設定可以讓普通使用者訪問,但是掛載的時候預設情況下只有root可以去掛載,普通使用者可以執行sudo。
NFS server 關機的時候一點要確保NFS服務關閉,沒有客戶端處於連線狀態!通過showmount -a 可以檢視,如果有的話用kill killall pkill 來結束,(-9 強制結束
NFS client啟動的時候,如果做了自動掛載,一定要保證NFS server先起來,否則開機會啟動不了
5、防火牆策略
firewall-cmd --permanent --add-service=nfs
systemctl restart firewalld.service
六、許可權
讓 nfs client以某個使用者來掛載和訪問nfs server共享的磁碟
nfs server
chown elk.elk /data/nfs/ -R
ll /data/nfs/ -d
drwxr-xr-x 2 elk elk 21 Nov 7 18:13 /data/nfs/
#id elk
uid=1003(elk) gid=1003(elk) groups=1003(elk)
nfs 客戶端
id elk #保證uid還server的保持一致
uid=1003(elk) gid=1003(elk) groups=1003(elk)
mount -t nfs 192.168.56.44:/data/nfs /data/esbackup/