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

O artigo aborda de modo sistemático e sob diversas maneiras a respeito de como dar permissão de execução a um arquivo, quer seja este arquivo um script ou binário. Veremos, pois, algumas formas de definir sua 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.

[ Hits: 14.175 ]

Por: Rodrigo Albuquerque Serafim em 11/10/2017 | Blog: https://www.vivaolinux.com.br/~raserafim


Interface Gráfica: particularidades e layouts de categorização



A Interface Gráfica, sem dúvidas, é o meio mais intuitivo para dar permissão de execução a um determinado arquivo, mas não necessariamente é o meio mais prático.

Possui a desvantagem de que nem todas as situações é possível contar com a sua presença e, também, possui a desvantagem de que para cada arquivo que se quer dar permissão de execução é necessário repetir todo o procedimento - enquanto que por via do Terminal é possível fazer atribuições em lote.

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 maneiras):
  • 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 divide em dois tipos:
  • Aquelas que organizam os atributos e os escopos de permissões a partir da centralidade nos atributos: como, por exemplo, o LXDE. Nestes casos, há listas de seleção em cada atributo de permissão para selecionar o escopo de permissão a ser dado ao atributo em questão. Assim, uma lista de seleção para o atributo de "Leitura", outra para o atributo de "Escrita" e outra para o atributo de "Execução". Em cada lista de seleção, geralmente, há mais ou menos os seguintes escopos: "Ninguém"; "Somente o proprietário"; "Somente o proprietário e o grupo"; "Outros usuários e grupos"; "Qualquer um".
  • Aquelas que organizam os atributos e os escopos de permissões a partir da centralidade nos escopos de permissões: como é o caso da grande maioria das Interfaces mais populares (por exemplo, Gnome, KDE, Unity, Cinnamon, MATE, XFCE, Pantheon, Deepin).

Nestes casos, há listas de seleção em cada escopo de permissão para selecionar o atributo de permissão ou o conjunto de atributos de permissão a ser dado ao escopo em questão. Assim, em geral, uma lista de seleção para o escopo do "Usuário dono", outra para o escopo do "Grupo", as vezes uma lista de seleção para o escopo dos "Outros" usuários e outra para o escopo de "Todos" os usuários. Em cada lista de seleção, geralmente, há mais ou menos os seguintes atributos: "Apenas leitura"; "Apenas escrita"; "Leitura e escrita".

A permissão de execução costuma ser viabilizada por meio de uma caixa de seleção exclusivamente para este propósito (com um texto semelhante à "permitir execução do arquivo como um programa").

É interessante observar que, no layout da guia de "Permissões" centrado nos escopos de permissões (o último tópico que expomos), a caixa de seleção utilizada para dar permissão de execução, quando ativada, pode proceder internamente de maneira diferente para cada Interface Gráfica.

Por exemplo, quando essa caixa é marcada nas Interfaces Gráficas do Gnome, Unity, Cinnamon, MATE e Deepin, o resultado acaba sendo a atribuição da permissão de execução para "todos" os usuários.

O curioso dessa forma de operacionalização, é que apenas é configurado o atributo de execução e não o atributo de execução conjugado com o atributo de leitura. Assim, pode acontecer de se ter "todos" os usuários com o atributo de execução definido permissivamente, porém, com o atributo de leitura definido com restrições. O resultado, coerente com o que destacamos a respeito da pressuposição que a permissão de execução tem em relação à permissão de leitura, é que ninguém neste caso teria realmente a permissão de execução. A caixa de seleção estaria marcada como um arquivo com permissão de execução; mas, o arquivo não seria de execução.

Já o KDE, apenas dá permissão ao atributo de execução quando o atributo de leitura já está configurado permissivamente. Desta forma, se todos os usuários tiverem permissão de leitura, então, todos os usuários terão configurados o atributo de execução de maneira permissiva. Por outro lado, se nenhum usuário estiver com a permissão de leitura, então, a configuração do atributo de execução também não será definido para usuário algum. No KDE, quando a caixa de seleção para a atribuição da permissão de execução está marcada é Porque, de fato, o arquivo tem permissão de execução.

