Como eu posso ajustar as permissões do arquivo de repositório do subversion automaticamente para uso w. Apache / DAV?

5

Eu configurei um servidor de subversão acessível com Apache / DAV e depois de estragar as permissões do arquivo de repositórios há alguns dias comecei a pensar se há uma maneira melhor de fazer isso do que a maneira como estou fazendo isso.

Os repositórios são de propriedade de um usuário e grupo dedicados, e o apache é executado como o usuário habitual www:www , portanto, ele não possui permissões de gravação para os repositórios. Até agora, minha solução tem sido adicionar o usuário www ao grupo svn e garantir que os arquivos dentro dos repositórios sejam graváveis em grupo ... mas daqui a seis meses eu vou criar um novo repositório, esqueça corrija as permissões do arquivo e receba alguns e-mails assim que alguém tentar confirmar algo.

Existe alguma outra maneira de fazer isso? Talvez forçar svnadmin para criar repositórios group-writable em primeiro lugar? (Caso você esteja se perguntando se o servidor é o FreeBSD 6.2)

    
por agnul 13.05.2009 / 11:15

2 respostas

3

Quando você acessa o repositório com o Apache, o usuário Apache é executado como deve ter permissão de gravação. Então, a solução mais simples é dar o repositório para este usuário.

Aqui está como fica na minha máquina Debian, onde o Apache é executado como www-data :

    % ls -ald /home/Subversion-Repository 
    drwxr-xr-x 7 www-data www-data 4096 Nov 14 10:02 /home/Subversion-Repository

Este é apenas um problema se você quiser que o mesmo repositório seja acessível via Apache / DAV e por outro meio. Mas essa prática é desencorajada . Cito:

Fortunately, most repository administrators will never need to have such a complex configuration. Users who wish to access repositories that live on the same machine are not limited to using file:// access URLs—they can typically contact the Apache HTTP server or svnserve using localhost for the server name in their http:// or svn:// URL. And maintaining multiple server processes for your Subversion repositories is likely to be more of a headache than necessary. We recommend that you choose a single server that best meets your needs and stick with it!

    
por 13.05.2009 / 14:55
2

A solução de longo prazo é usar o ACLS para permitir que o usuário www tenha acesso de gravação à árvore de diretórios e a todos os futuros diretórios criados na árvore.

Experimente este URL para começar.

link

-Brian

    
por 13.05.2009 / 15:29