====== Linux NFS 設定 ======
* NFS Server : 192.168.11.250 共用目錄為 /data
* NFS Clien : 192.168.11.232(vm-web)
===== 安裝語法 =====
* CentOS
yum install nfs-utils nfs-utils-lib
* Ubuntu
sudo apt install nfs-common nfs-kernel-server
* Alpine
sudo apk add nfs-utils
==== NFS Server 端 ====
vi /etc/hosts
:
192.168.11.232 vm-web.ichiayi.com vm-web
chkconfig nfs on
vi /etc/exports
/data/ vm-web(rw,no_root_squash,no_all_squash,sync)
* CentOS
systemctl start nfs
* Ubuntu
systemctl start nfs-server.service
* /etc/exports 內的設定的 nfs client 的 hostname 必須要正確, 否則當 clinet 要 mount 時會出現如下訊息:
mount: 192.168.11.250:/data failed, reason given by server: 拒絕不符權限的操作
* 每次更動 /etc/exports 之後, 必須要重新啟動 nfs 服務
* CentOS
systemctl start nfs
* Ubuntu
systemctl start nfs-server.service
* 如果想要簡單的設定權限, 讓所有連入 NFS 的使用者都是使用 root 權限可以在 export 的定義內加上 ,anonuid=0,anongid=0 \\ Exp.
:
/STORAGE 10.0.5.10(rw,sync,no_subtree_check,all_squash,anonuid=0,anongid=0)
* OpenMediaVault 可以這樣設定 \\ {{:tech:2023-02-07_162019.png?600|}}
===== NFS Client 端 =====
===== 修正 hostname =====
vi /etc/hosts
127.0.0.1 localhost.localdomain localhost vm-web
192.168.11.250 pd-920.ichiayi.com nfs-920
vi /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=vm-web.ichiayi.com
GATEWAY=192.168.11.250
hostname vm-web
修正之後先登出,再登入一次就可以看到 hostname 已經變成 vm-web 如下所示:
[root@vm-web ~]#
==== 測試驗證 ====
* 用 NFS Server IP 或 hostname 來顯示開放分享的目錄清單
showmount -e 192.168.11.250
showmount -e nfs-920
++++顯示執行結果|
[root@vm-web ~]# showmount -e 192.168.11.250
Export list for 192.168.11.250:
/data vm-web.ichiayi.com
[root@web /]# showmount -e nfs-920
Export list for nfs-920:
/data 192.168.1.232
[root@web /]#
++++
* 建立與掛載共用目錄
mkdir /data
mount -t nfs 192.168.11.250:/data /data
df -k
++++顯示執行結果|
[root@vm-web ~]# mount -t nfs 192.168.11.250:/data /data
[root@vm-web ~]# df -k
Filesystem 1K-區段 已用 可用 已用% 掛載點
/dev/mapper/VolGroup00-LogVol00
7321528 1188696 5760916 18% /
/dev/sda1 101086 27955 67912 30% /boot
none 192384 0 192384 0% /dev/shm
192.168.11.250:/data 192292448 167842528 14681984 92% /data
++++
如果不成功,就回去修正 NFS Server 端的 /etc/exports 內設定內容, 並重新啟動 nfs 服務.
==== 設定開機自動掛載 ====
當測試確認沒問題之後, 可以更改 /etc/fstab 來定義自動開機掛載 nfs 共用目錄
vi /etc/fstab
:
192.168.11.250:/data /data nfs rw 0 0
**如果發覺效能太差, 可以改用 udp 的模式加快速度, 將 fstab 改成以下**
:
192.168.11.250:/data /data nfs rw,udp 0 0
* 當 mount 之後看到 nfs 的目錄 owner 都變成 nobody 時, 可能是 nfs client 端的 rpc.statd 沒有啟動, 可透過重新開機解決
===== 參考資料 =====
* http://www.howtoforge.com/setting-up-an-nfs-server-and-client-on-centos-6.3
* http://www.cyberciti.biz/faq/centos-fedora-rhel-nfs-v4-configuration/
* http://www.sofee.cn/blog/2006/09/29/46/
* http://www.centos.org/docs/5/html/Deployment_Guide-en-US/s1-nfs-client-config-options.html
* https://serverfault.com/questions/539267/nfs-share-with-root-for-anonuid-anongid
{{tag>linux nfs 網路磁碟 儲存}}