为什么我在尝试创建文件时收到“权限被拒绝”提示

为什么我在尝试创建文件时收到“权限被拒绝”提示
jenkins@hostname:~/dir1/dir2$ ls -ld /some-nfs
drwxrwxrwx 121 171 146 6290 Feb  8 15:38 /some-nfs

jenkins@hostname:~/dir1/dir2$ ls -ld /some-nfs/important-dir
drwxrwxrwx 3 jenkins jenkins 28 Feb  8 15:39 /some-nfs/important-dir

jenkins@hostname:~/dir1/dir2$ mkdir /some-nfs/important-dir/important-dir/logs # able to create a dir

jenkins@hostname:~/dir1/dir2$ ls -ld /some-nfs/important-dir/logs
drwxrwxr-x 2 jenkins jenkins 0 Feb  8 15:39 /some-nfs/important-dir/logs

jenkins@hostname:~/dir1/dir2$ touch /some-nfs/important-dir/logs/file # not able to create a file
touch: cannot touch ‘/some-nfs/important-dir/logs/file’: Permission denied

为什么我得到没有权限在最后一步?

我希望能够创建该文件。

答案1

NFS 默认会将使用 root 权限创建的任何文件降级为 nobody:nogroup 用户:组。

这是一项安全功能,除非特别请求,否则可以防止特权共享。

您可能想要在 nfs 服务器的 /etc/exports 文件中启用“no_root_squash”选项。

一篇非常好的文章我建议您先阅读有关 root_squash 的信息,然后再决定它是否是适合您的正确解决方案。

相关内容