在Linux中,NFS(網絡文件系統)服務器用于在網絡上共享文件和目錄
在Debian/Ubuntu系統上,使用以下命令安裝NFS服務器:
sudo apt-get update
sudo apt-get install nfs-kernel-server nfs-common
在CentOS/RHEL系統上,使用以下命令安裝NFS服務器:
sudo yum install nfs-utils
首先,創建一個要共享的目錄,并設置適當的權限。例如,創建一個名為/shared
的目錄:
sudo mkdir /shared
sudo chown nfsnobody:nfsnobody /shared
sudo chmod 755 /shared
這里,我們將目錄的所有者設置為nfsnobody
,這是一個特殊的組,用于NFS訪問。我們還設置了目錄的權限為755
,以便所有用戶都可以讀取和執行文件。
編輯/etc/exports
文件以配置NFS共享。例如,要共享/shared
目錄,您可以添加以下行:
/shared *(rw,sync,no_subtree_check)
這里,我們允許所有客戶端以讀寫權限訪問共享目錄。sync
選項表示每次寫入后立即同步到磁盤,以提高數據安全性。no_subtree_check
選項用于提高性能,但可能會導致某些安全問題。
保存并關閉文件。然后,重啟NFS服務以應用更改:
在Debian/Ubuntu系統上:
sudo systemctl restart nfs-kernel-server
在CentOS/RHEL系統上:
sudo systemctl restart nfs-server
如果您的服務器啟用了防火墻,您需要允許NFS相關端口(通常為111,2049和4049)的傳入連接。例如,使用iptables
時,您可以添加以下規則:
sudo iptables -A INPUT -p tcp --dport 111 -j ACCEPT
sudo iptables -A INPUT -p udp --dport 111 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 2049 -j ACCEPT
sudo iptables -A INPUT -p udp --dport 2049 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 4049 -j ACCEPT
sudo iptables -A INPUT -p udp --dport 4049 -j ACCEPT
如果您使用的是firewalld
,則可以添加以下規則:
sudo firewall-cmd --permanent --add-service=nfs
sudo firewall-cmd --permanent --add-service=mountd
sudo firewall-cmd --permanent --add-port=111/tcp
sudo firewall-cmd --permanent --add-port=111/udp
sudo firewall-cmd --permanent --add-port=2049/tcp
sudo firewall-cmd --permanent --add-port=2049/udp
sudo firewall-cmd --permanent --add-port=4049/tcp
sudo firewall-cmd --permanent --add-port=4049/udp
sudo firewall-cmd --reload
現在,您的Linux NFS服務器已設置并準備好共享文件??蛻舳丝梢允褂?code>mount命令將共享目錄掛載到本地文件系統,然后訪問共享文件。