Linux NFS網絡文件系統

一、NFS服務簡介

NFS是Network File System的縮寫,即網絡文件系統。一種使用於分散式文件系統的協定,由sun公司開發,於1984年向外公佈。功能:通過網絡讓不同的機器、不同的操作系統能夠彼此分享個別數據,讓應用程序在客戶端通過網絡訪問位於服務端磁盤中的數據,是在類Unix系統間實現磁盤文件共享的一種方法。

NFS的基本原則是“容許不同的客戶端及服務端通過一組RPC共享相同的文件系統”,它是獨立於操作系統,容許不同硬件及操作系統的系統共同進行文件的分享。

NFS在文件傳送或信息傳送過程中依賴於RPC協議。RPC,遠程過程調用是能使客戶端執行其他系統程序的一種機制。NFS本身是沒有提供信息傳輸的協議和功能的,但NFS卻能讓我們通過網絡進行資料的分享,這是因爲NFS使用了一些其他的傳輸協議。而這些傳輸協議用到這個RPC功能。可以說NFS本身就是使用RPC的一個程序。或者說NFS是一個RPC SERVER。所以只要NFS的地方必須啓動RPC服務。總結:NFS只是一個文件系統,而rpc是負責信息的傳輸。

二、安裝NFS服務

NFS需要兩個軟件包

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

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

1.檢查系統是否安裝NFS

rpm -qa|grep nfs

rpm -qa|grep rpcbind

如果沒有,先yum grouplist 再 yum groupinstall “NFS”

三、NFS服務器配置

NFS常用目錄

/etc/exports NFS服務的主要配置文件

/usr/sbin/exportfs NFS服務的管理命令

/usr/sbin/showmount 客戶端查看命令

/var/lib/nfs/etab 記錄NFS分享出來的目錄的完整權限設定值

/var/lib/nfs/xtab 記錄曾經登錄過的客戶端信息

NFS服務的配置文件爲/etc/exports,系統沒有默認值,所以這個文件不一定會存在,可以使用vim手動建立,然後在文件裏面寫入配置內容。

/etc/exports文件內容格式:

<輸出目錄> 【客戶端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用戶及其所屬組都映射爲匿名用戶or用戶組

no_root_squash:與上相反

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

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

其它選項(忽略,就用默認值)

四、NFS服務器的啓動與停止

在對/etc/exports文件進行正確的配置後,就可以啓動NFS服務器了。

1.啓動NFS服務器

爲了使nfs服務器能正常工作,需要啓動rpcbind和nfs兩個服務,並且rpcbind一定要先於nfs啓動

service rpcbind start

service nfs start

2.查詢nfs服務器狀態

service rpcbind status

service nfs status

3.停止nfs服務器

要停止nfs,要先停止nfs再停止rpcbind服務,對於系統中有其他服務(如nis)需要使用時,不需要停止rpcbind服務

service nfs stop

service rpcbind stop

4.設置nfs服務器的自動啓動狀態

chkconfig --add

chkconfig --level 35

五、實例

1.將NFS server的/home/cairui 共享給192.168.66.128,權限讀寫

#vim /etc/exports

/home/cairui 192.168.66.128/24(rw)

2.重啓rpcbind和nfs服務

service rpcbind restart

service nfs restart

exportfs

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

showmount -e

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

4.客戶端使用showmount命令查詢nfs的共享狀態

showmount -e 服務端ip

5.客戶端掛載nfs服務器中的共享目錄

命令格式:mount NFS服務器IP:共享目錄 本地掛載點目錄

查看是否掛載成功:mount|grep nfs

查看文件是否與服務器端一致

6.NFS的共享權限和訪問控制

在服務器/home/cairui修改權限使得客戶端可寫,可讀

chmod 777 -R /home/cairui

6.卸載已掛載的NFS共享目錄

格式:umount /tmp/cai

八.啓動自動掛載nfs文件系統

格式::<remote/export>

  </local/directory> nfs <option> 0 0

#vim /etc/fstab
在這裏插入圖片描述
最後一行爲後加的

保存退出,重啓系統

轉載自:https://cloud.tencent.com/developer/article/1022106

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