NFS 伺服器初探

2021-06-14 23:32:01 字數 2294 閱讀 2196

1、首先知道nfs是什麼?為什麼會有nfs出現,這個網上書上很多了。nfs(network file system)中文名:網路檔案系統。他可以使安裝了不同作業系統的計算機之間進行資料共享。有效提高資源的利用率,節省本地磁碟空間,方便集中管理。

nfs是採用的c/s模式。其他系統在掛載了這個共享目錄之後就可以像訪問本地目錄一樣訪問這個檔案目錄了。

nfs支援的功能很多,不同功能由不同的程式來執行,每啟用乙個功能就需要開啟一些埠進行資料傳輸。所以nfs不是監聽的固定埠,而是隨機採用一些小於1024的埠作為資料傳輸之用。但是客戶端連線伺服器必須知道埠,nfs的埠隨機性給客戶端連線帶來了麻煩。為此nfs使用了遠端過程呼叫協議(rpc)來解決。

2、nfs的架構很簡單,一般的linux系統都安裝了這樣的服務。nfs需要兩個服務,乙個是portmap,乙個是nfs。由於nfs在啟動時候進行埠註冊,所以正確的啟動順序是先portmap之後是nfs。關閉的時候就相反。

nfs啟動之後,監聽的埠是隨機的,可以通過netstat -ultnp | grep -e "proto|portmap|rpc" 檢視。如下圖:

3、nfs的配置主要是通過/etc/exports配置檔案來實現的。該檔案用於設定伺服器的共享目錄,以及目錄允許訪問的主機,訪問許可權,其他選項等等。nfs安裝之後會在/etc下生成乙個空的exports檔案。我們需要對它進行手工配置。

格式:共享目錄 [客戶端1(選項1,選項2,....)] [客戶端2(選項1,選項2,....)].....

共享目錄與客戶端之間用空格隔開。除共享目錄外,其他都是可選的。

客戶端,可以通過ip位址和主機名指定。也可用子網掩碼指定網段或用萬用字元進行模糊指定。當客戶端為空時,表示所有客戶均可訪問。

選項指定該共享目錄的訪問許可權。

給乙個exports的配置示例

/home/test *(rw,no_root_squash)

/share/public *(rw,all_squash,anonuid=40,anongid=40)

/share/private 192.168.0.100(rw)

/share/doc 192.168.0.0/255.255.255.0(rw) *(ro)

第一行,共享目錄為/home/test。所有客戶都可以對該目錄進行讀寫,取消root的匿名對映。

第二行,所有客戶都可以對該目錄進行讀寫,不管什麼身份,他的uid和gid都對映成40

第三行只對這個ip開放

第四行是乙個網段開放讀寫許可權。其他客戶只有讀。

我們設定好之後,重新開啟服務。然後可以進行乙個簡單的映**。

mout localhost:/home/jaffer /test

這將/home/test對映到了/test。

autofs就是乙個按需掛載的程式。nfs伺服器與客戶端不是永久鏈結的,任何一方不在都可能導致另外一方不斷等待。這樣就消耗了資源。

autofs安裝在linux下一般都有。rpm -q autofs可以知道是否安裝。

配置:autofs的主要配置檔案:/etc/auto.master。該檔案十分簡單。只需要設定掛載點的頂層目錄和對映檔案即可。格式如下:

掛載點頂層目錄     對映檔案

例如,要把共享目錄掛載到/test/test1.那麼這裡的值就是/test。

對映檔案格式如下,表示該檔案設定的nfs檔案系統該怎麼掛載。

掛載點       [-掛載選項]    nfs伺服器名或ip:共享目錄

掛載點是相對路徑。

示例:將/home/jaffer掛載到/test/test

/etc/exports如下:

/home/jaffer *(rw)

/etc/autofs.master如下:

/test  /etc/auto.nfs

建立auto.nfs內容如下:

test -ro,bg,soft localhost:/home/jaffer

執行service autofs reload

注意,我們在進入/test之後,ls,發現什麼都沒有。但是我們cd test成功,然後ls就出現了/home/jaffer裡面的內容。這就是autofs的精髓所在。在我麼使用的時候才掛載。

nfs伺服器配置

nfs伺服器可以讓linux作業系統之間資料的傳送,比如你跑有linux系統的開發板和你linux電腦間資料傳送 在 etc exports 檔案中加一句話 nfs ser 192.168.0.rw,no root squash 儲存退出 nfs ser 其他linux機器 比如你的開發板 訪問的資...

NFS伺服器配置

配置nfs伺服器 如同windows之間的共享一樣,首先要確定共享的是哪個資料夾,允許哪些訪問者,還有賦予訪問者什麼許可權。這些都是通過修改 etc exports檔案來決定的,還沒有配置過nfs的這個檔案時空白的。vim etc exports 新增 如下 tmp rw,sync,no root ...

配置NFS伺服器

1 檢視nfs伺服器是否啟動 service nfs status 如下 表示正常啟動 2 配置nfs伺服器 vim etc exports 新增 如下一行 tmp rw,sync,no root squash tmp 共享目錄 可以訪問的共享目錄的主機ip,代表所有使用者 rw,sync,no r...