Debian NFS 客户端权限问题

Debian NFS 客户端权限问题

我有以下环境:

host1:带有 zfs 2.1.11 的 Debian 12:使用默认软件包、nfs-utils 2.6 打开 ldap 服务器

host2:Debian 12:使用默认软件包打开 ldap 客户端,nfs-utils 2.6

在ldap服务器端我创建了两个组primarygroup1和primarygroup2,用户user1属于组primarygroup2

服务器端

getent group:
primarygroup1:*:1000001:
primarygroup2:*:1000002:

getent passwd:
user1:x:1000001:1000002:user1:/home/user1:/bin/false

服务器通过 NFS 提供具有权限的文件数据集

NFS 出口:

exportfs -v
/tank/d1 <world>(sync,wdelay,hide,fsid=9a31889cb81531154198e4c3c5156b74,sec=sys,rw,secure,no_root_squash,no_all_squash)

文件权限:

getfacl /tank/d1/file.txt
getfacl: Removing leading '/' from absolute path names
# file: tank/d1/file.txt
# owner: root
# group: primarygroup1
user::rwx
group::r--
other::---

客户端:

NFS 挂载

mount
192.168.164.200:/tank/d1 on /mnt/testnfs type nfs
(rw,relatime,vers=3,rsize=524288,wsize=524288,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,mountaddr=192.168.164.200,mountvers=3,mountport =53721,mountproto=udp,local_lock=none,addr=192.168.164.200)

文件的权限

getfacl /mnt/testnfs/file.txt
getfacl: Removing leading '/' from absolute path names
# file: mnt/testnfs/file.txt
# owner: root
# group: primarygroup1
user::rwx
group::r--
other::---

getent group:
primarygroup1:*:1000001:
primarygroup2:*:1000002:

getent passwd:
user1:x:1000001:1000002:user1:/home/user1:/bin/false

问题在于,在客户端,user1 没有权限读取该文件,它不属于 primarygroup1,但它可以读取该文件。

user1@deb12nfsclient:/root$ cat /mnt/testnfs/file.txt
####### data ######

重新启动 NFS 服务器并重新挂载有时会有所帮助,但在大多数情况下不起作用。此外,我注意到大约 15 分钟后,这些权限可以自行正常工作,而无需重新启动 NFS 服务器

约 15 分钟后:

user1@deb12nfsclient:/root$ cat /mnt/testnfs/file.txt
cat: /mnt/testnfs/file.txt: Permission denied

在客户端,我使用了安装选项:noac,actimeo=0,但没有帮助。

有人知道为什么会这样吗? 有什么方法可以缩短此时间以使权限正常工作?

问候亚当

相关内容