Nfs

無法寫入掛載點(nfs-server),得到“權限被拒絕”

  • March 19, 2016

我正在嘗試NFS在兩個 RHEL7 節點之間進行配置:

第一個節點:

[root@ip-10-164-175-246 ~]# cat /etc/redhat-release 
Red Hat Enterprise Linux Server release 7.0 (Maipo)
[root@ip-10-164-175-246 ~]# rpm -q nfs-utils
nfs-utils-1.3.0-0.el7.x86_64
[root@ip-10-164-175-246 ~]# cat /etc/exports
/var/www/html/  ip-10-184-161-46.ec2.internal(rw)
[root@ip-10-164-175-246 ~]# 

第二個節點:

[root@ip-10-184-161-46 ~]# mount ip-10-164-175-246.ec2.internal:/var/www/html/ /mnt/
[root@ip-10-184-161-46 ~]# touch /mnt/$$
touch: cannot touch ‘/mnt/3326’: Permission denied
[root@ip-10-184-161-46 ~]# 

為什麼我不能通過/mnt/NFS 寫入任何內容?

您的出口是否利用root_squash?來自CentOS 文件

root_squash — 防止遠端連接的 root 使用者擁有 root 權限,並為他們分配使用者 nfsnobody 的使用者 ID。這有效地將遠端 root 使用者的權力“壓制”到最低的本地使用者,防止未經授權更改遠端伺服器上的文件。或者, no_root_squash 選項關閉根壓縮。要壓縮每個遠端使用者,包括 root,請使用 all_squash 選項。要指定用於來自特定主機的遠端使用者的使用者和組 ID,請分別使用 anonuid 和 anongid 選項。在這種情況下,可以為遠端 NFS 使用者創建一個特殊的使用者帳戶來共享和指定 (anonuid=,anongid=),其中是使用者 ID 號,是組 ID 號。

您需要添加標誌no_root_squash來禁用它,因為它預設處於打開狀態。

引用自:https://serverfault.com/questions/611007