新聞中心
如果大家覺得Samba服務(wù)程序的配置太麻煩,而且恰巧需要共享文件的主機(jī)都是Linux系統(tǒng),劉遄老師非常推薦大家在客戶端部署NFS服務(wù)來共享文件。NFS(網(wǎng)絡(luò)文件系統(tǒng))服務(wù)可以將遠(yuǎn)程Linux系統(tǒng)上的文件共享資源掛載到本地主機(jī)的目錄上,從而使得本地主機(jī)(Linux客戶端)基于TCP/IP協(xié)議,像使用本地主機(jī)上的資源那樣讀寫遠(yuǎn)程Linux系統(tǒng)上的共享文件。

成都創(chuàng)新互聯(lián)于2013年創(chuàng)立,先為王屋等服務(wù)建站,王屋等地企業(yè),進(jìn)行企業(yè)商務(wù)咨詢服務(wù)。為王屋企業(yè)網(wǎng)站制作PC+手機(jī)+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問題。
由于RHEL 7系統(tǒng)中默認(rèn)已經(jīng)安裝了NFS服務(wù),外加NFS服務(wù)的配置步驟也很簡(jiǎn)單,因此劉遄老師在授課時(shí)會(huì)將NFS戲謔為Need For Speed。接下來,我們準(zhǔn)備配置NFS服務(wù)。首先請(qǐng)使用Yum軟件倉庫檢查自己的RHEL 7系統(tǒng)中是否已經(jīng)安裝了NFS軟件包:
[root@linuxprobe ~]# yum install nfs-utils
Loaded plugins: langpacks, product-id, subscription-manager
(1/2): rhel7/group_gz | 134 kB 00:00
(2/2): rhel7/primary_db | 3.4 MB 00:00
Package 1:nfs-utils-1.3.0-0.el7.x86_64 already installed and latest version
Nothing to do
第1步:為了檢驗(yàn)NFS服務(wù)配置的效果,我們需要使用兩臺(tái)Linux主機(jī)(一臺(tái)充當(dāng)NFS服務(wù)器,一臺(tái)充當(dāng)NFS客戶端),并按照表12-6來設(shè)置它們所使用的IP地址。
表12-6 兩臺(tái)Linux主機(jī)所使用的操作系統(tǒng)以及IP地址
| 主機(jī)名稱 | 操作系統(tǒng) | IP地址 |
|---|---|---|
| NFS服務(wù)器 | RHEL 8 | 192.168.10.10 |
| NFS客戶端 | RHEL 8 | 192.168.10.20 |
另外,不要忘記清空NFS服務(wù)器上面iptables防火墻的默認(rèn)策略,以免默認(rèn)的防火墻策略禁止正常的NFS共享服務(wù)。
[root@linuxprobe ~]# iptables -F
[root@linuxprobe ~]# service iptables save
iptables: Saving firewall rules to /etc/sysconfig/iptables:[ OK ]
第2步:在NFS服務(wù)器上建立用于NFS文件共享的目錄,并設(shè)置足夠的權(quán)限確保其他人也有寫入權(quán)限。
[root@linuxprobe ~]# mkdir /nfsfile
[root@linuxprobe ~]# chmod -Rf 777 /nfsfile
[root@linuxprobe ~]# echo "welcome to linuxprobe.com" > /nfsfile/readme
第3步:NFS服務(wù)程序的配置文件為/etc/exports,默認(rèn)情況下里面沒有任何內(nèi)容。我們可以按照“共享目錄的路徑 允許訪問的NFS客戶端(共享權(quán)限參數(shù))”的格式,定義要共享的目錄與相應(yīng)的權(quán)限。
例如,如果想要把/nfsfile目錄共享給192.168.10.0/24網(wǎng)段內(nèi)的所有主機(jī),讓這些主機(jī)都擁有讀寫權(quán)限,在將數(shù)據(jù)寫入到NFS服務(wù)器的硬盤中后才會(huì)結(jié)束操作,最大限度保證數(shù)據(jù)不丟失,以及把來訪客戶端root管理員映射為本地的匿名用戶等,則可以按照下面命令中的格式,將表12-7中的參數(shù)寫到NFS服務(wù)程序的配置文件中。
表12-7 用于配置NFS服務(wù)程序配置文件的參數(shù)
| 參數(shù) | 作用 |
|---|---|
| ro | 只讀 |
| rw | 讀寫 |
| root_squash | 當(dāng)NFS客戶端以root管理員訪問時(shí),映射為NFS服務(wù)器的匿名用戶 |
| no_root_squash | 當(dāng)NFS客戶端以root管理員訪問時(shí),映射為NFS服務(wù)器的root管理員 |
| all_squash | 無論NFS客戶端使用什么賬戶訪問,均映射為NFS服務(wù)器的匿名用戶 |
| sync | 同時(shí)將數(shù)據(jù)寫入到內(nèi)存與硬盤中,保證不丟失數(shù)據(jù) |
| async | 優(yōu)先將數(shù)據(jù)保存到內(nèi)存,然后再寫入硬盤;這樣效率更高,但可能會(huì)丟失數(shù)據(jù) |
請(qǐng)注意,NFS客戶端地址與權(quán)限之間沒有空格。
[root@linuxprobe ~]# vim /etc/exports
/nfsfile 192.168.10.*(rw,sync,root_squash)
第4步:?jiǎn)?dòng)和啟用NFS服務(wù)程序。由于在使用NFS服務(wù)進(jìn)行文件共享之前,需要使用RPC(Remote Procedure Call,遠(yuǎn)程過程調(diào)用)服務(wù)將NFS服務(wù)器的IP地址和端口號(hào)等信息發(fā)送給客戶端。因此,在啟動(dòng)NFS服務(wù)之前,還需要順帶重啟并啟用rpcbind服務(wù)程序,并將這兩個(gè)服務(wù)一并加入開機(jī)啟動(dòng)項(xiàng)中。
[root@linuxprobe ~]# systemctl restart rpcbind
[root@linuxprobe ~]# systemctl enable rpcbind
[root@linuxprobe ~]# systemctl start 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'
NFS客戶端的配置步驟也十分簡(jiǎn)單。先使用showmount命令(以及必要的參數(shù),見表12-8)查詢NFS服務(wù)器的遠(yuǎn)程共享信息,其輸出格式為“共享的目錄名稱 允許使用客戶端地址”。
表12-8 showmount命令中可用的參數(shù)以及作用
| 參數(shù) | 作用 |
|---|---|
| -e | 顯示NFS服務(wù)器的共享列表 |
| -a | 顯示本機(jī)掛載的文件資源的情況NFS資源的情況 |
| -v | 顯示版本號(hào) |
[root@linuxprobe ~]# showmount -e 192.168.10.10
Export list for 192.168.10.10:
/nfsfile 192.168.10.*
然后在NFS客戶端創(chuàng)建一個(gè)掛載目錄。使用mount命令并結(jié)合-t參數(shù),指定要掛載的文件系統(tǒng)的類型,并在命令后面寫上服務(wù)器的IP地址、服務(wù)器上的共享目錄以及要掛載到本地系統(tǒng)(即客戶端)的目錄。
[root@linuxprobe ~]# mkdir /nfsfile
[root@linuxprobe ~]# mount -t nfs 192.168.10.10:/nfsfile /nfsfile
掛載成功后就應(yīng)該能夠順利地看到在執(zhí)行前面的操作時(shí)寫入的文件內(nèi)容了。如果希望NFS文件共享服務(wù)能一直有效,則需要將其寫入到fstab文件中:
[root@linuxprobe ~]# cat /nfsfile/readme
welcome to linuxprobe.com
[root@linuxprobe ~]# vim /etc/fstab
#
# /etc/fstab
# Created by anaconda on Wed May 4 19:26:23 2017
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
/dev/mapper/rhel-root / xfs defaults 1 1
UUID=812b1f7c-8b5b-43da-8c06-b9999e0fe48b /boot xfs defaults 1 2
/dev/mapper/rhel-swap swap swap defaults 0 0
/dev/cdrom /media/cdrom iso9660 defaults 0 0
192.168.10.10:/nfsfile /nfsfile nfs defaults 0 0 當(dāng)前標(biāo)題:創(chuàng)新互聯(lián)linux教程:12.2NFS網(wǎng)絡(luò)文件系統(tǒng)
本文URL:http://www.dlmjj.cn/article/djsohdj.html


咨詢
建站咨詢
