Linux安裝nfs共享檔案
阿新 • • 發佈:2019-08-14
簡介nfs
nfs網路檔案系統常用於共享音視訊,圖片等靜態資源。將需要共享的資源放到NFS裡的共享目錄,通過伺服器掛載實現訪問。
服務端安裝:
yum install -y nfs-utils rpcbind
或者
yum install -y nfs-utils
yum install -y rpcbind
客戶端安裝:
yum install -y nfs-utils
設定開機自啟動
systemctl enable nfs
systemctl enable rpcbind
服務端配置:
1. 建立共享目錄
mkdir -p /data/nfs-share
2. 安裝完nfs服務一般會自動生成配置檔案exports,如果沒有就自己建立一個 /etc/exports
cat /etc/exports
3.編輯共享配置檔案
vi /etc/exports
/data/nfs-share *(rw,sync,no_root_squash)
#/home/nfs *(rw,sync,no_root_squash)
#/data/nfs-share *
第一列:欲共享出去的目錄,也就是想共享到網路中的檔案系統;
第二列:可訪問主機 192.168.152.13 指定IP地址的主機 nfsclient.test.com 指定域名的主機 192.168.1.0/24 指定網段中的所有主機 *.test.com 指定域下的所有主機 * 所有主機
第三列:共享引數
下面是一些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_squas root使用者具有根目錄的完全管理訪問許可權 anonuid=xxx
指定NFS伺服器/etc/passwd檔案中匿名使用者的UID
例如可以編輯/etc/exports為:
/tmp *(rw,no_root_squash)
/home/public 192.168.0.*(rw) *(ro)
/home/test 192.168.0.100(rw)
/home/linux *.the9.com(rw,all_squash,anonuid=40,anongid=40)
4. 啟動nfs
service rpcbind start
# 提示: Redirecting to /bin/systemctl start rpcbind.service
service nfs start
# 提示: Redirecting to /bin/systemctl start nfs.service
5. 檢視掛載
showmount -e 127.0.0.1
返回內容
# Export list for 127.0.0.1:
# /data/nfs-share *
客戶端配置:
1. 建立
# /kubernetes 為本機掛載的目錄
mkdir -p /kubernetes
2. 掛載
mount [服務端ip]:/data/nfs-share /kubernetes
# 例如
mount 10.1.1.99:/home/nfs /kubernetes
其他
配置生效
# 修改共享配置檔案執行
exportfs -r