NFS服务器主配置文件名,NFS服务器的搭建与配置
安裝NFS服務,需要安裝兩個軟件,分別是:
RPC主程序:rpcbind
NFS 其實可以被視為一個 RPC 服務,因為啟動任何一個 RPC 服務之前,我們都需要做好 port 的對應 (mapping) 的工作才行,這個工作其實就是『 rpcbind 』這個服務所負責的!也就是說, 在啟動任何一個 RPC 服務之前,我們都需要啟動 rpcbind 才行! (在 CentOS 5.x 以前這個軟件稱為 portmap,在 CentOS 6.x 之后才稱為 rpcbind 的!)
NFS主程序:nfs-utils
就是提供 rpc.nfsd 及 rpc.mountd 這兩個 NFS daemons 與其他相關 documents 與說明文件、執行文件等的軟件!這個就是 NFS 服務所需要的主要軟件。
NFS的相關文件:
主要配置文件:/etc/exports
這是 NFS 的主要配置文件了。該文件是空白的,有的系統可能不存在這個文件,主要手動建立。NFS的配置一般只在這個文件中配置即可。
NFS 文件系統維護指令:/usr/sbin/exportfs
這個是維護 NFS 分享資源的指令,可以利用這個指令重新分享 /etc/exports 變更的目錄資源、將 NFS Server 分享的目錄卸除或重新分享。
分享資源的登錄檔:/var/lib/nfs/*tab 在 NFS 服務器的登錄文件都放置到 /var/lib/nfs/ 目錄里面,在該目錄下有兩個比較重要的登錄檔, 一個是 etab ,主要記錄了 NFS 所分享出來的目錄的完整權限設定值;另一個 xtab 則記錄曾經鏈接到此 NFS 服務器的相關客戶端數據。
客戶端查詢服務器分享資源的指令:/usr/sbin/showmount 這是另一個重要的 NFS 指令。exportfs 是用在 NFS Server 端,而 showmount 則主要用在 Client 端。showmount 可以用來察看 NFS 分享出來的目錄資源。
服務端安裝NFS服務步驟:
第一步:安裝NFS和rpc
#安裝nfs服務
[root@localhost ~]# yum install -y nfs-utils
#安裝rpc服務
[root@localhost ~]# yum install -y rpcbind
#其實安裝yum install -y nfs-utils就會自動把rpcbind安裝上 所以不用執行第二步
1
2
3
4
5
#安裝nfs服務
[root@localhost~]# yum install -y??nfs-utils
#安裝rpc服務
[root@localhost~]# yum install -y rpcbind
#其實安裝yum install -y nfs-utils就會自動把rpcbind安裝上 所以不用執行第二步
第二步:啟動服務和設置開啟啟動:
[root@localhost~]# systemctl start rpcbind
[root@localhost~]# systemctl enable rpcbind
[root@localhost~]# systemctl start nfs-server
[root@localhost~]# systemctl start nfs-secure.service
[root@localhost~]# systemctl enable nfs-server
[root@localhost~]# systemctl enable nfs-secure.service
1
2
3
4
5
6
[root@localhost~]# systemctl start rpcbind
[root@localhost~]# systemctl enable rpcbind
[root@localhost~]# systemctl start nfs-server
[root@localhost~]# systemctl start nfs-secure.service
[root@localhost~]# systemctl enable nfs-server
[root@localhost~]# systemctl enable nfs-secure.service
如果你開啟了防火墻,配置下放行nfs服務
firewall-cmd --permanent --add-service=nfs
firewall-cmd --reload
1
2
firewall-cmd--permanent--add-service=nfs
firewall-cmd--reload
第三步:配置共享文件目錄,編輯配置文件:
#創建共享目錄
mkdir /public
#配置文件
vim /etc/exports
/public 172.17.0.2(rw,no_root_squash,no_all_squash,sync,anonuid=501,anongid=501)
/public 172.17.0.3(rw,no_root_squash,no_all_squash,sync,anonuid=501,anongid=501)
/public 172.17.0.4(rw,no_root_squash,no_all_squash,sync,anonuid=501,anongid=501)
或者直接寫這個網絡段
vim /etc/exports
/public 172.17.0.2/24(rw,no_root_squash,no_all_squash,sync,anonuid=501,anongid=501)
1
2
3
4
5
6
7
8
9
10
11
#創建共享目錄
mkdir/public
#配置文件
vim/etc/exports
/public172.17.0.2(rw,no_root_squash,no_all_squash,sync,anonuid=501,anongid=501)
/public172.17.0.3(rw,no_root_squash,no_all_squash,sync,anonuid=501,anongid=501)
/public172.17.0.4(rw,no_root_squash,no_all_squash,sync,anonuid=501,anongid=501)
或者直接寫這個網絡段
vim/etc/exports
/public172.17.0.2/24(rw,no_root_squash,no_all_squash,sync,anonuid=501,anongid=501)
配置文件解析
格式: 共享目錄的路徑 允許訪問的NFS客戶端(共享權限參數)
如上:
/public #共享目錄路徑
172.17.0.2 #允許訪問的客戶端為172.17.0.2網絡用戶
(rw,no_root_squash,no_all_squash,sync,anonuid=501,anongid=501) #權限
#注意,nfs客戶ip地址與權限之間沒有空格
ro 只讀
rw 讀寫
root_squash當NFS客戶端以root管理員訪問時,映射為NFS服務器的匿名用戶
no_root_squash當NFS客戶端以root管理員訪問時,映射為NFS服務器的root管理員
all_squash無論NFS客戶端使用什么賬戶訪問,均映射為NFS服務器的匿名用戶
no_all_squash 與all_squash取反(默認設置)
sync 同時將數據寫入到內存與硬盤中,保證不丟失數據
async 優先將數據保存到內存,然后再寫入硬盤;這樣效率更高,但可能會丟失數據
anonuid 將客戶機上的用戶映射成指定的本地用戶ID的用戶
anongid 將客戶機上的用戶映射成屬于指定的本地用戶組ID
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
格式:共享目錄的路徑允許訪問的NFS客戶端(共享權限參數)
如上:
/public#共享目錄路徑
172.17.0.2#允許訪問的客戶端為172.17.0.2網絡用戶
(rw,no_root_squash,no_all_squash,sync,anonuid=501,anongid=501)#權限
#注意,nfs客戶ip地址與權限之間沒有空格
ro只讀
rw讀寫
root_squash當NFS客戶端以root管理員訪問時,映射為NFS服務器的匿名用戶
no_root_squash當NFS客戶端以root管理員訪問時,映射為NFS服務器的root管理員
all_squash無論NFS客戶端使用什么賬戶訪問,均映射為NFS服務器的匿名用戶
no_all_squash與all_squash取反(默認設置)
sync同時將數據寫入到內存與硬盤中,保證不丟失數據
async優先將數據保存到內存,然后再寫入硬盤;這樣效率更高,但可能會丟失數據
anonuid將客戶機上的用戶映射成指定的本地用戶ID的用戶
anongid將客戶機上的用戶映射成屬于指定的本地用戶組ID
showmount命令的用法
-e [本機ip]顯示NFS服務器的共享列表
-a [本機ip]顯示本機掛載的文件資源的情況NFS資源的情況
-v顯示版本號
1
2
3
-e[本機ip]顯示NFS服務器的共享列表
-a[本機ip]顯示本機掛載的文件資源的情況NFS資源的情況
-v顯示版本號
#顯示已經mount到本機nfs目錄的客戶端機器
showmount -e localhost
#將配置文件中的目錄全部重新export一次!無需重啟服務。
exportfs -rv
#查看NFS的運行狀態
nfsstat
#查看rpc執行信息,可以用于檢測rpc運行情況
rpcinfo
#查看網絡端口,NFS默認是使用111端口。
netstat -tu -4
#重啟nfs服務
service nfs-kernel-server restart
1
2
3
4
5
6
7
8
9
10
11
12
#顯示已經mount到本機nfs目錄的客戶端機器
showmount-elocalhost
#將配置文件中的目錄全部重新export一次!無需重啟服務。
exportfs-rv
#查看NFS的運行狀態
nfsstat
#查看rpc執行信息,可以用于檢測rpc運行情況
rpcinfo
#查看網絡端口,NFS默認是使用111端口。
netstat-tu-4
#重啟nfs服務
servicenfs-kernel-serverrestart
如果你安裝了防火墻,需要配置nfs需要開放的端口
portmap 端口 111 udp/tcp
nfsd 端口 2049 udp/tcp
mountd 端口 “xxx” udp/tcp 負責客戶端來源認證的進程,認證成功后接受客戶端的掛載請求,工作在隨機端口,即時向RPC注冊。
系統 RPC服務在 nfs服務啟動時默認會為 mountd動態選取一個隨機端口(32768–65535)來進行通訊,我們可以通過編輯/etc/services 文件為 mountd指定一個固定端口:
#注意下面這個為mountd指定端口我試了下沒有成功,一般情況下不需要指定,人家自己獲取是多少就是多少。你可以通過 rpcinfo -p 查看當前隨機指定的mountd端口是多少然后加入到你的防火墻中。
# vim /etc/services
在末尾添加
mountd 1011/udp
mountd 1011/tcp
保存該文件,重啟rpc.mountd
rpcinfo -p Hostname
現在我們會發現 mountd已經和端口 1011綁定了。
1
2
3
4
5
6
7
8
9
10
#注意下面這個為mountd指定端口我試了下沒有成功,一般情況下不需要指定,人家自己獲取是多少就是多少。你可以通過 rpcinfo -p 查看當前隨機指定的mountd端口是多少然后加入到你的防火墻中。
# vim /etc/services
在末尾添加
mountd1011/udp
mountd1011/tcp
保存該文件,重啟rpc.mountd
rpcinfo-pHostname
現在我們會發現mountd已經和端口1011綁定了。
服務器本機測試
rpcinfo -p
#檢測nfs的rpc注冊狀態
rpcinfo -u 10.0.2.15 nfs
#查看共享目錄和參數設置
cat /var/lib/nfs/etab
#使用showmount命令查看共享目錄發布及使用情況
showmount -e 10.0.2.15
1
2
3
4
5
6
7
rpcinfo-p
#檢測nfs的rpc注冊狀態
rpcinfo-u10.0.2.15nfs
#查看共享目錄和參數設置
cat/var/lib/nfs/etab
#使用showmount命令查看共享目錄發布及使用情況
showmount-e10.0.2.15
二:配置客戶端機器
1.安裝nfs服務
yum install -y nfs-utils
如果是linux掛載windows的nfs需要安裝 cifs-utils
yum install cifs-utils
1
yuminstallcifs-utils
2. 查看nfs服務器共享目錄
3.臨時掛載
mount -t nfs -o rw 10.0.2.15:/public /home/shooter/data
1
mount-tnfs-orw10.0.2.15:/public/home/shooter/data
其他掛載:
#linux掛載windows 本身共享(非nfs)
mount -t cifs //192.168.1.126/linux_nfs /mnt/linux_nfs/ -o username=linux,password=123asd,rw,file_mode=0777,dir_mode=0777,setuid=509,setgid=101
#掛載權限為0777
mount -t cifs //192.168.1.126/linux_nfs /mnt/linux_nfs/ -o username=linux,password=123asd
1
2
3
4
5
6
其他掛載:
#linux掛載windows 本身共享(非nfs)
mount-tcifs//192.168.1.126/linux_nfs/mnt/linux_nfs/-ousername=linux,password=123asd,rw,file_mode=0777,dir_mode=0777,setuid=509,setgid=101
#掛載權限為0777
mount-tcifs//192.168.1.126/linux_nfs/mnt/linux_nfs/-ousername=linux,password=123asd
4. 啟動自動掛載nfs文件系統
#vim /etc/fstab
10.0.2.15:/mysqlbak /mnt/nfs nfs defaults
1
2
#vim /etc/fstab
10.0.2.15:/mysqlbak/mnt/nfsnfsdefaults
mount -a 刷新使掛載文件生效
查看掛載生效
hello文件為我在宿主機新建的文件,這說明虛擬機已經成功掛載了
最后編輯:2020-03-25作者:shooter
這個作者貌似有點懶,什么都沒有留下。
總結
以上是生活随笔為你收集整理的NFS服务器主配置文件名,NFS服务器的搭建与配置的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 网页css样式中英对照,css中文样式(
- 下一篇: 小小军团获取服务器配置文件,小小军团2资