Se você observar as permissões em diretórios e arquivos, verá a conta que os possui e também o grupo ao qual eles pertencem. Por exemplo:
$ ls -ld /var/www/html
drwxr-xr-x. 2 joe joe 23 Mar 12 11:08 /var/www/html
No exemplo acima, a conta joe é dona do diretório e pertence ao grupo joe; o grupo é o segundo "joe" na linha. O grupo pode conter apenas uma conta, joe, mas eu poderia adicionar outras contas ao grupo. Eu poderia criar um grupo chamado users
e associar o diretório a esse grupo como você fez. Você está usando o comando chown
, mas também há um comando chgrp
para alterar o grupo. Você pode usar esse comando para atribuir arquivos e diretórios a um grupo ou também pode alterar o grupo como fez com chown user:group
. Por exemplo, você pode usar o comando abaixo se houver um grupo de dados www no sistema (você pode ver os grupos e seus membros emitindo o comando cat /etc/group
):
sudo chgrp www-data /var/www/html
Então, posso ver algo como o seguinte:
# ls -ld /var/www/html
drwxr-xr-x. 2 joe www-data 23 Mar 12 11:08 /var/www/html
Ou, se preferir, você pode fazer com que o grupo para o diretório seja o novo grupo users
que você criou como fez com o comando chown -R joe:users
.
Quando emiti o comando ls -ld
para examinar as permissões no diretório, vi o seguinte:
drwxr-xr-x
O "d" me diz que é um diretório. Os próximos 3 caracteres me dizem que as permissões para o proprietário são de leitura, gravação e execução. Os próximos 3 caracteres revelam as permissões para o grupo, que no exemplo acima são lidos e executados. Eu poderia conceder ao grupo permissão de gravação com o comando abaixo:
chmod g+w /var/www/html
Você também pode alterar as permissões recursivamente no diretório acima usando o
-R
ou --recursive
opção.
Se você ajustar as permissões de grupo de forma adequada, pode conseguir o que você deseja fazer, de modo que se o Apache estiver rodando como www-data e www-data tiver as permissões de grupo apropriadas no diretório e os arquivos e subdiretórios dentro dele, o Apache será capaz de ler e gravar arquivos como neded . Parece que você já definiu o proprietário e o grupo para uma configuração que funcionará, portanto, é provável que você só precise definir as permissões para o grupo users
com o comando chmod
.