Tenha os arquivos e diretórios pertencentes a um grupo, que O Apache é executado como . Faça os diretórios SGID .
chgrp -R group1 /path/to/htdocs
find /path/to/htdocs -type d -exec chmod 2775 {} \;
Especifique esse grupo no compartilhamento SAMBA, o que pode ser feito com force group=group1
.
Faça o usuário que você autenticar no SAMBA com um membro desse grupo. Especifique esse usuário em valid users
e write list
dentro de sua participação no SAMBA. Isso também deve permitir que você se comprometa com o SVN.
Além disso, especifique create mask=0664
e directory mask=2775
no smb.conf, que definirá as permissões apropriadas na criação. Se os arquivos pertencerem ao mesmo usuário que o Apache, você poderá definir o bit final como 0 em ambas as configurações.
Se tudo for aplicado de forma consistente, você poderá executar todas as ações desejadas sem afetar negativamente qualquer funcionalidade.