一種使用於分散式文件系統的協定。功能是通過網絡讓不同的機器、不同的操作系統能夠彼此分享個別的數據,讓應用程序在客戶端通過網絡訪問位於服務器磁盤中的數據,是在類unix系統間實現磁盤文件共享的一種方法。
NFS的基本原則:允許不同的客戶端及服務端通過一組RPC分享相同的文件系統。它是獨立於操作系統,容許不同硬件及操作系統的西通過共同進行文件的分享。
RPC(remote procedure call-遠程過程調用)是能使客戶端執行其他系統中程序的一種機制。
關閉防火牆和selinux,使用server1與server2虛擬機,server1共享文件。
1). 安裝nfs軟件
yum install nfs-utils -y
systemctl start nfs-server
systemctl enable nfs-server
2). 設置共享內容
mkdir /nfshare/nfs{1..5} -p
3). 修改配置
vim /etc/exports
@@
/nfshare 172.25.254.1/24(ro)
@@
##第一列/nfshare表示需要共享的目錄
##IP 表示允許哪個客戶端訪問
##IP 後括號裏的設置表示對該共享文件的權限
ro ##只讀訪問
rw ##讀寫訪問
sync ##所有數據在請求時寫入共享
Hide ##在 NFS 共享目錄中不共享其子目錄
no_hide ##共享 NFS 目錄的子目錄
all_squash 共##享文件的 UID 和 GID 映射匿名用戶anonymous,適合公用目錄。
no_all_squash##保留共享文件的 UID 和 GID(默認)
root_squash##root用戶的所有請求映射成如anonymous 用戶一樣的權限(默認)
no_root_squas##root 用戶具有根目錄的完全管理訪問
權限
exportfs -rv##刷新配置,使配置生效
[root@server1 ~]# vim /etc/exports
@/nfshare 172.25.254.1/24(rw)@
[root@server1 ~]# exportfs -rv
exporting 172.25.254.1/24:/nfshare
[root@server1 ~]# showmount -e 172.25.254.1
Export list for 172.25.254.1:
/nfshare 172.25.254.1/24
**手動掛載
yum install nfs-utils -y
mkdir /mnt/nfsmount//創建客戶端掛載目錄
showmount -e 172.25.254.1//顯示某ip共享的目錄
mount 172.25.254.1:/nfshare /mnt/nfsmount//掛在共享目錄到本地
vim /etc/fatab//永久掛載
```
//在文件後添加下面一行內容
172.25.254.1:/nfshare /mnt/nfsmount nfs4 defaults 0 0
```
注意:nfs,cifs也屬於文件系統格式,是網絡文件系統格式。
**自動掛載到默認目錄
yum install autofs -y
systemctl start autofs
systemctl enable autofs
cd /net/172.25.254.1//訪問服務端共享的目錄
vim /etc/sysconfig/autofs//修改釋放掛載資源的時間
```
13 TIMEOUT=5
```
[root@server1 ~]# systemctl start autofs
[root@server1 ~]# systemctl enable autofs
[root@server1 ~]# cd /net/172.25.254.1
[root@server1 172.25.254.1]# vim /etc/sysconfig/autofs
**自動掛載到自定義目錄
vim /etc/auto.master
/westos/etc/auto.westos
vim /etc/auto.westos
*172.25.254.126:/nfshare/&
redhat 172.25.254.126:/nfshare
systemctl restart autofs
cd /westos
如果有報錯根據錯誤信息排查。常見問題有 rpc 服務沒有啓動、防火牆沒關閉、selinux 未關閉等問題。