Segunda, 10 Dezembro 2012 22:00

Definindo permissão de arquivos e pastas

Escrito por 
Avalie este item
(0 votos)

Todo arquivo ou pasta tem seu conteúdo e seu nome visível para qualquer usuário.

Mas além disso eles tem um dono e permissões de arquivos que podem ser vistos nas propriedades do arquivo ou da pasta.

Uma outra forma de visualizar a permissão do arquivo é pelo FTP ou digitando o comando abaixo no terminla do seu Linux:

ls -l

Que teria mais ou menos esse resultado:

    -rw-r-r- 1 surrealad surrealad 2267 2011-04-14 18:39 insertLogo.php
    drwxr-xr-x 2 surrealad surrealad   69 2011-05-26 14:47 npub/
    -rw-r-r- 1 surrealad surrealad 2749 2011-03-09 15:52 pictogramaBranco.png
    -rw-r-r- 1 surrealad surrealad 2545 2011-03-09 15:52 pictogramaPreto.png

A primeira, a terceira e a quarta linha são arquivos e a segunda um diretórios. Sabemos disso pela letra d no começo da segunda linha.

Se fossemos ver esses arquivos no FTP eles teriam a permissão 755 para a pasta e 644 para os arquivos.

Isso porque no FTP a permissão é representada em números e no terminal do Linux ou SSH ela é representada em letras.

Essa representação da permissão é dividida em 3 partes que são:

1 - Permissão para o dono ou usuário
2 - Permissão para usuários do mesmo grupo
3 - Permissão para todos os usuários

Cada número (para o FTP) ou letra (para o terminal do Linux ou SSH) significa um tipo de permissão, que são:

0 : --- (nenhuma permissão)
1 : -x (somente execução)
2 : -w- (somente escrita)
3 : -wx (escrita e execução)
4 : r- (somente leitura)
5 : r-x (leitura e execução)
6 : rw- (leitura e escrita)
7 : rwx (leitura, escrita e execução)

Algumas vezes, acontece de um usuário colocar permissão 777 para todos os arquivos e pastas de seu site e isso não é seguro.

A permissão 777 só deve ser utilizada em pastas que terão seu conteúdo alterado, como pastas de upload ou de cache por exemplo.

Utilizando de um bom cliente FTP como o FileZilla, você pode rapidamente corrigir isso, pois ele te dar a opção de aplicar a mesma permissão às subpastas e/ou arquivos das subpastas.

Já no linux isso é um pouco diferente, embora você possa diferenciar arquivos de pastas pelo comando o CHMOD não pode.

Para isso, você precisará da ajuda do comando find e do xargs.

Use este comando para mudar a permissão de todos os arquivos daquela pasta:

   find -type f | xargs -i chmod 644 {}

Use esse comando para aplicar a permissão apenas para a pasta e as subpastas:

   find -name '*' -type d | xargs -i chmod 755 {}

Basicamente é isso.

Lido 1211 vezes Última modificação em Terça, 11 Dezembro 2012 20:20
Juliano Rossetto

// Desenvolvedor PHP e Joomla

// Suporte em ambientes Linux (Ubuntu e Debian).

// Suporte a Amazon Web Services (AWS) - Amazon Cloud Professional

Formado em Análise e Desenvolvimento de Sistemas

Siga no Twitter   Curta Facebook    Google +

Website.: www.jrossetto.com.br/

Busca

Últimos Trabalhos

Você está aqui:   Definindo permissão de arquivos e pastas

Sobre

// Desenvolvedor PHP e Joomla

// Suporte em ambientes Linux (Ubuntu e Debian).

// Suporte a Amazon Web Services (AWS)