web-dev-qa-db-ja.com

Ubuntu + SVN:要求されたSVNファイルシステムを開くことができませんでした

私はこの質問が何度も聞かれていることを知っています。私は答えを理解していると思いますが、それでも運がありませんでした。

one repomultiple reposの両方の構成を試しましたが、どちらも同じ問題がありました。

だから、私が興味を持っている設定で:

<Location /svn>
  DAV svn
  #SVNPath /media/ssd/svn/test
  SVNParentPath /media/ssd/svn
  SVNListParentPath On
  AuthType Basic
  AuthName "Subversion Repository"
  AuthUserFile /etc/Apache2/dav_svn.passwd
  Require valid-user
</Location>

私のリポジトリ

luso@bender:/media/ssd/svn$ ls -lart
total 16
drwx------ 7 luso     luso 4096 2012-09-15 16:20 ..
drwxr-sr-x 6 www-data svn  4096 2012-09-24 22:13 test
drwxrwsr-x 4 www-data svn  4096 2012-09-24 22:31 .
drwxr-sr-x 6 www-data svn  4096 2012-09-24 22:31 test2

プロジェクト内

luso@bender:/media/ssd/svn/test$ ls -lart
total 32
-rw-r--r-- 1 www-data svn  229 2012-09-24 22:13 README.txt
drwxr-sr-x 2 www-data svn 4096 2012-09-24 22:13 locks
drwxr-sr-x 2 www-data svn 4096 2012-09-24 22:13 hooks
drwxr-sr-x 2 www-data svn 4096 2012-09-24 22:13 conf
-r--r--r-- 1 www-data svn    2 2012-09-24 22:13 format
drwxr-sr-x 6 www-data svn 4096 2012-09-24 22:13 .
drwxrwsr-x 4 www-data svn 4096 2012-09-24 22:31 ..
drwxr-sr-x 6 www-data svn 4096 2012-09-24 22:40 db

ユーザーlusoおよびwww-datasvnグループとwww-dataグループの両方にあります。ただし、/ system/Administration/usersおよびgroupsの場合、www-dataユーザーを選択すると、警告が表示されます。このアカウントは無効になっています¿¿??有効にしようとすると、パスワードの設定を求められます。私はやっていない...

/ media/ssdは私の/ dev/sdcドライブ(ssdドライブ)です

File://プロトコルを使用して共同できます

luso@bender:~$ svn co file:///media/ssd/svn/test test
A    test/.classpath
A    test/.project
A    test/target
A    test/target/test-my-app-0.0.1-SNAPSHOT.jar
...
...

しかしながら、

luso@bender:~$ svn co http://localhost/svn/test test and
luso@bender:~$ svn co http://localhost/svn/test/trunk test

私を導きます:

Authentication realm: <http://localhost:80> Subversion Repository
Password for 'luso': 
svn: Could not open the requested SVN filesystem

より正確に

<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>

もちろん、Webブラウザ経由でアクセスしようとすると同じことが起こります...

そして、私が変更した場合も同じことが起こります

#SVNPath /media/ssd/svn/test
SVNParentPath /media/ssd/svn
SVNListParentPath On

と:

SVNPath /media/ssd/svn/test
#SVNParentPath /media/ssd/svn
#SVNListParentPath On

apache2をリロード/再起動します

また、正常に機能しているhttps://経由でアクセスしようとした場合にも同じことが起こります。

SELinuxに何か関係があることを示す何かを読んだことがありますが、これを変更することはあえてしません。どうすればいいのかわからない...

パーミッションとのある種の競合である可能性がありますか?/media/ssdドライブはlusoが所有しています...(わかりません、推測するだけです)

それで他の手がかりはありますか?

Ubuntu 10.04、Apache2、StackOverflowを実行しています:D

皆さん、ありがとうございました。

編集: p_strandが示唆するように、私は行を追加しました

AuthzSVNAccessFile /etc/Apache2/svn-policy-file

dav_svn.conf構成で

さて、http://localhost/svn/testを試してみると同じままで、http://localhost/svnを試してみると403 Forbidden

10
luso
luso@bender:/media/ssd/svn$ ls -lart
total 16
drwx------ 7 luso     luso 4096 2012-09-15 16:20 ..

これはおそらくあなたの問題です-リポジトリディレクトリはwww-dataユーザーがアクセスできますが、その親ディレクトリは/media/ssdではありません。それとツリーの上のすべての親ディレクトリには、少なくともワールド実行権限(rwx--x--xまたは711)。 www-dataユーザーは、これらのディレクトリにreadを許可する必要はありませんが、それらのディレクトリに降りることができる必要があります(これはディレクトリの実行ビットの意味です)。

11
Ian Roberts

誰かが同様の問題でここに来た場合、これが私の解決策です:私はrootが所有するファイル "/ var/svn/format"を持っていました、そしてすべてのパーミッションが設定されているにもかかわらず(777)、Apacheはrootが所有するファイルを読みたくありませんでした。単純なchownコマンドで問題が修正されました。

0
Rystan