I'm using Subversion with Apache and wish an ordinary user (i.e. non-root) to have the ability to create new databases. I figured this is simple to complete utilizing a parent directory with group www-data and also the group sticky bit set. Regrettably "svnadmin create ..." leaves only its db directory using the sticky group not set. How do i circumvent this? This will cause "permission refused" errors when trying to commit through Apache.

I've got this to utilize a "only root can make databases" policy as root can just chown the files when done. But this isn't things i want.

This is a trace of my test:

ctndocs@beta:~$ ll -d svn
drwsrwsr-x 6 ctndocs www-data 4096 2009-11-14 18:27 svn
ctndocs@beta:~$ cd svn
ctndocs@beta:~/svn$ umask
ctndocs@beta:~/svn$ mkdir test
ctndocs@beta:~/svn$ svnadmin create test
ctndocs@beta:~/svn$ ls -l test
total 24
drwxrwsr-x 2 ctndocs www-data 4096 2009-11-14 18:31 conf
drwxrwxr-x 6 ctndocs www-data 4096 2009-11-14 18:31 db
-r--r--r-- 1 ctndocs www-data    2 2009-11-14 18:31 format
drwxrwsr-x 2 ctndocs www-data 4096 2009-11-14 18:31 hooks
drwxrwsr-x 2 ctndocs www-data 4096 2009-11-14 18:31 locks
-rw-rw-r-- 1 ctndocs www-data  229 2009-11-14 18:31 README.txt

Note the possible lack of an "s" around the db directory. All of the other medication is ok.

If you're able to get root permissions as well as your filesystem supports file access control lists (that is true for just about any modern fs), you are able to enable FACLs around the filesystem after which set the default group permissions for www-data:

mount /fs/root -o remount,acl
setfacl -Rdm g:www-data:rwx /fs/root/path/to/svndir
setfacl -Rm g:www-data:rwx /fs/root/path/to/svndir

Next, everything produced under svndir is going to be automatically group-writable by www-data, which you'll verify with getfacl.

Be sure to append the acl choice to /etc/fstab for that filesystem, to possess FACLs enabled also after next boot.