Ubuntu部署安裝NFS服務


一、服務器端:

1.1安裝NFS服務:
#執行以下命令安裝NFS服務器,
#apt會自動安裝nfs-common、rpcbind等13個軟件包
sudo apt install nfs-kernel-server

1.2編寫配置文件:

#編輯/etc/exports 文件:
sudo vim /etc/exports
#/etc/exports文件的內容如下:
/data/use *(rw,sync,no_subtree_check,no_root_squash)
解析:
/data/use——NFS服務器端的目錄,用於與nfs客戶端共享
*——允許所有的網段訪問,也可以使用具體的IP
rw——掛接此目錄的客戶端對該共享目錄具有讀寫權限
sync——資料同步寫入內存和硬盤
no_root_squash——root用戶具有對根目錄的完全管理訪問權限
no_subtree_check——不檢查父目錄的權限
1.3創建共享目錄
#在服務器端創建/data/use共享目錄
sudo mkdir -p /data/use

1.4重啟nfs服務:

sudo service nfs-kernel-server restart

1.5常用命令工具:

#在安裝NFS服務器時,已包含常用的命令行工具,無需額外安裝。
#顯示已經mount到本機nfs目錄的客戶端機器。
sudo showmount -e localhost

#將配置文件中的目錄全部重新export一次!無需重啟服務。
sudo exportfs -rv

#查看NFS的運行狀態
sudo nfsstat

#查看rpc執行信息,可以用於檢測rpc運行情況
sudo rpcinfo

#查看網絡端口,NFS默認是使用111端口。
sudo netstat -tu -4

二、客戶端:

2.1安裝客戶端工具:
#在需要連接到NFS服務器的客戶端機器上,
#需要執行以下命令,安裝nfs-common軟件包。
#apt會自動安裝nfs-common、rpcbind等12個軟件包
sudo apt install nfs-common

2.2查看NFS服務器上的共享目錄

#顯示指定的(hcg-bg-as-01)NFS服務器上export出來的目錄
#hcg-bg-as-01為服務端主機名或IP地址
sudo showmount -e hcg-bg-as-01

2.3創建本地掛載目錄

sudo mkdir -p /data/use

 2.4掛載共享目錄

#將NFS服務器192.168.3.167上的目錄,掛載到本地的/data/use/目錄下
mount -t nfs hcg-bg-as-01:/data/use /data/use

mount -t nfs -o sync,noac hcg-nfs-01:/data/freeswitch /data/freeswitch

2.4自動掛載

vim /etc/fstab
hcg-nfs-01:/data/freeswitch /data/freeswitch nfs defaults 0 0
hcg-nfs-01:/data/freeswitch /data/freeswitch nfs sync,noac 0 0
#注:在沒有安裝nfs-common或者nfs-kernel-server軟件包的機器上,
#直接執行showmount、exportfs、nfsstat、rpcinfo等命令時,
#系統會給出友好的提示,
#比如直接showmount會提示需要執行sudo apt install nfs-common命令,
#比如直接rpcinfo會提示需要執行sudo apt install rpcbind命令。

附錄

NFS常用參數
ro——只讀訪問
rw——讀寫訪問
sync——所有數據在請求時寫入共享
async——nfs在寫入數據前可以響應請求
secure——nfs通過1024以下的安全TCP/IP端口發送
insecure——nfs通過1024以上的端口發送
wdelay——如果多個用戶要寫入nfs目錄,則歸組寫入(默認)
no_wdelay——如果多個用戶要寫入nfs目錄,則立即寫入,當使用async時,無需此設置
hide——在nfs共享目錄中不共享其子目錄
no_hide——共享nfs目錄的子目錄
subtree_check——如果共享/usr/bin之類的子目錄時,強制nfs檢查父目錄的權限(默認)
no_subtree_check——和上面相對,不檢查父目錄權限
all_squash——共享文件的UID和GID映射匿名用戶anonymous,適合公用目錄。
no_all_squash——保留共享文件的UID和GID(默認)
root_squash——root用戶的所有請求映射成如anonymous用戶一樣的權限(默認)
no_root_squash——root用戶具有根目錄的完全管理訪問權限
anonuid=xxx——指定nfs服務器/etc/passwd文件中匿名用戶的UID
anongid=xxx——指定nfs服務器/etc/passwd文件中匿名用戶的GID

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM