NFS on Rocky Linux 8
Linux NFS 安裝步驟
本文將指導讀者如何在 Linux 系統上安裝和配置 NFS。從安裝到設置共享目錄。
什麼是 NFS
NFS (Network File System) 是一種分散式檔案系統協議,用於在網路上共享檔案和資源。
環境設定
id | name | ip |
---|---|---|
1 | nfs-server | 10.250.75.111 |
2 | nfs-client | 10.250.75.103 |
在 NFS Server 上
- 安裝 nfs 工具包
dnf -y install nfs-utils
- 啟動 nfs server 並且設定開機自動開啟。
systemctl enable --now nfs-server.service
- 建立 nfs 目錄
mkdir -p /mnt/nfs_shares
- 更改 owner 及設定權限
nobody 使用者是一個系統使用者,不擁有任何特殊權限,且通常用於運行低權限的服務或進程。
chown -R nobody:nobody /mnt/nfs_shares && chmod -R 777 /mnt/nfs_shares
- vim /etc/exports
/etc/exports 是在 Linux 系統中用於配置 NFS 的設定檔案。NFS 是一種分散式檔案系統,它允許不同的機器透過網路共享檔案。
rw: 可讀可寫
sync: 寫入後同步
no_all_squash: 禁用
all_squash
root_squash: 被啟用時,NFS 伺服器會將 root 使用者的操作映射為匿名使用者(通常是 nobody 或 nfsnobody)
/mnt/nfs_shares 10.250.75.103(rw,sync,no_all_squash,root_squash)
- 重啟 nfs-server
systemctl restart nfs-server.service
- 打開防火牆
service 檔案如下:
/usr/lib/firewalld/services/nfs.xml
/usr/lib/firewalld/services/rpc-bind.xml
/usr/lib/firewalld/services/mountd.xml
firewall-cmd --permanent --add-service=nfs --add-service=rpc-bind --add-service=mountd && firewall-cmd --reload
- 查看 export directories
-a: Export or unexport all directories.
-r: Reexport all directories
When exporting or unexporting, show what’s going on
exportfs -arv
- 查看 export list
-s: Display the current export list suitable for
/etc/exports
.
exportfs -s
在 NFS Client 上
- 檢查 nfs server 有沒有對 client server 開放使用
showmount -e 10.250.75.111
- 新增 mount 目錄
mkdir -p /nfs_client
- 掛載 nfs
mount -t nfs 10.250.75.111:/mnt/nfs_shares /nfs_client
- 查看是否成功
mount | grep nfs
- 設定開機時自動 mount
編輯 /etc/fstab
vi /etc/fstab
加入以下內容:
10.250.75.111:/mnt/nfs_shares /nfs_client nfs defaults 0 0