[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: ' Could not open the requested SVN filesystem'

From: Kris Deugau <kdeugau_at_vianet.ca>
Date: 2007-05-30 21:09:57 CEST

Alexander Frinks wrote:
[snip]
> *) apache2 Server running under permission wwwrun (user) www (group)
> *) /etc/apache2/conf.d/subversion.conf ## a splitted httpd.conf configuration and looking like
>
> <IfModule mod_dav_svn.c>
> < Location /toll>
> DAV svn
> SVNParentPath /mnt/srv/svn/toll
> # path to the NOT only repository, but used
> # Limit write permission to list of valid users.
> ... snip ... completely commented, so unused
> #</LimitExcept>
> </Location>
> </IfModule>
>
> I am able to import add commit delete any files of my own
> with any svn <command> file:///location/to/repository
>
> svn list file:///mnt/srv/svn/toll

OK, I'm seeing the first problem here. While you've got a repository at
/mnt/srv/svn/toll, you've told Apache that that directory contains other
repositories with the line:

        SVNParentPath /mnt/srv/svn/toll

You must either remove the last path component, or change that directive to:

        SVNPath /mnt/srv/svn/toll

> also, i checked THE PERMISSIONs to the apache-server (once after creating a repository, once
> after updating)n list file:///mnt/srv/svn/tol
>
> find /mnt/srv/svn/toll - ls
>
> ... snip ...
> 46207395 0 drwxr-xr-x 6 wwwrun www 87 May 29 16:06 /mnt/srv/svn/toll/.svn
> 62925452 4 -r--r--r-- 1 wwwrun www 656 May 29 16:06 /mnt/srv/svn/toll/.svn/entries
> 46207400 4 -r--r--r-- 1 wwwrun www 2 May 29 16:03 /mnt/srv/svn/toll/.svn/format
> 62925460 0 -rw-r--r-- 1 wwwrun www 0 May 29 16:03 /mnt/srv/svn/toll/out.c
> 62925461 4 -rw-r--r-- 1 wwwrun www 31 May 29 16:03 /mnt/srv/svn/toll/Makefile
> 4233294 4 -rw-r--r-- 1 wwwrun www 85 May 29 16:04 /mnt/srv/svn/toll/file.c
> 4233293 12 -rwxr-xr-x 1 wwwrun www 9538 May 29 16:04 /mnt/srv/svn/toll/pro

... erm, I think you've confused the repository with the working copy
here. You shouldn't see "your" files directly in the repository
directory like this; you should see something like this:

$ ls -l repo/
total 28
drwsr-sr-x 2 www-data www-data 4096 2006-02-17 18:05 conf/
drwsr-sr-x 2 www-data www-data 4096 2006-03-06 14:04 dav/
drwsr-sr-x 5 www-data www-data 4096 2007-05-23 17:16 db/
-r--r--r-- 1 www-data www-data 2 2006-02-17 18:05 format
drwsr-sr-x 2 www-data www-data 4096 2006-02-17 18:05 hooks/
drwsr-sr-x 2 www-data www-data 4096 2006-02-17 18:05 locks/
-rw-r--r-- 1 www-data www-data 379 2006-02-17 18:05 README.txt

(I've got sticky bits set Just In Case; I've had permissions oddities
scramble things for me in the past too.)

If you look further into the tree, you'll see the files that contain the
 data that's been stored in the repository. Exactly what you see
depends on whether you're using FSFS or BDB as the backend.

You shouldn't care about the details unless something breaks. The only
directories you're likely to change anything in are conf and hooks.
Worry about those after you get basic access straightened out. <g>

> The Command leads to:
> sudo -u wwwrun svn cat file:///mnt list file:///mnt/srv/svn/to/srv/svn/toll/file.c
> #include <stdio.h>
> int main (void) { fprintf(stdout,"Goodbye CVS\n"); return 0; }

I'm not sure what command you think you're running, but that doesn't
seem to work on any system I tried.

Try "... svn cat file:///mnt/srv/svn/toll/file.c".

> So i think, i am legally asking for read permissions as apache-user, and i am allowed to do this.
> But otherwise
> sudo -u wwwrun svn cat http://sachmet/svn/toll/file.c

Well, this will fail because it's mismatched to your Apache
configuration; you've told Apache to find your repository at
http://<host>/toll, not http://<host>/svn/toll.

Running this as wwwrun shouldn't matter one way or the other;
you-the-local-user are not directly accessing the repository files on
the hard drive; Apache-executing-as-wwwrun is. (Which is really the
whole point of running Apache - or svnserve.)

> Till now, i would have to switch the permissions to somewhat, and it would work, as all other
> answers lead to a working configuration. But not in my case.
> Here something strange happened as root-user:
>
> svn cat http://sachmet/toll/file.c
> svn: PROPFIND request failed on '/toll/file.c'
> svn: Could not open the requested SVN filesystem

... which would be because of the Apache configuration error I noted
first. Again, because of the HTTP access method, the local user you're
trying as (root) doesn't affect the outcome.

-kgd

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org
Received on Wed May 30 21:10:40 2007

This is an archived mail posted to the Subversion Users mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.