網絡文件系統(Network File System,簡稱NFS)作為一種分布式文件系統協議,允許用戶在網絡上訪問其他計算機上的文件,就像訪問本地存儲一樣便捷
NFS以其高性能、靈活性和跨平臺兼容性,在Linux環境中得到了廣泛應用
本文將詳細介紹如何在Linux系統上手動配置NFS,旨在幫助讀者掌握這一強大工具,以打造高效、可靠的文件共享解決方案
一、NFS概述 NFS最初由Sun Microsystems開發,并于1984年首次發布
它基于客戶端-服務器模型,其中NFS服務器負責存儲和管理文件,而客戶端則通過網絡請求訪問這些文件
NFS協議支持多種操作,如讀取、寫入、創建和刪除文件,以及目錄遍歷等,且支持UNIX和Linux系統之間的無縫集成
NFS的主要優勢包括: 1.高性能:針對局域網環境優化,可以提供接近本地磁盤的性能
2.易用性:用戶無需關心文件位于哪臺服務器,只需通過掛載點訪問
3.跨平臺:不僅限于Linux,還支持UNIX、macOS等操作系統
4.權限管理:通過Unix風格的權限模型,實現精細的文件訪問控制
二、準備工作 在開始配置NFS之前,請確保以下幾點: 服務器與客戶端的網絡連接正常
- 服務器和客戶端均已安裝NFS相關軟件包
在大多數Linux發行版中,可以通過包管理器安裝,如`apt`(Debian/Ubuntu)或`yum`(CentOS/RHEL)
服務器有足夠的磁盤空間用于共享文件
三、配置NFS服務器 1. 安裝NFS服務器軟件 首先,在服務器上安裝NFS服務器軟件包
以Ubuntu為例: sudo apt update sudo apt install nfs-kernel-server 對于CentOS/RHEL,使用: sudo yum install nfs-utils 2. 配置共享目錄 編輯`/etc/exports`文件,添加要共享的目錄及其訪問權限
例如,要共享`/srv/nfs4`目錄,并允許`192.168.1.0/24`網段的客戶端讀寫訪問,添加如下行: /srv/nfs4 192.168.1.0/24(rw,sync,no_subtree_check) 參數解釋: - `rw`:讀寫權限
- `sync`:同步寫入,確保數據完整性
- `no_subtree_check`:不檢查子目錄的變化,提高性能
3. 創建共享目錄并設置權限 確保共享目錄存在,并設置適當的權限
例如: sudo mkdir -p /srv/nfs4 sudo chown nobody:nogroup /srv/nfs4 通常NFS使用nobody用戶運行,需設置合適權限 sudo chmod 777 /srv/nfs4 設定寬泛權限,實際應用中需根據安全需求調整 4. 啟動并啟用NFS服務 啟動NFS服務器并設置其在系統啟動時自動運行: sudo systemctl start nfs-kernel-server Ubuntu sudo systemctl enable nfs-kernel-server 或對于CentOS/RHEL sudo systemctl start nfs-server sudo systemctl enable nfs-server 5. 導出共享目錄 使用`exportfs`命令重新導出配置: sudo exportfs -ra 四、配置NFS客戶端 1. 安裝NFS客戶端軟件 在客戶端機器上安裝NFS客戶端軟件包
以Ubuntu為例: sudo apt update sudo apt install nfs-common 對于CentOS/RHEL,使用: sudo yum install nfs-utils 2. 創建掛載點 在客戶端上創建一個目錄作為NFS共享的掛載點
例如: sudo mkdir -p /mnt/nfs4 3. 掛載NFS共享 使用`mount`命令手動掛載NFS共享
例如: sudo mount 192.168.1.10:/srv/nfs4 /mnt/nfs4 其中`192.168.1.10`是NFS服務器的IP地址
4. 自動掛載(可選) 為了在系統啟動時自動掛載NFS共享,可以編輯`/etc/fstab`文件
添加如下行: 192.168.1.10:/srv/nfs4 /mnt/nfs4 nfs defaults 0 0 保存并退出后,可以使用`sudo mount -a`命令測試自動掛載配置是否正確
五、高級配置與優化 1. 防火墻配置 確保NFS服務器和客戶端之間的防火墻允許NFS相關的端口通信
NFS主要使用TCP和UDP的2049端口,以及其他輔助端口如111(RPC服務)
2. 安全性增強 - 使用root_squash:默認啟用,確保遠程以root身份訪問的用戶權限被壓縮到匿名用戶
- Kerberos認證:對于更高安全需求,可以配