GNU/Linux >> Tutoriels Linux >  >> Linux

À quoi sert l'autorisation d'exécution ?

En gros, cela signifie que vous pouvez dire au système d'exploitation d'exécuter le code dans le fichier. Par exemple, si le fichier était un exécutable binaire, l'accès en lecture vous permettrait de le visualiser, l'accès en écriture vous permettrait de le modifier, mais sans les autorisations d'exécution, vous ne pourriez pas exécuter le programme. Dans le cas d'un script, c'est un peu plus compliqué, car vous n'avez pas nécessairement besoin de "lancer" le programme, vous pouvez simplement lire son contenu dans un interpréteur, qui lui-même a le privilège d'exécution, mais vous n'avez pas besoin d'exécuter autorisations sur le script lui-même.

Certains scripts sous Linux sont eux-mêmes exécutables, vous verrez souvent une ligne en haut comme

#!/bin/bash

ou

#!/bin/python

Cette ligne indique au noyau que le fichier peut être exécuté en appelant le programme approprié (et qu'il ne s'agit pas uniquement de texte). Ensuite, vous pouvez simplement exécuter votre script comme

./script

au lieu d'avoir à faire

python ./script

"execute" permet à l'utilisateur d'exécuter des exécutables. Pour les répertoires, c'est l'autorisation d'entrer dans le répertoire à l'aide de la commande cd.


Pour des raisons pratiques, la permission de lire implique la capacité d'exécuter.

Cependant, le contraire n'est pas vrai; il y a une certaine valeur dans la possibilité de donner la permission d'exécuter du code sans donner la permission de le lire.


Linux
  1. Linux - Que signifie un point après les bits d'autorisation de fichier ?

  2. Tail lit-il tout le fichier ?

  3. Que signifie la sortie de Ps ?

  4. Qu'est-ce que Echo $ ? Faire??

  5. Modifier l'autorisation de lecture, d'écriture et d'exécution ?

Les 10 meilleurs livres Linux à lire en 2019

Que fait Rackspace dans le cloud ?

Que fait l'appel système brk() ?

Que fait le -e dans un bash shebang ?

Que fait kill -- -0 ?

Que signifie le suffixe .d sous Linux ?