(實用)Ubuntu 開啟NFS服務

2021-09-08 22:05:54 字數 2469 閱讀 2427

本文介紹如何在ubuntu下開啟nfs檔案系統,從而掛載網路上其他機器的檔案系統。

nfs, network file system, 即網路檔案系統,通常nfs有提供者和使用者,提供者export自己的目錄,使用者將提供者共享(export)的目錄掛載到自己的機器上,我們將提供者視為服務端,使用者視為客戶端,但是在nfs中,這個c-s關係實質上是不固定的。

一、伺服器端

1.安裝nfs-kernel-server,將會自動安裝nfs-common和rpcbind等依賴

$ sudo apt-get install nfs-kernel-server

2.配置/etc/exports檔案,該檔案在nes-kernel-server安裝前不存在,檔案中的內容設定了允許發現服務端共享目錄的客戶端主機以及擁有的訪問許可權,其字段的格式如下:

格式:  share_dir    client_host(permission1,permission2,...,permissionn)

引數:(1)share_dir

共享目錄,必須是目錄的絕對路徑,若為檔案,則在掛載時會出錯。若目錄名含有空格等字元,須用雙引號標註。

(2)client_host

可以是單個主機(指定網路ip),也可以是網路段,支援萬用字元*和?

(3)permission

ro: 唯讀(read-only)

rw:讀和寫(read-write)

root_squash:壓縮root使用者。當客戶端以root掛載時,則nfs伺服器將root視為匿名使用者服務(nfsnobody)。

no_root_squash:不壓縮root使用者。當客戶端以root掛載時,則nfs伺服器將其為共享目錄的root使用者,不安全。

sync:同步寫磁碟

async:非同步寫磁碟。

示例:

$ vim /etc/exports

--------add content below--------

/.../export_dir host1(rw,sync,no_subtree_check) host2(ro,sync,no_subtree_check)

/.../export_dir    ×(ro,sync,no_subtree_check)

上面的例子中,export_dir是要共享到網路上的目錄。

後面的host1和host2是允許訪問的客戶端主機,客戶端主機之間使用空格隔開。如果允許網路上的所有客戶端主機發現伺服器「出口」的目錄,就使用星號取代主機名。

每乙個客戶端主機後的括號內是訪問控制策略,包括讀寫許可權(ro,唯讀;rw,讀寫等等),訪問許可權之間使用逗號分隔。

3.重啟nfs服務

$ sudo /etc/init.d/nfs-kernel-server restart

也可以檢查nfs伺服器是否正常監聽,通過下面的命令找到對應的監聽埠

$ netstat -tl | grep nfs

二、客戶端掛載服務端nfs

1.檢視目標伺服器共享的目錄

$ sudo apt-get install nfs-kernel-server  #客戶端同樣也要安裝nfs軟體包

$ showmount -e server_host

-e 選項列出服務端的export list, 其中server_host是目標伺服器的主機位址,該命令將會顯示這個伺服器共享的目錄列表。如果不指定server_host,將會列出本機共享的目錄(export list)。

2.檢視自己已經掛載了哪些目錄

$ showmount -a

將會看到目前已掛載的伺服器以及相應的共享目錄。

3.建立掛載點

如果發現有伺服器共享的目錄需要掛載但還沒有掛載,可以為其建立乙個掛載點:

$ mkdir /mnt/mount_dir

其中的mount_dir是任意指定的名稱。

4.掛載共享目錄

在伺服器已經共享的前提下,使用客戶端可以掛載共享目錄

$ mount server_host:export_dir /mnt/client_dir

其中,server_host是伺服器位址,目錄與伺服器主機使用冒號分隔,export_dir必須與exports檔案中的完全相同,這個可以通過前面的showmount命令檢視。最後的引數就是我們將伺服器的目錄掛載到本地的掛載點,即第三布中建立的目錄。

5.解除安裝已掛載的目錄

如果使用完了伺服器的共享目錄,應該將其解除安裝,使用umount命令與解除安裝普通檔案系統操作相同。

$ umount /mnt/mount_dir

(實用)Ubuntu 開啟NFS服務

本文介紹如何在ubuntu下開啟nfs檔案系統,從而掛載網路上其他機器的檔案系統。nfs,network file system,即網路檔案系統,通常nfs有提供者和使用者,提供者export自己的目錄,使用者將提供者共享 export 的目錄掛載到自己的機器上,我們將提供者視為服務端,使用者視為客...

ubuntu 開啟nfs服務

sudo apt get install nfs kernel server 開啟 etc exports檔案,在末尾加入 home xgc rw,sync,no root squash 注 nfs允許掛載的目錄及許可權,在檔案 etc exports中進行定義,各欄位含義如下 home xgc 要...

ubuntu 開啟nfs服務

1.執行命令 sudo apt get install nfs kernel server 安裝nfs 2.配置 etc exports檔案 2.1建立nfs專有資料夾,檔案位置隨你定,只是建立之後裡面的內容可以實現nfs共享。本人建立在 home he nfs he 2.2 修改 etc expo...