RHEL6.4 NFS文件共享服務器搭建

1 實驗方案

使用2臺RHEL6.4虛擬機,其中一臺作爲NFS共享服務器(192.168.100.1)、另外一臺作爲測試用的NFS客戶機(192.168.100.2)

2.實現

2.1.配置NFS共享服務器。

1)安裝軟件包及創建共享目錄。

[root@nfs-server ~]# rpm -q rpcbind nfs-utils

rpcbind-0.2.0-11.el6.x86_64

nfs-utils-1.2.3-36.el6.x86_64

[root@nfs-server ~]# mkdir /nfstest

[root@nfs-server ~]# echo "test file" > /nfstest/nfs.txt  //創建測試文件

[root@nfs-server ~]# ls -ld /nfstest                //查看測試目錄權限

drwxr-xr-x. 2 root root 4096 Apr 14 07:18 /nfstest

2)修改nfs主配置文件/etc/exports,添加/nfstest共享設置。

[root@nfs-server ~]# vim /etc/exports

[root@nfs-server ~]# cat /etc/exports

/nfstest 192.168.100.2(rw,sync,no_root_squash) //設置爲只對192.168.100.2用戶讀寫權限,並同步寫入內存與硬盤,開放客戶端使用root身份

3)啓用NFS相關服務程序。

rpcbind和nfs服務均啓動成功後,執行showmount -e可查看本機當前已發佈的共享資源列表:

[root@nfs-server ~]# service rpcbind start

[root@nfs-server ~]# service nfs start

[root@nfs-server ~]# chkconfig rpcbind on    //設置開機啓動服務

[root@nfs-server ~]# chkconfig nfs on

[root@nfs-server ~]# chkconfig --list rpcbind  //確保服務開機啓動

rpcbind        0:off1:off2:on3:on4:on5:on6:off

[root@nfs-server ~]# chkconfig --list nfs

nfs            0:off1:off2:on3:on4:on5:on6:off

[root@nfs-server ~]# showmount -e localhost    //查看本機發布共享資源----如果查看不到重啓一下系統就可以看到了

Export list for localhost:

/nfstest 192.168.100.2

2.2使用NFS客戶機,查看及訪問/nfstest共享。

1)客戶端也需要安裝相應軟件

[root@client01 ~]# rpm -q rpcbind nfs-utils

rpcbind-0.2.0-11.el6.x86_64

nfs-utils-1.2.3-36.el6.x86_64

2)從客戶機上查看服務器的NFS共享資源列表。

客戶機必須安裝了nfs-utils軟件包,才能使用showmount命令查看NFS資源:

[root@client01 ~]# showmount -e 192.168.100.1

Export list for 192.168.100.1:

/nfstest 192.168.100.2

3)從客戶機192.168.100.2上掛載/nfstest共享,並測試讀寫權限。

[root@client01 ~]# mount 192.168.100.1:/nfstest /mnt  //將共享目錄掛載到本地mnt目錄下

[root@client01 ~]# cd /mnt; ls

nfs.txt

[root@client01 mnt]# cd

[root@client01 ~]# cd /mnt;ls

nfs.txt

[root@client01 mnt]# touch aa.txt    //測試寫入權限

[root@client01 mnt]# ll

total 4

-rw-r--r--. 1 root root  0 Apr 14 07:40 aa.txt

-rw-r--r--. 1 root root 10 Apr 14 07:18 nfs.txt

4)設置開機後自動掛載NFS共享資源。

[root@client01 ~]# vim /etc/fstab

192.168.100.1:/nfstest  /mnt  nfs  defaults  0 0  //文件類型爲nfs

[root@client01 ~]# umount /mnt

[root@client01 ~]# mount -a

[root@client01 ~]# mount | tail -n 1

192.168.100.1:/nfsteston /mnt type nfs (rw,vers=4,addr=192.168.100.1,clientaddr=192.168.100.2)                //開機自動掛載成功


、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、

/etc/exports
在此空文件中添加需要共享的目錄,主要參數有
ro 只讀
rw 可讀可寫 
root_squash代表客戶端以nfsnobody用戶掛載,默認不寫就有
no_root_squash 代表客戶端以root用戶掛載
sync 同步
async 異步

#vim /etc/exports
/share/iso *(ro) --把/share/iso 共享給*(代表所有IP) ro (代表只讀)
/share/iso *(rw) --rw代表可讀可寫
/share/iso 10.10.10.0/24(ro) --只共享給10.10.10的網段的計算機訪問
/share/iso 10.10.10.0/255.255.255.0(ro)
/share/iso 10.10.10.10/255.255.255.255(ro) --定義只10.10.10.10這臺計算機可以訪問
/share/iso 10.10.10.10(ro)
/share/iso 10.10.10.10/32(ro)10.10.10.254/32(rw) --定義只有10和254這兩臺可以訪問


nfs共享的權限
(1)客戶端掛載目錄的權限爲服務端共享目錄的權限
(2)nfs服務共享目錄的默認權限規定是以nfsnobody這個用戶來掛載,查看/etc/passwd可以看到
nfsnobody:x:65534:65534:Anonymous NFSUSEr:/var/lib/nfs:/sbin/nologin

注意:如果做了服務的話,權限要由服務的權限+系統的權限合起來生效

也就是說,客戶端是否可以訪問,需要防火牆允許,服務允許,系統權限允許,纔可以訪問

(3)詳情如下:
/share/iso *(ro) 默認等於 /share/iso*(ro,root_squash)
--root_squash代表客戶端以nfsnobody用戶掛載
/test *(rw,no_root_squash)
--表示客戶端會以root的身份來掛載服務端的/test目錄
/share/iso 10.10.10.10/32(ro,no_root_squash)10.10.10.254/32(ro,root_squash)
--no_root_squash代表客戶端以root用戶掛載,就算是10對/share/iso有w權限,也不能寫,因爲ro參數確定只讀

/share/iso10.10.10.10/32(rw,anonuid=533,anongid=534) --指定客戶端以uid=533,gid=534掛載,但不要指定一個服務器上面不存在的uid或gid,否則客戶端會以無頭用戶或組來訪問

--修改了/etc/exports以後,要重啓服務使之生效,不用重啓服務,使修改過的配置文件生效
[root@rootbug~]#exportfs -arv --重新讀取/etc/exports文件裏的共享,並導入
-auv --卸載/etc/exports文件裏的共享,別人showmount -e看不到,也掛載不了


from :http://www.linuxidc.com/Linux/2014-05/101165.htm

         http://www.linuxidc.com/Linux/2013-09/89809.htm

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章