Eu tenho dois servidores Linux:
servidor de arquivos
Debian 5.0.3 (2.6.26-2-686)
Samba versão 3.4.2
Apache
Ubuntu 10.04 LTS (2.6.32-23-genérico)
Apache 2.2.14
Eu tenho vários compartilhamentos do Samba no servidor de arquivos para que eu possa acessar arquivos de PCs com Windows. Também estou exportando /data/www-data
para o servidor apache , onde eu o montei como /var/www
.
A instalação está boa, exceto quando eu for criar arquivos na montagem do NFS. Acabo com arquivos que não podem ser lidos pelo Apache ou que não podem ser modificados por outros usuários no meu sistema.
Com Samba, posso especificar force user
, force group
, create mask
e directory mask
, e isso garante que todos os arquivos são criados com permissões adequadas para o meu servidor web Apache. Não consigo encontrar uma maneira de fazer isso com o NFS. Existe uma maneira de forçar permissões e propriedade com o NFS - estou perdendo algo óbvio?
Embora eu tenha passado bastante tempo com o Linux e esteja me afastando do Windows, ainda não consegui lidar com as permissões do Linux ... Se esse não é o caminho certo para fazer as coisas, estou aberto a sugestões alternativas.
fonte
www-data
grupo no servidor de arquivos, designei os usuários necessários e, em seguida, defina o mesmowww-data
ID de grupo nos dois servidores. Também defino os bits do grupo na/data/www-data
pasta comchmod -R g+s /var/www-data
. Agora está funcionando perfeitamente. Obrigado pela ajuda.Você também pode usar a
all_squash
opção que torna anônimo (usuário e grupo) todos os arquivos e pastas exportados e anexá-los a um GID e UID específico.O problema disso é que todos os usuários no
apache
servidor verão seu ponto de montagemnobody nobody
como usuário e grupo e poderão escrever na montagem (mas, de qualquer maneira, no servidor Samba, os arquivos serão criados como<your UID>
/<your GID>
).fonte