NFS(網絡文件系統)是一種文件系統協議,允許用戶查看和訪問遠程系統上的文件和文件夾,就好像它們存儲在本地一樣。這是一種客戶端/服務器配置,其中共享存儲的系統稱為服務器,訪問存儲在服務器上的存儲的系統稱為客戶端。 NFS 允許用戶或系統管理員將服務器的全部或部分文件系統安裝在客戶端系統上。然後,客戶端可以根據分配給已安裝文件的特定權限(讀取、寫入)訪問已安裝的文件。
創建 NFS 客戶端-服務器設置是一項簡單的任務,只需幾個步驟即可完成:安裝、導出、安裝和訪問。本文將指導您完成在 Debian 系統上設置 NFS 服務器和客戶端的過程,以便您可以在遠程系統之間共享文件。
我在 Debian 10 系統上運行了本文中給出的命令和步驟。
NFS 服務器
要為共享目錄設置主機系統,您需要安裝 NFS 內核服務器。請按照以下步驟操作。
第 1 步:安裝 NFS 核心服務器
在繼續 NFS 服務器安裝之前,請在終端中運行以下命令以更新系統存儲庫索引。
$ sudo apt-get update
更新後,通過在終端中運行以下命令來安裝 NFS 內核服務器:
$ sudo apt install nfs-kernel-system
系統可能會為您提供 不知何故 確認安裝的選項。打 是的 確認後,系統將開始安裝。
第 2 步:創建導出目錄
現在您需要創建一個導出目錄以與客戶端的系統共享。你可以標記任何你喜歡的東西。在這裡,我們在 /mnt 目錄中創建一個名為“sharedfolder”的導出目錄。
運行以下命令,指定導出目錄路徑如下:
$ sudo mkdir –p /mnt/sharedfolder
要允許所有客戶端訪問導出目錄,您必須刪除限制性權限。為此,請運行以下命令:
$ sudo chown nobody:nogroup /mnt/sharedfolder
然後應用允許對每個人進行讀取、寫入和執行訪問的新權限。
$ sudo chmod 755 /mnt/sharedfolder
所有客戶端都可以訪問共享文件夾。
步驟 3:配置導出目錄
NFS 服務器配置文件位於 /etc/ 目錄中。您可以在此處指定要與客戶端共享的目錄和客戶端的主機名。 要使用 nano 編輯器編輯 /etc/s 文件,請在終端中運行以下命令 sudo。
$ sudo nano /etc/s
使用以下格式為客戶端分配訪問權限:
directory hostname(options)
要允許訪問單個客戶端,請添加以下行:
/mnt/sharedfolder clientIP(rw,sync,no_subtree_check)
要允許訪問多個客戶端,請添加以下行:
/mnt/sharedfolder client1IP(rw,sync,no_subtree_check) /mnt/sharedfolder client2IP(rw,sync,no_subtree_check)
要指定整個子網以允許訪問多個客戶端,請添加以下行:
/mnt/sharedfolder subnetIP/24(rw,sync,no_subtree_check)
這裡我們指定客戶端的整個子網,以允許客戶端訪問共享目錄。
編輯完 /etc/s 文件後,按 ctrl+O 保存,按 ctrl+X 退出文件。
上面文件中的參數(rw,sync,no_subtree_check)表示客戶端有以下權限:
- r瓦: 讀寫操作
- 同步:在應用之前將更改寫入磁盤
- no_subtree_check: 沒有子樹檢查
第 4 步:導出共享目錄
此步驟的下一步需要導出 /etc/s 中列出的共享目錄。為此,請在終端中運行以下命令:
$ sudo fs –a
然後重新啟動 NFS 內核服務器以應用配置更改。
第 5 步:配置防火牆
確保服務器處於打開狀態以便客戶端可以訪問共享內容非常重要。您需要添加一條規則以允許從指定客戶端到 NFS 端口的流量。為此,請使用以下語法:
$ sudo ufw allow from [client-IP or client-Subnet] to any port nfs
在本例中,我們允許整個 192.168.72.0 子網連接到 NF 端口。
$ sudo ufw allow from 192.168.72.0/24 to any port nfs
要驗證規則是否已成功添加,請在終端中運行以下命令。
$ sudo ufw status
主機 NFS 服務器現在已配置並可從指定的客戶端訪問。
配置客戶端機器
然後配置客戶端機器訪問服務器的導出目錄。請按照以下步驟操作。
步驟 1:安裝 NFS 客戶端
首先,通過在終端中運行以下命令來更新客戶端計算機上的存儲庫索引:
$ sudo apt-get update
接下來,通過在終端中運行以下命令來安裝名為 NFS common 的 NFS 客戶端應用程序:
$ sudo apt-get install nfs-common
系統可能會為您提供 不知何故 確認安裝的選項。打 是的 確認後,系統將開始安裝。
步驟 2:在 NFS 服務器上為共享文件夾創建掛載點
接下來,創建一個掛載點來訪問服務器的共享。在這裡,在 /mnt 目錄中創建一個名為“sharedfolder_clientr”的掛載點。我使用以下命令來執行此操作:
$ sudo mkdir -p /mnt/sharedfolder_client
第三步:在客戶端掛載服務器的共享目錄
您在上一步中創建了一個掛載點。現在將 NFS 服務器上的共享目錄掛載到上面創建的掛載點。為此,您可以使用以下語法:
$ sudo mount serverIP:/Folder_server /mnt/mountfolder_client
例如,此示例將共享目錄“/mnt/sharedfolder”從 NFS 服務器掛載到客戶端計算機上的掛載點“/mnt/mountfolder_client”。
$ sudo mount 192.168.72.164:/mnt/sharedfolder /mnt/sharedfolder_client
其中 192.168.72.164 是 NFS 服務器的 IP。
一個共享的 NFS 目錄現在安裝在客戶端的機器上。
第 4 步:測試您的連接
接下來,測試您的 NFS 客戶端服務器設置。為此,請在您的 NFS 服務器共享上創建一個測試文件或文件夾。可以看到在 NFS 服務器共享上已經創建了名為“documents”和“music”的兩個文件夾,如下例所示。
現在打開客戶端機器上的掛載點。在這裡,您可以看到在服務器的共享目錄中創建的相同文件和文件夾。
就這樣! 我希望您已經學會瞭如何在您的 Debian 10 系統上安裝和設置 NFS 服務器和客戶端。本文還介紹瞭如何訪問 NFS 主機以訪問共享信息。