Fedora 13 32bit
Apache 2.2.16
在/var/www/svn下设置Subversion版本库
我在这个目录下有两个不同的仓库,所以我的/etc/httpd/conf.d/subversion.conf设置;
LoadModule dav_svn_module modules/mod_dav_svn.so LoadModule authz_svn_module modules/mod_authz_svn.so <Location /svn> DAV svn SVNListParentPath on SVNParentPath /var/www/svn <LimitExcept GET PROPFIND OPTIONS REPORT> AuthType Basic AuthName "Subversion Repository" AuthUserFile /etc/httpd/.htpasswd Require valid-user </LimitExcept> </Location>
在复制我的回购和使用后;
chmod 755 -R /var/www/svn
chcon -R -t httpd_sys_content_t /var/www/svn
chown apache:apache -R /var/www/svn
我可以通过浏览器浏览我的回购,我可以更新我的所有工作副本,但是当我尝试从任何地方办理登机手续时,我得到同样的错误
Can't open file '/var/www/svn/repo/db/txn-current-lock':Permission denied
我一直在这个问题上工作了一段时间,似乎不能find解决我的问题。 在这之前知道repo存在于不同的服务器上可能有些用处,现在它已经被移到了这个新的服务器上。
我读过的一切似乎都表明,对于Apache的权限是不正确的,但是Apache被设置为以用户apache和组apache运行。 所以据我所知,我的设置是正确的。 行为不是虽然。
有任何想法吗?
唯一能够实现这个目标的方法是禁用SELinux,也可以通过setsetbool和getsebool通过SELinux设置适当的布尔值来完成,因为这只是一个家庭服务器,我决定禁用SELinux,并获得好处现在。
不要使用apache:subversion apache:apache拥有的目录,而要使用apache:subversion 。 那是,
chown apache:subversion -R /var/www/svn
安德鲁
通过webdav工作使SVN写入的SELINUX布尔值是:
setsebool -P httpd_unified = 1
我的朋友遇到这个问题,一年多以前find了解决办法。
http://www.melange.co.jp/blog/?s=setsebool&submit=Search (用日语写)
他的名字是伊藤,一个清酒爱好者,住在东京南部的日本。
我为他发布这个。