Como dar Permissão de Execução a Arquivo (script ou binário) no GNU/Linux - Abordagem Prática

Publicado por Rodrigo Albuquerque Serafim em 05/12/2017

[ Hits: 12.037 ]

Blog: https://www.vivaolinux.com.br/~raserafim

 


Como dar Permissão de Execução a Arquivo (script ou binário) no GNU/Linux - Abordagem Prática



A dica que se segue aborda de modo prático, mas sob diversas maneiras, a respeito de como dar permissão de execução a um arquivo, quer seja este arquivo um script, quer seja um binário.

Veremos algumas formas diretas de definir a propriedade de um arquivo como sendo uma propriedade com permissão de execução: isso, tanto por intermédio do Terminal (em seus Modos Textual e Octal) quanto por intermédio da Interface Gráfica.

Esse texto é uma espécie de síntese técnica-objetiva do meu artigo intitulado Permissão de Execução a Arquivo (script ou binário) no GNU/Linux - Abordagem Sistemática .

Terminal

A. Código Elementar (suficiente quando de um usuário)

O código imediatamente a seguir, pode ser considerado a forma mais elementar para adicionar permissão de execução a um determinado arquivo: chmod +x nome_do_arquivo.ext = [é equivalente à... | é similar à...]

chmod a+x nome_do_arquivo.ext

Em ambos os casos acima, as suas formas de configurar o atributo de execução adicionam permissão para "todos os usuários" do sistema: "qualquer um" estará contemplado no escopo de permissão do atributo de execução do arquivo - independente de ser ou não o proprietário do arquivo e de fazer ou não parte do grupo do proprietário do arquivo.

A supressão do escopo de usuários é o mesmo que informá-lo através do argumento "a" ("all" em inglês).

Partindo do pressuposto que apenas um usuário utilizaria o sistema, portanto, seria suficiente adicionar permissão de execução apenas ao próprio usuário que, neste caso, seria o usuário dono do arquivo:

chmod u+x nome_do_arquivo.ext

B. Código Ampliado (recomendado quando de vários usuários)

O código a seguir pode ser considerado aquele código elementar em sua forma ampliada, logo, para adicionar permissão de execução a um determinado arquivo nas situações de um sistema operado por mais de um usuário cadastrado: chmod +xr nome_do_arquivo.ext = [é equivalente à... | é similar à...]

chmod a+xr nome_do_arquivo.ext

Em ambos os códigos, foram adicionadas permissões de execução e de leitura para "todos os usuários" do sistema.

Caso as permissões de execução e de leitura queiram ser adicionadas apenas ao "usuário dono" e ao "grupo" a que pertence o usuário dono, então, se poderia utilizar o seguinte código:

chmod ug+xr nome_do_arquivo.ext

É importante observar que na forma ampliada do código elementar está sempre explicitado, também, a permissão de leitura. Neste sentido, conforme está mais longamente desenvolvido na página 1 do artigo Permissão de Execução a Arquivo (script ou binário) no GNU/Linux - Abordagem Sistemática [Artigo], vale lembrar que a permissão de execução pressupõe a permissão de leitura.

Já, no entanto, quando queremos redefinir exatamente o conjunto de permissões de um determinado arquivo e não, simplesmente, incrementar permissões ao conjunto de permissões já definidas, para as mesmas situações dos três códigos acima, respectivamente, podemos utilizar os seguintes códigos:

chmod a=+xr nome_do_arquivo.ext
chmod ug=+xr nome_do_arquivo.ext

Em todos estes casos, as únicas permissões serão de execução e de leitura -- removendo, assim, eventuais permissões de escrita (“w”, do inglês “writer”) que existiam antes da redefinição.

Para uma abordagem sobre a distinção entre "adição" e "redefinição", ver a página 5 do artigo Permissão de Execução a Arquivo (script ou binário) no GNU/Linux - Abordagem Sistemática [Artigo] - página 5.

Alternativamente ao Modo Textual que vimos até aqui, também é possível utilizar outra sintaxe para atribuir permissão de execução a um determinado arquivo:

chmod 500 nome_do_arquivo.ext # permissão de execução e leitura apenas ao "proprietário";
chmod 555 nome_do_arquivo.ext # permissão de execução e leitura a todos os usuários;
chmod 777 nome_do_arquivo.ext # permissão de execução, leitura e escrita a todos os usuários;
chmod 755 nome_do_arquivo.ext # permissão de execução e leitura a "todos os "usuários" e permissão de escrita apenas ao "proprietário" do arquivo;
chmod 740 nome_do_arquivo.ext # permissão de leitura ao "grupo" com permissão de execução apenas ao "proprietário;
chmod 700 nome_do_arquivo.ext # permissão de execução, leitura e escrita apenas ao "proprietário" arquivo;

Para mais detalhes sobre a sintaxe do Modo Octal, ver a página 6 do artigo Permissão de Execução a Arquivo (script ou binário) no GNU/Linux - Abordagem Sistemática [Artigo] - página 6.

Interface Gráfica

Para dar permissão de execução a um arquivo se valendo da mediação da Interface Gráfica, em geral, se faz da seguinte maneira:

1. Acessando as propriedades do arquivo alvo... (que geralmente se consegue por uma das três formas):
  • Clicando com o botão direito do mouse em cima do arquivo... e depois, no menu suspenso que surge, clicando em "Propriedades";
  • Ou então, selecionando o arquivo... e depois, no menu, clicando em "Editar"... em seguida clicando em "Propriedades";
  • Ou ainda, selecionando o arquivo... e depois pressionando a combinação de teclas "Alt+Enter";

2. Depois, na janela que se abre, indo na guia "Permissões"...

3. E, então, atribuir a permissão de "Execução" para o escopo de permissão que se julgue mais adequado.

O layout da guia de "Permissões", em geral, se dividem em dois tipos:
  • Aquelas que organizam os atributos e os escopos de permissões a partir da centralidade nos atributos;
  • E aquelas que organizam os atributos e os escopos de permissões a partir da centralidade nos escopos de permissões.

Para uma exposição mais pormenorizada, inclusive, observando diferentes layouts e destacando como alguns ambientes gráficos operam internamente a atribuição da permissão de execução, ver a página 8 do artigo Permissão de Execução a Arquivo (script ou binário) no GNU/Linux - Abordagem Sistemática [Artigo] - página 8.

ass:  Rodrigo Albuquerque Serafim

Outras dicas deste autor

Como atualizar o Java (JDK) no Slackware 14.2: superando o erro no sbopkg

Corrigindo erro do VirtualBox no Slackware 14.2 após atualizar Kernel

Leitura recomendada

Instalando o Cinnamon no Debian Wheezy

Erro: 'locale: Cannot Set LC_ALL' no Slackware [Resolvido]

Teclado Retroiluminado (Backlight) Notebook Avell (Clevo) no Linux Mint ou Ubuntu - Configuração

Instalando VmWare Tools via linha de comando no OpenSUSE 11.1 como Guest no VmWare Server 2.0.2

Nano com cores (syntax highlight)

  

Comentários

Nenhum comentário foi encontrado.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner
Linux banner
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts