Ubuntu + SVN: не удалось открыть запрошенную файловую систему SVN
я знаю, что этот вопрос задавался много раз. Я думаю, что понимаю ответы, но мне все равно не повезло.
я пытался как one repo
и multiple 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
пользователь лузу и www-data в и svn и www-группы данных. Однако, когда /система/Администрирование / Пользователи и группы, если я выбираю www-data user, появляется предупреждение: эта учетная запись отключена¿ ¿?? Если я попытаюсь включить его, он попросит меня Установить пароль. Я этого не делал...
/ 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>
конечно, то же самое происходит, если я пытаюсь получить доступ через веб-браузер...
и то же самое происходит, если я меняю
#SVNPath /media/ssd/svn/test
SVNParentPath /media/ssd/svn
SVNListParentPath On
С:
SVNPath /media/ssd/svn/test
#SVNParentPath /media/ssd/svn
#SVNListParentPath On
и перезагрузить/перезапустить apache2 не
кроме того, то же самое происходит при попытке доступа через https://, который работает нормально.
я читал что-то, указывающее, что Селинукс должен был что-то сделать, но я не смею это изменить. Я не знаю, как к...
это может быть какой-то конфликт с разрешениями? Диск / media / ssd принадлежит luso... (не знаю, просто догадываюсь)
есть еще какие-нибудь зацепки?
я запускаю Ubuntu 10.04, Apache2 и StackOverflow: D
спасибо всем.
EDIT: как предложил p_strand, я добавил строку
AuthzSVNAccessFile /etc/apache2/svn-policy-file
в dav_svn.conf config
теперь, если я попробую http://localhost/svn/test
он остается тем же самым, и если я попытаюсь http://localhost/svn
Я 403-запрещено
2 ответов
luso@bender:/media/ssd/svn$ ls -lart
total 16
drwx------ 7 luso luso 4096 2012-09-15 16:20 ..
Это, вероятно, ваша проблема-в то время как каталоги репозитория доступны пользователю www-data, их родительский каталог /media/ssd
нет. Он и все его родительские каталоги в дереве нуждаются, по крайней мере, в разрешении world-execute (rwx--x--x
или 711). Пользователю www-data не нужно разрешать читать эти каталоги, но он должен иметь возможность спускаться в них (что и означает бит execute для каталога).
в случае, если кто приедет с аналогичной проблемой, вот мое решение:
У меня был файл "/var/svn/format", принадлежащий root, и, несмотря на все установленные разрешения (777), apache не хотел читать файл, принадлежащий root.
Просто chown
команда исправила проблему.