Como posso dar acesso de gravação de uma pasta a todos os usuários no linux?

168

Eu instalei o apache2 no Ubuntu agora e observei que a pasta / var / www está protegida. Eu posso apenas sudo de tudo, mas eu prefiro apenas dar acesso de gravação.

Como posso fazer isso?

Eu tentei sudo chmod 7777 /var/www , mas não funcionou.

    
por Carson Myers 07.08.2009 / 01:30

8 respostas

295

Para compartilhar melhor com vários usuários que devem poder escrever em /var/www , ele deve receber um grupo comum. Por exemplo, o grupo padrão para conteúdo da web no Ubuntu e Debian é www-data . Certifique-se de que todos os usuários que precisam de acesso de gravação a /var/www estejam nesse grupo.

sudo usermod -a -G www-data <some_user>

Em seguida, defina as permissões corretas em / var / www.

sudo chgrp -R www-data /var/www
sudo chmod -R g+w /var/www

Além disso, você deve tornar o diretório e todos os diretórios abaixo dele "set GID", para que todos os arquivos e diretórios novos criados sob /var/www sejam de propriedade do grupo www-data .

sudo find /var/www -type d -exec chmod 2775 {} \;    

Encontre todos os arquivos em /var/www e adicione permissão de leitura e gravação para proprietário e grupo:

sudo find /var/www -type f -exec chmod ug+rw {} \;

Você pode ter que fazer logout e fazer login novamente para poder fazer alterações se estiver editando a permissão para sua própria conta.

    
por 07.08.2009 / 02:15
25

Existe uma maneira mais simples de fazer isso, tente fazer este comando.

sudo chmod -R 757 /var/www

Essencialmente, o comando chmod altera as permissões e a opção -R afeta todos os usuários. Então é simplesmente dar as permissões corretas para usar.

    
por 22.09.2011 / 12:31
23

Ler + Escrever:

sudo chmod -R a+rw /var/www

Ler + Escrever + Executar:

sudo chmod -R a+rwx /var/www
    
por 09.08.2013 / 21:22
7

Você também pode replicar o que o jtimberman sugeriu ao usar as listas de controle de acesso . O comando setfacl aceita -s para substituir uma ACL ou -m existente para modificá-lo; -R para tornar o diretório ACLs recursivo; e -d para tornar as configurações especificadas como padrão, o que é útil se você está antecipando contas de usuários futuras.

Eles apenas definem as permissões como você faria para o usuário, grupo, outro e máscara usando chmod:

setfacl -m u::rwx, g::r-x, o::---, m:rwx DIRECTORY

E isso pode ser como você faria isso para um usuário especificado ou para o grupo dele:

setfacl -m u:USERNAME:rwx, g:USERNAME:r-x DIRECTORY

E, claro, a força é que você pode designar qualquer usuário específico, vários usuários, etc., tudo sem ter que modificar suas configurações de grupo. E ao contrário do chmod, se você quer que alguns groupies tenham acesso a um diretório e outros groupies para ter acesso apenas a outro, é realmente possível com o setfacl. Por fim, para visualizar as ACLs de um diretório, execute getfacl :

getfacl DIRECTORY

E você pode especificar -R para ver as ACLs dos subdiretórios ou -d para ver os padrões.

    
por 08.08.2009 / 14:29
2

O rápido & resposta fácil -

a. Adicione ( -a ) o seu usuário ( user_name ) ao grupo ( -G ) www-data . / p>

sudo usermod -a -G www-data user_name

b. Dê ao Grupo ( g ) as mesmas permissões ( = ) que o Usuário proprietário ( u ) de / var / www Recursivamente ( -R ).

sudo chmod -R g=u /var/www

Explicação: O Apache 2 no Debian / Ubuntu define o User & Agrupe www-data como o proprietário de / var / www . As permissões padrão do usuário são "Visualizar e modificar conteúdo", mas o grupo só pode "Exibir conteúdo". Então, adicionar-se ao Grupo www-data e conceder-lhe as mesmas permissões que o Usuário wwww-data, é uma maneira rápida e fácil de desenvolver. Eu faço isso para todos os meus ambientes de desenvolvimento Web localhost (PC / Laptop).

    
por 20.02.2018 / 03:20
1

Eu uso typicall

chmod g+w /folder/ -R

É quase auto-explicativo.

Ele adiciona todos no g roup de /folder/ para ter acesso w rite ( +w ), -R é para recursão de subpastas.

    
por 19.03.2017 / 22:13
-3

Você pode apenas experimentar chmod 0777 /var/www ?

Uma palavra de aviso: se você permitir que todos acessem essa pasta, isso significa que os hackers podem acessar essa pasta se conseguirem acessar seu sistema. É por isso que é melhor criar um grupo de usuários permissíveis e dar acesso a esse grupo.

    
por 07.08.2009 / 04:01
-4

Primeiro, insira o caminho da pasta em particular e, em seguida, use este comando…

chmod -R 777 foldername
chown username:username foldername 
    
por 30.09.2011 / 11:58