UNIX文件夹中设置的权限未正确传输到NFS共享

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了UNIX文件夹中设置的权限未正确传输到NFS共享相关的知识,希望对你有一定的参考价值。

我们有一个NFS共享,其中unix中的文件夹安装在NFS Windows服务器上。甚至在unix机器上为某个文件夹设置了775的权限之后。这一点并不反映某些java进程在该文件夹中创建文件的时间。

所以我们在nfs服务器上安装的unix机器上有/ nobackup / stream这样的文件夹

unix机器上的权限ls -ald / nobackup / stream rwxrwxr-x所有者组

我们有一个自动化过程将结果日志和子目录写入流文件夹,这是因为某些奇怪的原因是文件是在获得许可的情况下创建的

rwxr-xr-x所有者组

即不存在对组的写访问权。

这导致我们的自动化失败,在某些地方,以组用户权限运行的进程尝试更新使用上述权限创建的文件

最初嫌犯是umask

所以我们在perl进程中将umask设置为0002,这启动了无效的自动化

Files.mkdir用于写入文件

这里posix权限是正确的,umask是正确的仍然没有使用正确的权限创建新文件

另请注意,如果这会导致问题,自动化将在cygwin shell下运行

如何确保始终正确设置文件权限

答案

问题是自动化在cygwin中运行。这些文件仍然由Windows NFS客户端编写,它不知道如何解释在cygwin中设置的权限。

您需要在Windows NFS客户端中设置默认权限。您可以使用nfsadmin从命令行执行此操作。就像是:

nfsadmin client [ComputerName] fileaccess=664

资料来源:https://technet.microsoft.com/en-us/library/cc754304(v=ws.11).aspx

以上是关于UNIX文件夹中设置的权限未正确传输到NFS共享的主要内容,如果未能解决你的问题,请参考以下文章

NFS服务器配置(UNIX/Linux操作系统之间文件共享)--Linux

linux挂载aixnfs没有写权限

Centos6通过NFS文件服务器实现文件共享

如何把linux下的nfs共享目录挂载到window下的指定目录中

0基础linux运维教程 共享存储之nfs介绍

使用 Kentico Kontent 的对象数组未按 CMS 中设置的顺序呈现