web-dev-qa-db-ja.com

svn:ファイルを開くことができません '/ var / www / svn / repo / db / txn-current-lock':アクセスが拒否されました

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書き込みロック

1
Emax
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番目の可能性。

1
Emax