配置NFS

一、什麼是NFS

NFS,是Network File System的簡寫,即網絡文件系統。網絡文件系統是FreeBSD支持的文件系統中的一種,也被稱爲NFS。NFS允許一個系統在網絡上與他人共享目錄和文件。通過使用NFS,用戶和程序可以像訪問本地文件一樣訪問遠端系統上的文件。只要用於linux和unix系統之間共享文件,現在windows上也能訪問linux的nfs服務器。

二、NFS的安裝文件

    NFS的安裝是非常簡單的,只需要兩個軟件包即可,而且在通常情況下,是作爲系統的默認包安裝的。

    nfs-utils-* :包括基本的NFS命令與監控程序 

    portmap-* :支持安全NFS RPC服務的連接

    可以通過命令rpm -ivh | qa nfs,查看是否已經安裝nfs。

三、NFS系統守護進程

  • nfsd:它是基本的NFS守護進程,主要功能是管理客戶端是否能夠登錄服務器;

  • mountd:它是RPC安裝守護進程,主要功能是管理NFS的文件系統。當客戶端順利通過nfsd登錄NFS服務器後,在使用NFS服務所提供的文件前,還必須通過文件使用權限的驗證。它會讀取NFS的配置文件/etc/exports來對比客戶端權限。

  • portmap:主要功能是進行端口映射工作。當客戶端嘗試連接並使用RPC服務器提供的服務(如NFS服務)時,portmap會將所管理的與服務對應的端口提供給客戶端,從而使客戶可以通過該端口向服務器請求服務。

四、NFS服務器的只要文件和命令

NFS服務器的配置相對比較簡單,只需要在相應的配置文件中進行設置,然後啓動NFS服務器即可。

NFS的常用目錄:

/etc/exports                           NFS服務的主要配置文件
/usr/sbin/exportfs                   NFS服務的管理命令
/usr/sbin/showmount              客戶端的查看命令
/var/lib/nfs/etab                      記錄NFS分享出來的目錄的完整權限設定值
/var/lib/nfs/xtab                      記錄曾經登錄過的客戶端信息

五、NFS服務器的配置文件

通過命令vim /etc/exprots,打開nfs 的配置文件。

配置文件的格式爲: 

<輸出目錄> [客戶端1 選項(訪問權限,用戶映射,其他)] [客戶端2 選項(訪問權限,用戶映射,其他)]

a. 輸出目錄:

輸出目錄是指NFS系統中需要共享給客戶機使用的目錄;

b. 客戶端:

客戶端是指網絡中可以訪問這個NFS輸出目錄的計算機

客戶端常用的指定方式

  • 指定ip地址的主機:192.168.0.200

  • 指定子網中的所有主機:192.168.0.0/24 192.168.0.0/255.255.255.0

  • 指定域名的主機:david.bsmart.cn

  • 指定域中的所有主機:*.bsmart.cn

  • 所有主機:*

c. 選項:

選項用來設置輸出目錄的訪問權限、用戶映射等。

NFS主要有3類選項:

訪問權限選項

  • 設置輸出目錄只讀:ro

  • 設置輸出目錄讀寫:rw

用戶映射選項

  • all_squash:將遠程訪問的所有普通用戶及所屬組都映射爲匿名用戶或用戶組(nfsnobody);

  • no_all_squash:與all_squash取反(默認設置);

  • root_squash:將root用戶及所屬組都映射爲匿名用戶或用戶組(默認設置);

  • no_root_squash:與rootsquash取反;

  • anonuid=xxx:將遠程訪問的所有用戶都映射爲匿名用戶,並指定該用戶爲本地用戶(UID=xxx);

  • anongid=xxx:將遠程訪問的所有用戶組都映射爲匿名用戶組賬戶,並指定該匿名用戶組賬戶爲本地用戶組賬戶(GID=xxx);

其它選項

  • secure:限制客戶端只能從小於1024的tcp/ip端口連接nfs服務器(默認設置);

  • insecure:允許客戶端從大於1024的tcp/ip端口連接服務器;

  • sync:將數據同步寫入內存緩衝區與磁盤中,效率低,但可以保證數據的一致性;

  • async:將數據先保存在內存緩衝區中,必要時才寫入磁盤;

  • wdelay:檢查是否有相關的寫操作,如果有則將這些寫操作一起執行,這樣可以提高效率(默認設置);

  • no_wdelay:若有寫操作則立即執行,應與sync配合使用;

  • subtree:若輸出目錄是一個子目錄,則nfs服務器將檢查其父目錄的權限(默認設置);

  • no_subtree:即使輸出目錄是一個子目錄,nfs服務器也不檢查其父目錄的權限,這樣可以提高效率;

例:/home/data 192.168.1.0/24(rw)             ;允許192.168.1.0/24訪問/home/data權限爲讀寫。

 

中職技能大賽中考試的nfs的主要權限參數如下:

rw 該目錄的共享權限是可讀寫
ro 該目錄的共享權限是隻讀
sync 同步寫入到內存與硬盤
async 數據暫時先存於內存當中,而非直接寫入硬盤
all_squash 不論登陸nfs的身份爲何,他的身份都會壓縮成匿名用戶,通常也就是nobody(nfsnobody)
anonuid 匿名用戶的uid設置值
anongid 匿名用戶的gid設置值

 六、NFS服務器配置步驟

服務器端:

1.編輯配置文件

 vi /etc/exports

2.重啓portmap 和nfs 服務

 service portmap restart  或/etc/rc.d/init.d/portmap restart    ;重啓守護進程portmap
 service nfs restart           或
/etc/rc.d/init.d/nfs restart              ;重啓守護進程nfs

 exportfs                         ;導出共享文件

3、服務器端使用showmount命令查詢NFS的共享狀態

# showmount -e    //默認查看自己共享的服務,前提是要DNS能解析自己,不然容易報錯

# showmount -a    //顯示已經與客戶端連接上的目錄信息

 

客戶端:
1.使用showmount命令查詢NFS的共享狀態

# showmount -e NFS服務器IP

2.客戶端掛載NFS服務器中的共享目錄

# mount 192.168.1.1:/home/data/ /tmp/data/        ;掛載服務器文件夾

# mount |grep nfs                                                 ;顯示已掛載的nfs

 

 

 

 

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