我已经创建了一个 NFS Debian 服务器,并在导出文件中添加了以下行
/home/remote 10.255.255.108(rw,sync,no_subtree_check) 10.255.255.101(rw,sync,no_subtree_check,all_squash)
该目录属于一个用户和组,其 uid 和 gid 由我设置为已知值。
在客户端我这样做(以 root 身份)
mount -t nfs pc00:/home/remote /home/NFS/
现在,当我在电脑上的目录上执行 ls -la 时,我拥有正确的本地用户和组(它们是使用与服务器中的用户和组相同的 GID 和 UID 值创建的)
drwxrwx---. 5 pepito laspruebas 4096 Mar 28 11:55 NFS
但是当我尝试通过 CD 进入该文件夹时(以我的用户 ariela 的身份):
[ariela@pc01 home]$ cd NFS/
bash: cd: NFS/: Permission denied
我应该补充一点,ariela 属于 laspruebitas 组,如果我尝试在未安装该文件夹的情况下通过 cd 进入该文件夹,则不会出现任何问题。
我做错了什么?我想要一个不将文件夹权限设置为 777 的解决方案。
编辑:我尝试以 root 身份进入 /home/NFS 文件夹,但无法做到。
答案1
如果有人遇到这种情况,我已经解决了这个问题。但您需要确保两件事:1) 该组(在本例中为 laspruebas)是您的主要组。这可以通过 ( newgrep laspruebas
) 永久地为控制台完成,也可以通过 AND 暂时为一个命令完成sg
2) 您必须确保目录具有 x(执行权限),以便所有者、组或其他人能够通过 CD 进入该目录。