Como eu administro / var / www?

7

Sou novo no Linux e estou tentando configurar um pequeno servidor de teste dentro de uma VM que executa o Ubuntu Server. Eu encontrei a pasta / var / www e deve ser aquela onde meus documentos do Apache estão armazenados, na verdade, se eu acessar o IP da minha VM, eu vejo a página index.html que está armazenada lá.

Meu problema é que não consigo escrever nessa pasta.

ls -l retorna:

d-w-r-xr-x 2  root root 4096 2011-12-28 16:08 ./ 
drwxr-xr-x 13 root root 4096 2011-12-28 17:02 ../ 
-rw-r--r-- 1  root root 177  2011-12-28 16:08 index.html

Meu usuário é chamado de gab .

Qual é a melhor coisa a fazer ao lidar com esta pasta para permitir editar e criar arquivos aqui? Devo criar um novo grupo ou me definir como o dono da pasta?

    
por Gabriele Cirulli 28.12.2011 / 19:41

3 respostas

4

Essa é uma pasta protegida. Você precisa ser root para modificar este diretório.

Você também pode criar um gab o proprietário desse diretório fazendo

sudo chown -R gab /var/www

sudo executará o comando chown -R gab /var/www como root (administrador) e solicitará sua senha usada durante a configuração do sistema (provavelmente a mesma senha que gab).

Depois de fazer isso, você também pode fazer

sudo chown -R 755 /var/www

para dar permissões de gravação.

#   Permission
7   full
6   read and write
5   read and execute
4   read only
3   write and execute
2   write only
1   execute only
0   none


Reference   Class   Description
u   user    the owner of the file
g   group   users who are members of the file's group
o   others  users who are not the owner of the file or members of the group

O 755 significa que o usuário terá acesso total, o grupo terá acesso de leitura e execução e outros terão acesso de leitura e execução.

    
por 28.12.2011 / 20:01
3

Eu sugeriria que você se tornasse um membro do grupo www-data (ou equivalente), mas como o diretório e o arquivo index.html são de propriedade de root , é possível que você faça isso ( como kobaltz sugeriu) - se você quiser evitar hosts virtuais.
Se você seguir o caminho de Hosts Virtuais, o diretório /var/www é meramente um espaço reservado que permite verificar se o Apache está sendo executado.

Eu sei que é um pouco de leitura, mas você deu uma olhada em esta página de documentação ou esta página da wiki ?

    
por 28.12.2011 / 20:04
1

Na verdade, os arquivos devem pertencer a www-data (ou www-data deve ter privilégios de gravação). O modo 'preguiçoso' é usar o sudo para mudar para o root e mandar os arquivos para você, fazer o que você precisa fazer, e então voltar para o www-data - eu acho que esses arquivos foram adicionados usando o sudo, mas quem fez isso não deu a propriedade para www-data

A maneira direita é definir a pasta para ser gravável em grupo e adicionar-se ao grupo em questão. Isso, obviamente, faz mais sentido, já que você só precisa fazer isso uma vez (para o diretório www-data), e você pode trabalhar com seu usuário regular depois disso. Kobaltz tem a idéia básica correta, mas alguns aspectos da execução parecem incorretos para mim.

    
por 29.12.2011 / 00:40