前言

Network FileSystem (NFS) 稱為網路文件系統,是一種分佈式文件系統協定,允許在伺服器上安裝遠端目錄,讓使用者可以管理不同位置的儲存空間。

NFS Server 需要先查詢硬碟狀態,確認是可被掛載的,如果是新硬碟,可參考此篇設定。


NFS Server

系統環境

  • OS:Ubuntu 18.04
  • nfs-kernel-server:1.3.4

安裝 nfs-kernel-server

1
2
sudo apt-get update
sudo apt-get install nfs-kernel-server

修改 /etc/hosts.deny 設定阻擋權限

下面範例是禁止任何主機能和你的 NFS 伺服器進行連接

1
sudo vim /etc/hosts.deny
1
2
3
4
5
portmap:ALL 
lockd:ALL
mountd:ALL
rquotad:ALL
statd:ALL

修改 /etc/hosts.allow 設定允許權限

下面範例是允許 192.168.0.* 的主機和你的 NFS 伺服器建立連接

1
sudo vim /etc/hosts.allow
1
2
3
4
5
portmap: 192.168.0.
lockd: 192.168.0.
rquotad: 192.168.0.
mountd: 192.168.0.
statd: 192.168.0.

修改 /etc/exports 設定 NFS 掛載目錄及權限

1
sudo vim /etc/exports
1
/raid 192.168.0.*(rw,sync,no_root_squash,no_subtree_check)
  • 203.68.230.* :允許連線的IP, * 代表任意值
  • rw:可讀寫
  • sync:同步寫入記憶體和硬碟
  • no_root_squash:用戶進入後即變為 root

更新並重啟 NFS 服務

1
2
sudo exportfs -arv
sudo service nfs-kernel-server restart

NFS Client

系統環境

  • OS:Ubuntu 18.04
  • nfs-common:1.3.4

安裝 nfs-common

1
2
sudo apt-get update
sudo apt-get install nfs-common

建立資料夾

1
sudo mkdir /data

掛載 NFS Server 的資料夾

1
sudo mount 192.168.0.100:/raid /data
  • 192.168.0.10 :NFS Server 的 IP
  • /raid:Server 的資料夾
  • /data:Client 的資料夾

寫入 /etc/fstab

1
sudo vim /etc/fstab
1
192.168.0.100:/raid /data nfs defaults 0 0

重啟掛載表

1
sudo mount -a