我正在OSX上的rails应用程序上开发ruby,我以管理员用户身份登录。
在我的Windows框中,我正在创建我的图像,但每次将它们复制到OSX框时,权限都很弱(我猜是可以理解的)。
所以每张照片我不得不右键单击,信息并给予每个人读写权限,或者我的网络服务器不会为他们服务。
最简单的解决方案是什么?一个Applescript自动给它完全许可?是否有一个设置可能导致每天做25次这很烦人。
是的我可以使用带有chmod的shell,但这仍然很烦人。
答案 0 :(得分:2)
类Unix系统上的每个进程都有一个名为“umask”的字段,用于控制默认权限。它通常是八进制0022,这意味着拒绝对组和其他人的写入权限。如果您使用终端窗口复制文件,请尝试键入
umask 0000
预先。或者,使用以下运行的bash命令打开终端窗口:
while true; do chmod 0666 *; sleep 1; done
答案 1 :(得分:0)
如果所有图像都进入同一目录,则可以向目录添加可继承的访问控制列表(ACL);然后复制到其中的任何文件(即图像)将自动获得该ACL。设置如下:
chmod +a "group:_www allow read,write,readattr,writeattr,file_inherit" /path/to/imagedir
请注意,您可能需要使用访问权限来获取Web服务器所需的一切。例如如果需要读取/写入扩展属性,删除文件等,则需要向ACL添加适当的权限。同样,如果您需要继承添加到子目录的文件,则需要添加更多类型的继承(并且可能会重新创建子目录以便他们接收更改)。另外,我假设这是标准的OS X 10.5 Apache安装,作为_www用户运行,它是_www组的成员;如果没有,请相应调整。有关详细信息,请参阅chmod的手册页。
答案 2 :(得分:0)
如果要复制许多文件/目录,请将它们打包在一个拉链窗口中,然后在mac中解压缩。提取的文件将具有适当的权限(至少与unarchiver一起使用)