我的症状与Error number 13 - Remote access svn with dav_svn failing相同。但是,该问题的解决方案对我不起作用。
错误消息:
<D:error xmlns:D="DAV:" xmlns:m="http://apache.org/dav/xmlns" xmlns:C="svn:">
<C:error/>
<m:human-readable errcode="13">Could not open the requested SVN filesystem</m:human-readable>
</D:error>
相关的apache日志条目:
(20014)内部错误:无法打开文件'/ svn / testrepo / format':权限被拒绝
subversion conf文件:
<Location /svn>
DAV svn
SVNPath /svn/testrepo
</Location>
但是,我进一步确认用户apache
确实可以打开文件/svn/testrepo/format
,并且不仅可以打开它,还可以移动它,复制它,删除它并覆盖它。 (su apache - &gt;做所有这些。)接下来我该怎么办?
===========更多信息===========
作为对madjul的回应,以下是ps aux | grep apache
apache 14019 0.0 0.2 11248 2112 ? S 16:40 0:00 /usr/sbin/httpd
apache 14020 0.0 0.2 11248 2112 ? S 16:40 0:00 /usr/sbin/httpd
apache 14021 0.0 0.2 11248 2112 ? S 16:40 0:00 /usr/sbin/httpd
apache 14022 0.0 0.2 11248 2112 ? S 16:40 0:00 /usr/sbin/httpd
apache 14023 0.0 0.2 11248 2112 ? S 16:40 0:00 /usr/sbin/httpd
apache 14024 0.0 0.2 11248 2112 ? S 16:40 0:00 /usr/sbin/httpd
apache 14025 0.0 0.2 11248 2112 ? S 16:40 0:00 /usr/sbin/httpd
apache 14026 0.0 0.2 11248 2112 ? S 16:40 0:00 /usr/sbin/httpd
root 14032 0.0 0.0 5412 772 pts/4 R+ 16:41 0:00 grep apache
ps aux | grep www
root 14034 0.0 0.0 5412 772 pts/4 S+ 16:42 0:00 grep www
我的repo文件夹中ls -as
的结果:
drwxrwxrwx 7 apache apache 4096 2011-10-07 16:13 .
drwxr-xr-x 7 apache apache 4096 2011-10-07 14:04 ..
-rw-r--r-- 1 apache apache 229 2011-10-07 13:50 README.txt
drwxr-xr-x 2 apache apache 4096 2011-10-07 15:50 conf
drwxr-xr-x 2 apache apache 4096 2011-10-07 13:50 dav
drwxr-sr-x 5 apache apache 4096 2011-10-07 14:25 db
-rwxrwxrwx 1 apache apache 2 2011-10-07 13:50 format
drwxr-xr-x 2 apache apache 4096 2011-10-07 13:50 hooks
drwxr-xr-x 2 apache apache 4096 2011-10-07 13:50 locks
答案 0 :(得分:2)
您是否启用了selinux
?我通常会为mod_dav_svn
禁用它,但您可以使用某些配置。
vince@fedora12 /etc/httpd/conf.d > cat /etc/selinux/config
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
# enforcing - SELinux security policy is enforced.
# permissive - SELinux prints warnings instead of enforcing.
# disabled - SELinux is fully disabled.
SELINUX=disabled
# SELINUXTYPE= type of policy in use. Possible values are:
# targeted - Only targeted network daemons are protected.
# strict - Full SELinux protection.
SELINUXTYPE=targeted
答案 1 :(得分:2)
请在此处查看我的解决方案: http://www.indevcenter.com/svn-issue-could-open-requested-svn-filesystem/
它应该适用于您的SVN权限问题。
答案 2 :(得分:2)
我正在研究,我发现了这一点。
准确地说,你有SELinux anabled,是一个安全系统,我没有完全理解它是如何工作的,但这就是问题所在。如果你想知道是否类型
[root @ localhost~] #getenforce
如果说执行,则在
要停用它,请输入
[root @ localhost~] #chcon -R -t httpd_sys_content_t / var / www / svn / your / path
[root @ localhost~] #chcon -R -t httpd_sys_rw_content_t / var / www / svn / your / path
答案 3 :(得分:1)
Apache通常有另一个用户来访问数据。通常它被称为www-data。您可以通过调用ps aux
进行检查并搜索apache进程
答案 4 :(得分:0)
这是一个旧线程,但我遇到了相同的错误消息。就我而言,我使用的是另一个安装为存储库的硬盘驱动器,因此我必须将所有权授予www-data整个磁盘。我找到了这个线程,并在https://ubuntuforums.org/archive/index.php/t-1233618.html
下应用了它sudo chown www-data:www-data /media/yourdisk -R