nfs網絡文件系統可以實現遠程資源的共享,這樣使我們去訪問資源時,得到便捷。
下面實時搭建環境實現文件共享
環境準備
Redhat 7
CentOs 7
在這裏以redhat 7 linux 系統充當服務器,centos 7 linux 系統充當客戶端。
在服務器進行如下配置:
安裝NFS服務
[root@linuxprobe ~]# yum install nfs-utils
Loaded plugins: langpacks, product-id, subscription-manager
This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.
xiaoyang | 4.1 kB 00:00:00
(1/2): xiaoyang/group_gz | 134 kB 00:00:00
(2/2): xiaoyang/primary_db | 3.4 MB 00:00:00
Package 1:nfs-utils-1.3.0-0.el7.x86_64 already installed and latest version
Nothing to do
清空NFS服務器防火牆相關策略,否則後面會失敗,我們可以嘗試一下!!!
[root@linuxprobe ~]# iptables -F
[root@linuxprobe ~]# service iptables save
iptables: Saving firewall rules to /etc/sysconfig/iptables:[ OK ]
在NFS服務器上建立用於NFS文件共享的目錄,並設置足夠的權限確保其他人也有寫入權限。
[root@linuxprobe ~]# mkdir /xiaoyang
[root@linuxprobe ~]# chmod -Rf 755 /xiaoyang
[root@linuxprobe ~]# echo "i love you" > /xiaoyang/a.txt
NFS的配置文件爲/etc/exports,編輯配置文件
[root@linuxprobe ~]# vim /etc/exports
/xiaoyang 192.168.43.*(rw,sync,root_squash)
~
【注】一般格式爲:共享目錄的路徑 ip地址(…);
rw:讀寫
sync:同時將數據寫入到內存與硬盤中,保證不丟失數據
root_squash:NFS客戶端以root管理員訪問時,映射爲NFS服務器的匿名用戶
重啓rpcbind
[root@linuxprobe ~]# systemctl restart rpcbind
[root@linuxprobe ~]# systemctl enable rpcbind
[root@linuxprobe ~]# systemctl restart nfs-server
[root@linuxprobe ~]# systemctl enable nfs-server
ln -s '/usr/lib/systemd/system/nfs-server.service' '/etc/systemd/system/nfs.target.wants/nfs-server.service'
在客戶端進行如下操作:
[root@localhost ~]# showmount -e 192.168.43.215
Export list for 192.168.43.215:
/xiaoyang 192.168.43.*
showmount相關參數如下:
-e:顯示NFS服務器的共享列表
-a:顯示本機掛載的文件資源共享的情況
-v:顯示版本號
創建掛載目錄,並進行掛載
[root@localhost ~]# mkdir /xiaoyang
[root@localhost ~]# mount -t nfs 192.168.43.215:/xiaoyang /xiaoyang
【注】掛載格式:mount -t 文件系統類型 服務器的ip地址:服務器共享目錄 本地掛載目錄
[root@localhost ~]# cat /xiaoyang/a.txt
i love you
發現以及成功共享。
我們想開機並啓動,需要將其相關寫入fstab配置文件中
[root@localhost ~]# echo "192.168.43.215:/xiaoyang /xiaoyang nfs defaults 0 0" > /etc/fstab