centos7 安裝nfs
本實驗環境:NFS server A- 172.16.169.128
NFS Client B- 172.16.169.139
C- 172.16.169.131
一.在A機上安裝NFS服務器所需的軟件包:
yum install -y nfs-utils
(實際上需要安裝兩個包nfs-utils和rpcbind, 不過當使用yum安裝nfs-utils時會把rpcbind一起安裝上)
二.編輯exports文件,添加B和C
/home/nfs 172.16.169.129(rw,sync,fsid=0) 172.16.169.131(rw,sync,fsid=0)
/home/nfs:這個是本地要共享出去的目錄,後面的ip是允許訪問的主機ip,可以是一個ip也可以是一個ip段:172.16.169.0/24
括號中部分: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。
fsid=0表示將/home/nfs整個目錄包裝成根目錄
還可以 :
/opt/test/ 172.16.169.0/24(rw,no_root_squash,no_all_squash,sync,anonuid=501,anongid=501)
三.啟動A上的nfs服務
先為rpcbind和nfs做開機啟動:
systemctl enable rpcbind.service
systemctl enable nfs-server.service
然後分別啟動rpcbind和nfs服務:
systemctl start rpcbind.service
systemctl start nfs-server.service
確認NFS服務器啟動成功:
rpcinfo -p
通過查看service列中是否有nfs服務來確認NFS是否啟動。
showmount -e 172.16.169.128
查看可掛載目錄及可連接的IP,顯示有B和C的ip就是成功
四.關閉A機上的防火墻或者給防火墻配置nfs的通過規則
還是關閉簡單啊!詳細請看http://www.cnblogs.com/bky185392793/p/7395866.html
systemctl stop firewalld.service
五.B和C上配置
1、安裝nfs,並啟動服務。
yum install -y nfs-utils
systemctl enable rpcbind.service
systemctl start rpcbind.service
客戶端不需要啟動nfs服務,只需要啟動rpcbind服務.
2、檢查 NFS 服務器端是否有目錄共享
showmount -e 172.16.169.128
3、使用 mount 掛載A服務器端的目錄/home/nfs到客戶端B的目錄/home/nfs下
mkdir /home/nfs
mount -t nfs 172.16.169.128:/home/nfs/ /home/nfs/
df -h查看容量
4、掛載完成,可以正常訪問本機下的/home/nfs,如果在服務端A在共享目錄/home/nfs中寫入文件,B、C機上可以看到,但是不能在這個目錄中寫入文件.
在服務端A建立一個共享目錄,允許ABC都寫入
1.B和C上的root用戶ID號
2.在A上創建一個/home/nfs1
mkdir /home/nfs1
編輯/etc/exports
添加一條
/home/nfs1 172.16.169.0/24(rw,sync,all_squash,anonuid=0,anongid=0)
anonuid=0,anongid=0為root用戶id
3.生效配置
exportfs -arv
此條命令不需重啟nfs服務直接生效配置
參數如下:-a :全部掛載或者卸載;
-r :重新掛載;
-u :卸載某一個目錄;
-v :顯示共享的目錄
使用showmount -e 172.16.169.128可以查看到新添加的
4.B和C新掛載一個目錄
重新創建一個/home/nfs1
掛載上新的
mount -t nfs 172.16.169.128:/home/nfs1 /home/nfs1
在A上創建一個文件其余掛載點均可看到
(卸載掛載:umount /home/nfs1)
實現開機掛載,編輯/etc/fstab
172.16.169.128:/home/nfs /home/nfs nfs nolock 0 0
172.16.169.128:/home/nfs1 /home/nfs1 nfs1 nolock 0 0
重新掛載
mount -a(此條命令是掛載 fstab 中的所有文件系統)
centos7 安裝nfs