从Windows复制文件时如何设置默认权限 - > OSX

从Windows复制文件时如何设置默认权限 - > OSX

问题描述:

我正在OSX上开发Rails应用程序上的ruby,并且以管理员用户身份登录。从Windows复制文件时如何设置默认权限 - > OSX

在我的Windows机器上,我创建了我的图像,但每次我将它们复制到OSX框时,权限都很弱(可以理解我猜)。

因此,每张照片我不断右键单击,信息并给每个人读写权限,否则我的网络服务器将无法提供服务。

什么是最简单的解决方案?一个Applescript自动给它充分的权限?有没有一个设置可能导致它每天25次都很烦人。

是的我可以使用shell与chmod,但这仍然很烦人。

类Unix系统上的每个进程都有一个名为“umask”的字段,用于控制默认权限。它通常是八进制0022,这意味着拒绝写入权限组和其他。如果您使用终端窗口复制文件,请尝试键入

umask 0000 

。或者,留下一个终端窗口下面的bash命令运行开:

while true; do chmod 0666 *; sleep 1; done 

如果所有的图像都进入同一个目录,你可以添加一个可继承的访问控制列表(ACL)的目录;那么复制到其中的任何文件(即图像)都将自动获得该ACL。用类似的方法设置它:

chmod +a "group:_www allow read,write,readattr,writeattr,file_inherit" /path/to/imagedir 

请注意,您可能需要随时访问以获取网络服务器所需的全部内容。例如如果需要读取/写入扩展属性,删除文件等,则需要将相应的权限添加到ACL中。同样,如果你需要它继承添加到子目录的文件,你需要添加更多类型的继承(也许重新创建子目录,以便他们接受更改)。另外,我假设这是标准的OS X 10.5 Apache安装,以_www用户身份运行,它是_www组的成员;如果没有,则相应调整。有关详细信息,请参见chmod的手册页。

如果您正在复制许多文件/目录,请将它们打包在Windows中的zip中,然后在mac中解压缩。提取的文件将具有适当的权限(至少与unarchiver一起使用)