Ubuntu + SVN:無法開啟要求的 SVN 檔案系統

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-數據svn 和 www-data 組。但是,當 /system/administration/users and 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>

當然,如果我嘗試透過網頁瀏覽器存取也會發生同樣的情況...

如果我改變也會發生同樣的情況

#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 禁忌

答案1

定義為伊恩·羅伯茨StackOverflow.com中父目錄(ssd磁碟機的掛載點)的權限問題

將此資料夾的執行權限新增至 www-data 群組解決了該問題。答案這裡

相關內容