it-swarm.com.de

Ubuntu + SVN: Das angeforderte SVN-Dateisystem konnte nicht geöffnet werden

Mir ist bewusst, dass diese Frage oft gestellt wurde. Ich glaube, ich verstehe die Antworten, aber ich hatte immer noch kein Glück.

Ich habe sowohl die one repo- als auch die multiple repos-Konfiguration ausprobiert, wobei für beide das gleiche Problem aufgetreten ist.

Also, mit der Konfiguration, die mich interessiert:

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

Mein Repository

[email protected]:/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

In einem Projekt

[email protected]:/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

der Benutzer luso und www-data sind in sowohl die svn- als auch die www-data-Gruppe . Wenn ich jedoch/system/administration/users und groups auswähle, wird eine Warnung angezeigt: Dieses Konto ist deaktiviert ¿¿?? Wenn ich versuche, es zu aktivieren, werde ich aufgefordert, ein Passwort festzulegen. Ich habe es nicht getan ...

/ media/ssd ist mein/dev/sdc-Laufwerk (ein ssd-Laufwerk)

Ich kann mit file: // protocol arbeiten

[email protected]:~$ 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
...
...

Jedoch,

[email protected]:~$ svn co http://localhost/svn/test test and
[email protected]:~$ svn co http://localhost/svn/test/trunk test

führe mich zu:

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

etwas präziser

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

Das gleiche passiert natürlich, wenn ich versuche, über einen Webbrowser darauf zuzugreifen ...

Und das gleiche passiert, wenn ich mich ändere

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

mit:

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

und lade Apache2 neu/starte es neu

Das gleiche passiert auch, wenn versucht wird, über https: // zuzugreifen, was gut funktioniert.

Ich habe etwas gelesen, das darauf hinweist, dass SELinux etwas zu tun hatte, aber ich traue mich nicht, dies zu ändern. Ich weiß nicht wirklich, wie man ...

Könnte es eine Art Konflikt mit Berechtigungen sein? Das Laufwerk/media/ssd gehört luso ... (keine Ahnung, nur Vermutung)

Also noch ein Hinweis?

Ich verwende Ubuntu 10.04, Apache2 und StackOverflow: D

Danke euch allen.

EDIT: Wie von p_strand vorgeschlagen, habe ich eine Zeile hinzugefügt

AuthzSVNAccessFile /etc/Apache2/svn-policy-file

in der dav_svn.conf config

Wenn ich jetzt http://localhost/svn/test versuche, bleibt es gleich, und wenn ich http://localhost/svn versuche, erhalte ich ein 403 Verboten

9
luso
[email protected]:/media/ssd/svn$ ls -lart
total 16
drwx------ 7 luso     luso 4096 2012-09-15 16:20 ..

Dies ist wahrscheinlich Ihr Problem - während die Repository-Verzeichnisse für den Benutzer www-data zugänglich sind, ist dies nicht das übergeordnete Verzeichnis /media/ssd. Es und alle übergeordneten Verzeichnisse im Baum benötigen mindestens die Berechtigung zum Ausführen auf der ganzen Welt (rwx--x--x oder 711). Dem www-data-Benutzer muss nicht erlaubt sein, diese Verzeichnisse zu lesen , aber er muss in der Lage sein, in diese Verzeichnisse abzusteigen (was das Ausführungsbit für ein Verzeichnis bedeutet).

11
Ian Roberts

Für den Fall, dass jemand ein ähnliches Problem hat, hier meine Lösung: Ich hatte die Datei "/ var/svn/format" im Besitz von root, und trotz aller gesetzten Berechtigungen (777) wollte Apache die Datei von root nicht lesen. Nur ein einfacher chown Befehl hat das Problem behoben.

0
Rystan