Outras duas observações curiosas merecem ser mencionadas nessa categoria de layout centrado nos escopos de permissões:
  • Primeiro, que o XFCE apenas exibe a caixa de seleção da permissão de execução caso identifique que o arquivo alvo se trata mesmo de um script. O problema é que nem sempre a identificação se dá de maneira correta: o usuário, algumas vezes, acaba por ficar sem ter como dar permissão de execução por meio da Interface Gráfica do XFCE;
  • Segundo, de todas as Interfaces Gráficas mencionadas a do Pantheon (forjada no Elementary OS) é a mais original. Nela, ao invés da lista de seleção é utilizado botões para definir os atributos de permissão. Além disso, é exibido na guia a visualização das permissões em sua forma Textual e em seu Modo Octal. No caso da visualização do Modo Octal ainda é possível utilizar a caixa de texto para a alteração das permissões. Portanto, no Pantheon, a guia de "Permissões" nos oferece três disposições visuais das permissões e duas possibilidades diferentes de métodos para a alteração das permissões.

Por fim, segue uma imagem que contém três layouts diferentes de organização dos atributos e dos escopos:
Linux: Permissão de Execução a Arquivo (script ou binário) no GNU/Linux - Abordagem Sistemática
Página anterior     Próxima página

Páginas do artigo
   1. Introdução
   2. Terminal: Modo Textual e Modo Octal
   3. Modo Textual em seu código elementar (suficiente quando de um usuário)
   4. Modo Textual em seu código ampliado (recomendado quando de vários usuários)
   5. Modo Textual na sua distinção entre "adição" e "redefinição" de permissões
   6. Modo Octal em sua forma única ("redefinição")
   7. Atribuição em lote (Textual e Octal)
   8. Interface Gráfica: particularidades e layouts de categorização
   9. Considerações Finais
Outros artigos deste autor

Permissão de Execução de Arquivo (Script ou Binário) no GNU/Linux - Elementos Básicos para Compreensão

Leitura recomendada

Linux com cara de Windows para atrair novos usuários

Configuração: Servidor de nomes slave com Bind9 no Debian 4.0

Instalação da placa Gigabit 8111/8168B

Instalação do Gentoo em HD Externo para dual boot com Windows

Instalando Apache2, PHP4 e MySQL

  
Comentários
[1] Comentário enviado por Sandson em 17/10/2017 - 15:10h

Nesse comentário:
u → indica permissão {de execução} ao usuário [user] dono do arquivo alvo (proprietário)
g → indica permissão {de execução} ao usuário [user] dono do arquivo alvo (proprietário)
o → indica permissão {de execução} ao grupo [group] do qual o usuário dono faz parte
a → indica permissão {de execução} a todos [all] os usuários (é o mesmo que utilizar a sua supressão)

Não estaria errado não? O certo não seria?
u → indica permissão {de execução} ao usuário [user] dono do arquivo alvo (proprietário)
g → indica permissão {de execução} ao grupo [group] do qual o usuário dono faz parte
o → indica permissão {de execução} ao usuário que não faz parte do grupo do usuário dono
a → indica permissão {de execução} a todos [all] os usuários (é o mesmo que utilizar a sua supressão)

[2] Comentário enviado por raserafim em 18/10/2017 - 11:01h

colega Sandson,

você tem toda razão!

os erros que você indicou procedem sim!

obrigado pela leitura atenta do artigo!

obrigado por apontar os erros!

[3] Comentário enviado por raserafim em 18/10/2017 - 11:07h

ERRATA:

na página de número 4 {Modo Textual em seu código ampliado (recomendado quando de vários usuários)}, há um erro no "quadro sintético de todos os caracteres possíveis referentes ao argumento da "indicação do escopo" de usuários":

segue o "quadro sintético" correto:

u    -->    indica permissão {de execução} ao usuário [user] dono do arquivo alvo (proprietário);
g    -->    indica permissão {de execução} ao grupo [group] do qual o usuário dono faz parte;
o    -->    indica permissão {de execução} aos outros [other] usuários que não são nem o dono nem compõem o grupo de usuários do dono;
a    -->    indica permissão {de execução} a todos [all] os usuários (é o mesmo que utilizar a sua supressão);

[4] Comentário enviado por raserafim em 30/10/2017 - 18:46h

Os erros apontados nos comentários anteriores já foram corrigidos diretamente no artigo pela moderação do VOL!

Obrigado Izaías!

[5] Comentário enviado por removido em 21/01/2018 - 14:05h


[4] Comentário enviado por raserafim em 30/10/2017 - 18:46h

Os erros apontados nos comentários anteriores já foram corrigidos diretamente no artigo pela moderação do VOL!

Obrigado Izaías!


Ok.
Sempre que precisarem de correções, avisem à moderação para que possamos editar e evitar que nossos leitores cometam erros.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts