安裝配置NFS服務(需要安裝兩個包nfs-utils和rpcbind)
#yum install -y nfs-utils
#yum install -y rpcbind
#vi /etc/exports
/home/ 192.168.1.0/24(rw,sync,all_squash,anonuid=501,anongid=501)
#service rcpbind start
#service nfs start
#service iptables stop
#getenforce
此時打開另外一臺虛擬機192.168.1.120
#yum install -y nfs-utils
#showmount -e 192.168.1.110 //查看192.168.1.110上共享的NFS目錄
#mount -t nfs 192.168.1.110:/home /mnt/ //掛載至mnt目錄
#df -h //查看掛載的情況
#cd /mnt
#touch 1.txt
#ll 1.txt //注意文件所屬用戶與所屬組
此時回到服務端192.168.1.110 #vi /etc/exports更改no_root_squash
#exportfs -arv //重新加載配置文件
在192.168.1.120上重新掛載並touch 2.txt查看所屬用戶與組
NFS全稱是network file system
NFS允許一個系統在網絡上與他人共享目錄和文件。通過使用NFS,用戶和程序可以像訪問本地文件一樣訪問遠端系統上的文件。
假如有三臺機器A, B, C,它們需要訪問同一個目錄,目錄中都是圖片,傳統的做法是把這些圖片分別放到A, B, C. 但是使用NFS只需要放到A上,然後A共享給B和C即可。訪問的時候,B和C是通過網絡的方式去訪問A上的那個目錄的。
NFS配置的一些選項說明
rw :讀寫;
ro :只讀;
sync :同步模式,內存中數據時時寫入磁盤;
async :不同步,把內存中數據定期寫入磁盤中;
no_root_squash :加上這個選項後,root用戶就會對共享的目錄擁有至高的權限控制,就像是對本機的目錄操作一樣。不安全,不建議使用;
root_squash:和上面的選項對應,root用戶對共享目錄的權限不高,只有普通用戶的權限,即限制了root;
all_squash:不管使用NFS的用戶是誰,他的身份都會被限定成爲一個指定的普通用戶身份;
anonuid/anongid :要和root_squash 以及all_squash一同使用,用於指定使用NFS的用戶限定後的uid和gid,前提是本機的/etc/passwd中存在這個uid和gid。
客戶端上掛載NFS
客戶端同樣安裝 yum install -y nfs-utils
查看服務器端都共享了哪些目錄
showmount -e 192.168.137.10
在客戶端上掛載服務端的nfs
mount -t nfs -onolock,nfsvers=3 192.168.137.10:/home/ /mnt/ //如果不加 -onolock,nfsvers=3 則在掛載目錄下的文件屬主和組都是nobody,如果指定nfsvers=3則顯示root