我在 CentOS 7 上设置了一个简单的 NFS 共享,以允许我的 Mac 管理 /var/www/html 目录中的文件:
/var/www/html 192.168.1.107(all_squash,anonuid=1000,anongid=1001,rw,sync)
使用正确的 UID 和 GID 创建文件和目录,但使用错误的 umask:
-rw-r--r-- 1 1000 1001 41 Jul 1 15:05 index.html
drwxr-xr-x 2 1000 1001 6 Jul 1 15:04 test_dir
我需要的权限分别是 664 和 775。
我已将用户(GID 1000)的 umask 设置为“umask 000”,以便在 .bashrc 中进行测试
当我以该用户身份登录并接触该目录中的文件时,我获得 666 权限。
这是我在 Mac 上使用的挂载命令:
sudo mount -t nfs -o resvport,rw,vers=4 www:/var/www/html /mnt/www
(www 是 CentOS 服务器的名称)
我已完全禁用此服务器上的 SELinux,并验证它未启用。
答案1
事实证明,问题出在 Mac 机器上的 umask 设置上。如果我在将文件复制到 NFS 卷之前更新 umask,文件最终将具有正确的权限。