NFS介紹linux
NFS服務經常用到,用於在網絡上共享存儲vim
NFS工做原理centos
(在centos版本5及以前的版本,RPC服務叫portmap,以後就叫:rpcbind)網絡
NFS服務須要藉助RPC協議進行通訊。ide
NFS服務端安裝配置工具
先準備兩臺機器,服務端(A)和客戶端(B)
ui
(A:cansheng1:133;B:cansheng2 :134)spa
1.分別在兩臺機器上都安裝:nfs-utils rpcbindorm
yum install -y nfs-utils rpcbindip
2.編輯/etc/exports(服務端A)
vim /etc/exports 添加內容:
/home/nfstestdir 192.168.136.0/24(rw,sync,all_squash,anonuid=1000,anongid=1000)
3.建立共享目錄(服務端A),和修改權限
mkdir /home/nfstestdir
chmod 777 /home/nfstestdir /方便實驗
4.查看一下rpcbind的監聽端口(默認爲111)
netstat -lnpt
5.啓動服務:(服務端A)
systemctl start rpcbind
systemctl start nfs
systemctl enable rpcbind
systemctl enable nfs
NFS配置選項
ip與(rw之間不能有空格, 不然客戶端掛載的目錄會變成只讀..
!!客戶端想要實現將服務端共享出來的數據(目錄),還須要在客戶端掛載共享的目錄。
客戶端掛載:
1.安裝: yum install -y nfs-utils(上訴操做已安裝)
2.showmount -e 192.168.136.133 (查看到這個ip(在服務段定義共享的ip段),是否能共享着服務端的共享文件)
{
若是這一步出現錯誤:
1.是否rpcbind服務開啓,監聽 的端口是否也是正常監聽
2.防火牆和selinux影響:(關閉,兩臺機器都關閉)
systemctl stop firewalld
setenforce 0
}
3.掛載(客戶端上B)
mount -t nfs 192.168.136.133:/home/nfstestdir /mnt
4.建立一個文件,看看是否能實現共享:(客戶端)
touch /mnt/canshenglinux.txt
此時在A服務端上的共享文件能看到這個在B客戶端上建立的文件
ls -l /mnt/canshenglinux.txt //能夠看到文件的屬主和屬組都爲1000(客戶端B)
ls -l //home/nfstestdir/canshenglinux.txt //能夠看到文件的屬主和屬組都爲user1(服務端A)
exportfs命令
當改變/etc/exports配置文件後,使用exportfs命令掛載不須要重啓NFS服務。
(當咱們的服務端須要修改/etc/exports配置文件(增長或者刪除其餘內容),且要文件生效,這時候須要重啓咱們的nfs服務,可是咱們客戶端的機器仍然在掛載着咱們共享的文件,這是重啓咱們的服務,會使客戶端的 機器對掛載目錄進行掛起操做,影響很大。
可是咱們先把客戶端的掛載目錄(掛載點)先卸載,再在服務端修改配置文件,而後重啓nfs服務,最後在客戶端上再從新掛載,這樣會很繁瑣!)
使用exportfs命令:
1.編輯配置文件(服務端A)
vim /etc/exports //增長
/tmp/ 192.168.136.134(rw,sync,no_root_squash)
2.執行:exportfs -arv (執行這個命令就是至關從新加載服務)
3.在客戶端上驗證是否有新增的共享目錄:(客戶端B)
showmount -e 192.168.136.133
4.掛在/tmp/共享目錄
(其實用mount命令來掛載NFS服務是有講究的,它要用-t nfs 來指定掛在的類型爲nfs
,另外掛載NFS 服務時,經常使用-o nolock(不加鎖)
mount -t nfs -o nolock 192.168.136.133:/tmp /canshenglinux
)
NFS客戶端問題
mount -t nfs -o remount,nfsvers=3 192.168.136.133:/tmp /canshenglinux
從新掛在且指定服務版本爲3版本
使用yum安裝工具時,若是出現很是慢的下載速度:
epel 太慢,能夠暫時把epel禁止
(1)cd/etc/yum.repos.d/
(2)mv epel.repo epel.repo.bak
則再次下載時就能夠表面epel對下載速度產生影響