搭建NFS服務器

NFS服務器的架設

因爲NFS支持的功能相當多,而不同的功能會使用不同的程序來啓動,每啓動一個功能

一、所需軟件

1、RPC主程序:prcbind

2、NFS主程序:nfs-utils

查詢軟件包是否已經安裝:

從上面已經看到已經安裝了軟件,若未安裝,使用yum install nfs-utils來安裝。

服務器端:192.168.1.248 客戶端:192.168.1.189

NFS服務器共享部署實例:

例一:

要求:服務器將/tmp共享出去,所有的人都具有讀寫權限,並且root寫入的文件還具有root權限。客戶端掛載在/home/public目錄下

方案:

服務器端:

主機名使用通配符*,上面的意思就是無論來自哪裏的客戶端都可以使用/tmp這個目錄。注意:*(rw,no_root_squash)這個設置值中間是沒有空格符的。上面的no_root_squash的意思表示如果你是客戶端的root,那麼當你mount我這部主機的/tmp之後,你在mount的目錄中,將擁有root的權限。

配置好之後,重啓服務:

客戶端:使用root用戶,啓動網絡功能,RPC,NFS服務。

但是使用showmount命令的時候,出現錯誤的提示,怎麼辦?從錯誤提示中可以看到,說是No route to the host.

ping 一下對方主機:

Ping得通,證明網絡沒問題。那應該是防火牆問題

服務器端把iptables 關閉試一下:

客戶端再來試驗下:

OK

下面開始掛載:

下面再來看一個需求:

服務器:將公共目錄/home/public開放,但是需要限定在局域網內192.168.1.0/24這個網絡且加入mygroup的用戶纔能有讀寫權限,其他來源的客戶只有讀權限。

服務器端:

對於NFS服務,需要注意的是,要對這個服務的權限問題搞明白!!

配置NFS開機即掛載

1、我們知道開機就掛載的掛載點與相關的參數是寫入/etc/fstab文件中的,那麼NFS能不能寫入/etc/fstab中呢?

分析一下:開機的時候,我們是在本機掛載之後,再啓動網絡功能的,因此,當我們嘗試利用/etc/fstab掛載NFS的時候,系統都還沒有啓動網絡服務,所以,肯定掛載不成功的。那麼,該怎麼辦呢?

寫入/etc/rc.d/rc.local即可

來試一下:

重啓:

可以看到,完全OK

開機掛載沒問題後,來看一下怎麼自動掛載,自動卸載。

使用autofs服務:

步驟一、客戶端安裝autofs服務

步驟二、建立主配置文件/etc/auto.master,並指定檢測的特定目錄

 

步驟三、建立數據對應文件內/etc/auto.nfs的掛載信息與服務器對應的資源

重啓autofs服務:

查看:

完全沒問題。

下面來一個整體的練習:

服務器端要求如下:

(1)服務器IP:192.168.1.248

(2)/tmp設置成可讀寫,並且不限制客戶身份的方式,共享給192.168.1.0/24這個網段的所有計算機

(3)/home/nfs共享的屬性爲只讀,可提供除了網段內的工作站外,向Internet亦提供數據內容

(4)/home/upload作爲192.168.1.0/24這個網段的數據上傳目錄,其中 /home/upload的目錄及其所屬的組爲nfs-upload這個名字,它的UID和GID均爲210.

(5)/home/andy這個目錄共享給192.168.1.189這臺主機。以供該主機上的andy這個用戶來使用,也就是說,andy在192.168.1.189及192.168.1.248上均有賬號andy,所以預計開放/home/andy給andy使用它的用戶主目錄。

服務器端實際演練操作:

[root@Centos ~]# cat /etc/exports 

/tmp 192.168.1.0/24(rw,no_root_squash)

/home/nfs 192.168.1.0/24(ro) *(ro,all_squash)

/home/upload 192.168.1.0/24(rw,all_squash,anonuid=210,anongid=210)

/home/andy 192.168.1.189(rw)

[root@Centos ~]# ll -d /tmp/

drwxrwxrwt. 8 root root 12288 Jan6 14:02 /tmp/

[root@Centos ~]# ls /home/

docotormoLinux_Shellmyuser1nfsanonsshnot2testvird

doctormolost+foundmyuser2publicsshnot3test1vird2

linuxmomyuser3sshnot1studenttestsshxue

[root@Centos ~]# mkdir nfs

You have new mail in /var/spool/mail/root

[root@Centos ~]# chmod -R 755 nfs/

[root@Centos ~]# ll -d nfs/

drwxr-xr-x. 2 root root 4096 Jan6 15:29 nfs/

[root@Centos ~]# groupadd -g 210 nfs-upload

[root@Centos ~]# useradd -g 210 -u 210 -M nfs-upload

You have new mail in /var/spool/mail/root

[root@Centos ~]# ls

anaconda-ks.cfgDownloadsinstall.log.syslogPicturesVideos

Desktopfind1.logMusicPublic

Documentsinstall.lognfsTemplates

You have new mail in /var/spool/mail/root

[root@Centos ~]# mkdir -p /home/upload

You have new mail in /var/spool/mail/root

[root@Centos ~]# ll -d /home/upload/

drwxr-xr-x. 2 root root 4096 Jan6 15:50 /home/upload/

[root@Centos ~]# chown -R nfs-upload:nfs-upload /home/upload/

[root@Centos ~]# ll -d /home/upload/

drwxr-xr-x. 2 nfs-upload nfs-upload 4096 Jan6 15:50 /home/upload/

[root@Centos ~]# useradd andy

You have new mail in /var/spool/mail/root

[root@Centos ~]# ll -d /home/andy/

drwx------. 4 andy andy 4096 Jan6 15:51 /home/andy/

[root@Centos ~]#

重啓nfs服務

客戶端:

執行以下這個腳本即可。

 

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