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