Fedora osで、SVNリポジトリにアクセスしてHTTP経由でコミットするのに問題があります。
これが私の設定ファイルです
/etc/httpd/conf.d/Subversion.conf
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
LoadModule dontdothat_module modules/mod_dontdothat.so
<Location /svn>
DAV svn
SVNParentPath /var/www/svn
SVNListParentPath On
SVNPathAuthz Off
AuthType Basic
AuthName "myRepos"
AuthUserFile /etc/svn-pass
AuthzSVNAccessFile /etc/svn-authz
Require valid-user
</Location>
エラー:
共有プロジェクトが失敗しました。 svn:ファイルを開くことができません '/ var/www/svn/repo/db/txn-current-lock':アクセスが拒否されましたvn:MKACTIVITY of '/ svn/repo /!svn/act/4b515a33-4801-0010-8d84-bddd16ee6e1b ':500内部サーバーエラー( http://example.com:808 )
そしてここにディレクトリがあります:
./repo/db: total 56K drwxr-sr-x. 6 Apache apache 4.0K Sep 1 01:03 ./ drwxr-xr-x. 6 Apache apache 4.0K Aug 30 23:20 ../
-rw-r--r--. 1 Apache apache 2 Sep 1 01:03 current
-r--r--r--. 1 Apache apache 22 Aug 30 23:20 format
-rw-r--r--. 1 Apache apache 2.0K Aug 30 23:20 fsfs.conf
-rw-r--r--. 1 Apache apache 5 Aug 30 23:20 fs-type
-rw-r--r--. 1 Apache apache 2 Aug 30 23:20 min-unpacked-rev
-rw-r--r--. 1 Apache apache 4.0K Aug 30 23:24 rep-cache.db drwxr-sr-x. 3 Apache apache 4.0K Aug 30 23:20 revprops/ drwxr-sr-x. 3 Apache apache 4.0K Aug 30 23:20 revs/ drwxr-sr-x. 2 Apache apache 4.0K Sep 1 01:03 transactions/
-rw-r--r--. 1 Apache apache 2 Sep 1 01:03 txn-current
-rw-r--r--. 1 Apache apache 0 Aug 30 23:20 txn-current-lock drwxr-sr-x. 2 Apache apache 4.0K Sep 1 01:03 txn-protorevs/
-rw-r--r--. 1 Apache apache 37 Aug 30 23:20 uuid
-rw-r--r--. 1 Apache apache 0 Aug 30 23:20 write-lock
そして
./repo/db:drwxr-sr-x。 Apache apache unconfined_u:object_r:httpd_sys_content_t:s0 ./drwxr-xr-x。 Apache Apache unconfined_u:object_r:httpd_sys_content_t:s0 ../-rw-r--r--。 Apache apache system_u:object_r:httpd_sys_content_t:s0 current-r--r--r--。 Apache apache unconfined_u:object_r:httpd_sys_content_t:s0 format-rw-r--r--。 Apache apache unconfined_u:object_r:httpd_sys_content_t:s0 fsfs.conf-rw-r--r--。 Apache apache unconfined_u:object_r:httpd_sys_content_t:s0 fs-type-rw-r--r--。 Apache apache unconfined_u:object_r:httpd_sys_content_t:s0 min-unpacked-rev-rw-r--r--。 Apache apache unconfined_u:object_r:httpd_sys_content_t:s0 rep-cache.dbdrwxr-sr-x。 Apache apache unconfined_u:object_r:httpd_sys_content_t:s0 revprops/drwxr-sr-x。 Apache apache unconfined_u:object_r:httpd_sys_content_t:s0 revs/drwxr-sr-x。 Apache apache unconfined_u:object_r:httpd_sys_content_t:s0transactions/-rw-r--r--。 Apache apache system_u:object_r:httpd_sys_content_t:s0 txn-current-rw-r--r--。 Apache apache unconfined_u:object_r:httpd_sys_content_t:s0 txn-current-lockdrwxr-sr-x。 Apache apache unconfined_u:object_r:httpd_sys_content_t:s0 txn-protorevs/-rw-r--r--。 Apache apache unconfined_u:object_r:httpd_sys_content_t:s0 uuid-rw-r--r--。 Apache apache unconfined_u:object_r:httpd_sys_content_t:s0書き込みロック
SELinux problem again
許可の問題です。ただし、Apacheユーザーの「従来の」読み取り/書き込み権限ではなく、selinuxユーザーの権限です。
Apacheは、httpd_sys_content_tというラベルの付いたファイルに書き込むことはできず、Apacheでのみ読み取ることができます。
2つの可能性があります:
svnリポジトリファイルにhttpd_sys_content_rw_tのラベルを付けます。
1- chcon -R -t httpd_sys_content_rw_t /path/to/your/svn/repo
selinux boolean httpd_unified-> onを設定します
2 - setsebool -P httpd_unified=1
優先される2番目の可能性。