www-data related: Qual é a diferença entre esses usos de CHOWN?

4

Meu nome de usuário é jknoppf. Eu uso o Apache e quero me dar acesso total ao / var / www / html e começar com

$ sudo adduser jknoppf www-data

Então eu tenho

$ sudo chown -R www-data:www-data /var/www/html

Funciona!

Mas em alguns fóruns eu também li sobre

$ sudo chown -R jknoppf:www-data /var/www/html

E também funciona! Qual é a diferença entre essas duas variantes de usar chown ?

    
por Jurgen Knopf 27.08.2017 / 05:14

2 respostas

3

sudo adduser jknoppf www-data e sudo chown -R www-data:www-data /var/www/html :

O primeiro adicionará o usuário jknoppf ao grupo www-data e o segundo mudará o proprietário de todos os diretórios e arquivos, incluindo /var/www/html , para o usuário www-data e também mudará o proprietário do grupo no grupo www-data . Como a permissão para /var/www/html é, por padrão, 775 e o usuário jknoppf está no grupo www-data , esse usuário pode ter acesso total a todo o conteúdo interno.

sudo chown -R jknoppf:www-data /var/www/html :

Esse comando altera o proprietário de todos os diretórios e arquivos, incluindo /var/www/html , para o usuário jknoppf e também altera o proprietário do grupo para o grupo www-data . Como a permissão para /var/www/html é, por padrão, 775 e o usuário jknoppf é o proprietário do diretório, esse usuário pode ter acesso total a todo o conteúdo interno.

Observações: a permissão 775 significa:

Primeiro 7 : o proprietário do arquivo tem acesso total aos arquivos, por exemplo, leia 4 + write 2 + execute 1 .

Segundo 7 : todos os usuários do grupo, que o grupo é proprietário, têm acesso total aos arquivos, por exemplo, leia 4 + gravação 2 + execute 1 .

Terceiro 5 : todas as outras pessoas que não são nem o proprietário nem os membros do grupo têm acesso somente à leitura 4 + execute 1 .

    
por Cynplytholowazy 27.08.2017 / 05:22
3

É tudo sobre o que você está tentando alcançar.

Se você é uma pessoa que deseja trabalhar com os arquivos em /var/www/html , pode usar a segunda instrução. Isso torna seu usuário o proprietário do /var/www/html , então você pode salvar, editar ... arquivos dentro desse diretório, ao mesmo tempo www-data será o grupo do diretório para que seu servidor da Web possa funcionar com os arquivos também.

Se houver muitas pessoas no seu PC trabalhando em projetos diferentes, você poderá usar a primeira instrução, que permite que todos os membros do www-data trabalhem com arquivos dentro do /var/www/html .

O primeiro é uma escolha melhor, no entanto, se pessoas diferentes estão trabalhando em projetos diferentes em seu sistema, o que eu sugiro é ter grupo diferente como o grupo de projeto e www-data como proprietário do projeto.

Aqui um exemplo, eu tenho 3 usuário, bob, john e pyter.

  • bob e john estão trabalhando em um projeto chamado "foo".
  • bob um pyter está trabalhando em um projeto namd "bar".

O que sugere é:

sudo mkdir /var/www/html/foo
sudo mkdir /var/www/html/bar

sudo addgroup foo
sudo addgroup bar

sudo gpasswd -a bob foo
sudo gpasswd -a john foo

sudo gpasswd -a bob bar
sudo gpasswd -a pyter bar

chown foo:www-data /var/www/html/foo
chown bar:www-data /var/www/html/bar

Também recomendo strongmente que você leia:

Quais permissões meu site deve ter? arquivos / pastas têm em um servidor web Linux?

    
por Ravexina 27.08.2017 / 05:30