linux – Samba,Apache和SVN.获得权限
我有两台工作机器:
> Windows客户端(开发机器) 在Linux服务器上,我安装了Apache,Samba和SVN. 我创建了一个映射到htdocs /目录的samba共享,以便我可以从Windows访问Web文件. 以下说明了我的工作流程: >从Linux服务器上的命令行,我将Web项目的工作副本从远程服务器检出到我本地Linux服务器的htdocs目录. 我遇到的问题是,目前我可以通过Samba编辑Windows框中的文件,我必须将文件的所有者更改为nobody(apache用户)并将Samba共享设置为使用SHARE权限. 当我尝试使用SVN提交和更新等时,我不能,因为我的Linux用户不是’nobody’,并且没有权限这样做.所以我必须成为root做一个SVN [命令]然后将所有文件更改回’nobody’,这样我就无法在Windows上编辑. 我希望能够做的是让我的本地Linux用户拥有Web文件,这将使SVN命令工作,而Windows(通过samba)也可以使用同一个用户. 我怎样才能让它工作,有没有办法让Windows和Linux用户匹配? 解决方法
拥有一个组所拥有的文件和目录,即
Apache runs as.将目录设为
SGID.
chgrp -R group1 /path/to/htdocs find /path/to/htdocs -type d -exec chmod 2775 {} ; 在SAMBA共享下指定此组,可以使用force group = group1完成. 使用此组成员向SAMBA进行身份验证的用户.在有效用户中指定此用户,并在SAMBA中的共享中写入列表.这也应该允许您提交SVN. 另外,在smb.conf中指定create mask = 0664和directory mask = 2775,这将在创建时设置适当的权限.如果文件由与Apache相同的用户拥有,则可以在两个设置上将最终位设置为0. 如果一致地应用所有内容,您应该能够执行所有期望的操作,而不会对任何功能产生负面影响. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |