Como configurar corretamente o diretório / var / www / de um sistema Ubuntu Linux?

2

Eu sou um desenvolvedor de software, portanto, não sou assim em detalhes de configuração do sistema operacional e tenho o seguinte problema.

Eu instalei um ambiente LAMP de um sistema Ubuntu Linux dedicado ao desenvolvimento (ele está no meu PC e não é um servidor de produção).

Então, eu estou tentando definir o / var / www como o espaço de trabalho do Aptana (o IDE que eu uso para desenvolvimento PHP), mas não posso fazê-lo porque não tenho permissão para escreva neste diretório (acho que é o meu usuário logado que não tem essa permissão).

Então, sei que provavelmente posso resolver esse problema simplesmente alterando essa permissão:

sudo chmod -R 777 /var/www/

Eu acho que isso torna legível, gravável e executável qualquer coisa que esteja no diretório / var / www / , certo? Mas para quem? Para cada usuário que pode ser cadastrado no meu sistema ou somente para o usuário logado?

Lendo on-line, parece-me que (talvez, eu não esteja seguro) Eu posso obter o mesmo resultado (escrever no diretório / var / www / ) fazendo algo como:

sudo chown -R myUserName:www-data /var/www/
sudo chmod -R g+s /var/www/

Esses dois comandos são verdadeiros para o meu propósito? O que exatamente faz? Estou tentando ler a documentação oficial e parece-me que funciona assim:

  1. Primeiro, defino meu usuário como o proprietário do diretório / var / www / (isso significa que ele pode gravar nesse diretório e em todos os subdiretórios porque use o parâmetro -R parm ?) e atribui o grupo www-data . Mas o que é esse grupo www-data ? É um grupo padrão do Linux ou um novo grupo que simplesmente pode ser membro do grupo?

  2. Eu realmente não tenho idéia sobre o que exatamente faz a segunda instrução. O que isso faz?

Qual solução é melhor?

    
por AndreaNobili 27.04.2015 / 13:52

1 resposta

5

Basicamente, o primeiro comando:

sudo chmod -R 777 /var/www/

Torna legível, gravável e executável por qualquer pessoa (qualquer usuário). Você está no caminho certo com os últimos comandos, pois pode definir chown para www-data . www-data é um usuário / grupo padrão para o Apache.

Ou você pode criar um novo grupo e adicionar você mesmo e www-data e atribuir o grupo à permissão de pasta com chown .

Além disso, em vez de usar valores chmod numéricos, você pode usar chmod -R ugo+rwx folder , o que significa que o usuário, grupo e outros = > leia, escreva e execute direitos para esta pasta. De maneira semelhante, você também pode remover os direitos chmod -R ugo-rwx folder .

Configurar o diretório com g+s faz com que todos os novos arquivos criados no diretório tenham seus grupos configurados no grupo do diretório.

    
por 27.04.2015 / 14:34