我在 OpenSUSE 上运行 Apache2、SVN 和 Trac。SVN 运行起来非常好。我已为我的一个 SVN 存储库初始化了 trac 环境,以便 trac 在其存储库浏览器中显示源代码,并且我在 Trac Web 管理员中设置了存储库。我还为该存储库运行了 trac-admin resync,没有任何问题。
问题是,当我打开 Trac repo 浏览器时,我得到了:
"can't open file: /srv/svn/repos/myrepo/format, access denied)"
错误。我检查了权限,发现:
- Apache 运行为韋斯萊
- tracd 运行为韋斯萊
- 整个子树 /srv/svn/... 属于SVN 版本组,并且该组有读写权限一直到“格式”文件
- 韋斯萊在里面SVN 版本团体
我也做了烫发检查:
$ sudo -u wwwrun cat /srv/svn/repos/myrepo/format
并顺利将其打印出来。
所以我认为不应该有任何权限冲突。还有什么要检查的吗?
提前致谢!
编辑:如果我用运行 trac 的 apache 用户 chown 整个 svn 目录(在我的情况下是 wwwrun),它就会起作用。但我不认为应该这样做(组就是为此而设的,对吧?)。
Trac 0.12.2,svnserve 版本 1.6.17(r1128011)