permissões de arquivos unix: bit de execução.

8, February, 2009

Permissões de arquivos as vezes geram duvidas quanto sua correta aplicacao. Isso ocorre pelo não entendimento de alguns detalhes importantes do sistema de permissões de arquivos.

gafanhoto@backup:~$ ls -l
-rwxr----- 1 gafanhoto estagiarios 0 2008-05-04 23:42 arquivoprivado
gafanhoto@backup:~$

gafanhoto@backup:~$ cat arquivoprivado
#!/bin/bash
echo "$0 foi executado"
gafanhoto@backup:~$

Geralmente as permissões de “arquivoprivado” são lidas da seguinte forma:

1 – O usuario gafanhoto tem permissoes de leitura, escrita e execucao deste arquivo.
2 – Os usuarios do grupo “estagiarios” só tem permissão de leitura e nao pode modificar ou executar este arquivo.
3 – Os demais usuarios não tem qualquer permissão sobre o arquivo. Não podem lê-lo, escrevê-lo, apaga-lo ou executa-lo.

Correto? Não, ERRADO!!!

Os “estagiarios” podem executar este arquivo pois o bit de execução do arquivo diz respeito à sua capacidade de execucao direta (vide shebang).

barata@backup:/home/gafanhoto$ ./arquivoprivado
-sh: ./arquivoprivado: Permission denied
barata@backup:/home/gafanhoto$

barata@backup:/home/gafanhoto$ /bin/bash arquivoprivado
arquivoprivado foi executado
barata@backup:/home/gafanhoto$

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: