詳解NFS網絡文件系統

*************************************
vim

1、NFS網絡文件系統簡介服務器

2、NFS工做原理圖網絡

3、NFS服務與RPC協議的關係併發

4、NFS服務的安裝於配置異步

5、NFS客戶端的配置async

6、NFS訪問權限的設定ide

*************************************性能

1、NFS網絡文件系統簡介ui

  NFS-Network FileSystem的縮寫,NFS是由Sun開發並發展起來的一項用於在不一樣機器,不一樣操做系統之間經過網絡互相分享各自的文件NFS server也能夠看做是一個文件服務器,它可讓你的PC經過網絡將遠端得NFS SERVER共享出來的檔案文件MOUNT到本身的系統中,在客戶端看來使用NFS的遠端文件就象是在使用本地文件同樣。spa


2、NFS工做原理圖

3、NFS服務與RPC協議的關係

   nfs服務器開啓的端口不肯定(必定是在1024如下),因此客戶端要想訪問nfs時須要其餘軟件的協助,這就是遠程過程調用(remote proceduce call)rpc協議。

RPC 最主要的功能就是在指定每一個 NFS 功能所對應的 port number ,而且回報給客戶端,讓客戶端能夠連結到正確的端口上去。 當服務器在啓動 NFS 時會隨機取用數個端口,並主動的向 RPC 註冊,所以 RPC 能夠知道每一個端口對應的 NFS ,而後 RPC 又是固定使用 port 111 來監聽客戶端的需求並回報客戶端正確的埠口, 因此固然可讓 NFS 的啓動更爲輕鬆愉快了!

注意:

   要啓動 NFS 以前,RPC 就要先啓動了,不然 NFS 會沒法向 RPC 註冊。


4、NFS服務安裝於配置

  安裝NFS軟件包

[root@localhost ~]# yum install nfs-utils -y


啓動NFS服務

註釋:

   mountd:管理NFS文件系統的掛載權限


NFS的主配置文件

/etc/exports

格式爲:  export host(options)

Options:    

  • rw: 讀寫

  • ro:

  • secure: 默認已經啓用;限制客戶端只能使用小於1024的端口訪問請求;若不加限制,則使用insecure

  • async: 異步寫入,性能好,數據可靠性差;

  • sync: 同步寫入,性能差,數據可靠性高;

  • wdelay: 寫入延遲;no_wdelay

  • nohide: 不隱藏要導出的目錄中掛載的其它nfs;

  • no_acl: 關閉nfs的acl功能;

  • root_squash: 壓縮root權限, nfsnobody

  • no_root_squash: 不壓縮root權限

  • all_squash:全部用戶都壓縮

  • anonuid=nfsuser,anongid=nfsgroup:使用指定的用戶賬號作匿名用戶賬號;


NFS服務端的配置

[root@localhost ~]# mkdir /dir
[root@localhost ~]# cp /etc/fstab /dir/
[root@localhost ~]# vim /etc/exports
/dir  172.16.0.0/16(rw)

註釋:

   第4行:指定172.16.0.0/16網段的用戶能夠以讀寫的權限訪問/dir目錄


5、NFS客戶端的配置

[root@localhost ~]# yum install showmount -y
[root@localhost ~]# showmount -e 172.16.10.1
Export list for 172.16.10.1:
/dir 172.16.0.0/16
[root@localhost ~]#
[root@localhost ~]# mount -t nfs 172.16.10.1:/dir /mnt
[root@localhost ~]# ll /mnt/
total 4
-rw-r--r--. 1 root root 779 Aug 14  2013 fstab
[root@localhost ~]#

註釋:

   第2行:使用showmount -e NFSIP 查看NFS共享目錄

注意:

    此時咱們雖然以root身份掛載的,可是root沒有創建文件的權限,root用戶都沒有權限,,這是爲何呢?,,由於root用戶的權限的被壓縮了。。下面咱們說明一下NFS的權限。


6、NFS訪問權限的設定

一、 客戶端與主機端具備相同的 UID 與不一樣的帳號:

使用Centos登陸系統嘗試去建立文件

權限拒絕了,,這是爲何呢。。咱們查看NFS共享目錄的權限

修改dir目錄的權限,讓Centos用戶有寫入的權限

客戶端Centos用戶在此建立文件,並在服務器查看Centos剛剛建立文件的屬組,屬主

總結:

  服務端與客戶端顯示的屬主,屬組不一樣,服務端Centos用戶變成了jerry,jerry的uid與Centos的uid相同,說明了NFS完成用戶UID映射。

二、 當客戶端的身份爲 root 時:

注意:

  默認NFS服務開啓了(/etc/exports ) root_squash: 壓縮root權限, 功能,若是還想繼續使用使用root權限,則修改成

vim/etc/exports
/dir  172.16.0.0/16(rw,no_root_squash)
 no_root_squash: 不壓縮root權限


NFS因爲沒有提供用戶認證功能,因此咱們能夠將NFS與LDAP結合。NFS和LDAP的結合將在後期講解,敬請期待。。。

相關文章
相關標籤/搜索