svnadmin crea ignorando bit de grupo adhesivo en el directory

Estoy usando Subversion con Apache y quiero un usuario normal (es decir, no root) para poder crear repositorys nuevos. Pensé que esto sería lo suficientemente fácil de hacer usando un directory padre con el grupo www-data y el set de bits pegajosos del grupo. Desafortunadamente, "svnadmin create …" solo deja su directory db con el grupo adhesivo no configurado. ¿Cómo puedo evitar esto? Esto provoca errores de "permiso denegado" al intentar realizar una confirmación a través de Apache.

He conseguido que esto funcione con una política de "solo root puede crear repositorys", ya que el usuario root puede bloquear los files cuando finaliza. Pero eso no es lo que quiero.

Aquí hay un rastro de mi testing:

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

Tenga en count la falta de una "s" en el directory db. Todos los demás están bien.

Si puede get permissions de raíz y su sistema de files admite lists de control de acceso a files (lo cual es cierto para cualquier fs moderno), puede habilitar las FACL en el sistema de files y luego establecer los permissions de grupo pnetworkingeterminados para 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 

Después de eso, todo lo creado bajo svndir será svndir por grupo de forma pnetworkingeterminada por www-data , que puedes verificar con getfacl .

No olvide agregar la opción acl a /etc/fstab para el sistema de files, para tener las FACL habilitadas también después del próximo inicio.