Windows XP Windows 7 Windows 2003 Windows Vista Windows 綜合教學 Linux 系統教學
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟體教學
您现在的位置: Windows教程網 >> Windows教程 >  >> Linux 系統教學 >> Linux 教學

NFS 網絡文件系統:從安裝配置到權限控制的完整入門教程

編輯:Linux 教學

一、安裝服務端與客戶端套件

yum -y install nfs-utils rpcbind

rpcbind(CentOS 6 前稱 portmap)負責 RPC 端口映射,NFS 依賴它。

二、權限控制雙層機制

  1. 系統級 UID/GID 映射:客戶端用戶 UID 直接對應服務端同 UID 的權限(root 特殊,見下)。
  2. 導出配置 /etc/exports 集中管控:
/home/public 192.168.8.0/24(ro) localhost(rw) *.ev.ncku.edu.tw(ro,sync)

格式:共享目錄 客戶端1(選項) 客戶端2(選項)...

客戶端指定方式

  • 單 IP:192.168.8.10
  • 網段:192.168.8.0/24 或 192.168.8.0/255.255.255.0
  • 主機名:需可解析(/etc/hosts 或 DNS),支持通配符 * ?

常用導出選項

選項說明
rw / ro讀寫 / 唯讀,最終仍受文件系統 rwx 限制
sync / async同步寫入磁盤 / 異步先寫內存(性能高但風險大)
root_squash (默認)將客戶端 root 映射為匿名用戶 nfsnobody,增強安全
no_root_squash保留客戶端 root 權限(慎用!)
all_squash所有用戶映射為匿名用戶
anonuid=UID, anongid=GID指定匿名用戶 UID/GID(需存在於 /etc/passwd)

三、服務端配置實戰案例

[root@web01 ~]# mkdir /home/public
[root@web01 ~]# chown barlow /home/public
[root@web01 ~]# service nfs start

案例 1:允許客戶端 root 保持權限

/home/public *(rw,no_root_squash)

案例 2:同一目錄,不同網段不同權限

/home/public 192.168.8.0/24(rw) *(ro)

案例 3:僅允許單一主機

/home/public 192.168.100.10(rw)

四、防火牆與固定端口配置(關鍵)

NFS 除 111 (rpcbind)、2049 (nfsd) 固定外,還會隨機佔用多個端口,iptables 難以配置。RHEL/CentOS 6.x 可通過 /etc/sysconfig/nfs 固定端口:

RQUOTAD_PORT=1001
LOCKD_TCPPORT=30001
LOCKD_UDPPORT=30001
MOUNTD_PORT=1002

設置後重啟 nfs、rpcbind,防火牆僅需開放這幾個固定端口即可。

五、客戶端掛載

mount -t nfs 192.168.8.10:/home/public /mnt/nfs
# 或加入 /etc/fstab 永久掛載
192.168.8.10:/home/public /mnt/nfs nfs defaults 0 0
Copyright © Windows教程網 All Rights Reserved