Fondamentalement, 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 écriture vous permettrait de le modifier, l'accès en lecture vous permettrait de le visualiser, mais sans autorisations d'exécution, vous ne seriez pas en mesure d'exécuter le programme. Dans le cas d'un script, c'est un peu plus compliqué, parce que vous n'avez pas nécessairement besoin de «lancer» le programme, vous pouvez simplement lire son contenu dans un interpréteur, qui a lui-même 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 pas seulement du texte). Ensuite, vous pouvez simplement exécuter votre script comme
./scénario
au lieu d'avoir à faire
python ./script
.png
ou.avi
?#!/bin/bash
au début de votre.avi
fichier, il sera exécuté en bash. S'il s'agit d'un vrai format avi, vous ne pourrez probablement pas l'exécuter car l'interpréter comme des commandes n'aura aucun sens et échouera.#!
vraiment interprété par le noyau?"exécuter" permet à l'utilisateur d'exécuter des exécutables. Pour les répertoires, il est permis d'entrer dans le répertoire à l'aide de la commande cd.
la source
À des fins pratiques, l'autorisation de lire implique la capacité à exécuter.
Cependant, l'inverse 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.
la source
C'est pour exécuter des applications à partir de l'interface graphique ou de la ligne de commande. Pour une utilisation php "normale" (via un serveur web), cela ne change rien. Précisément, cela dépend de la configuration, mais dans la plupart des cas, vous n'avez pas besoin de l'autorisation + x pour autoriser le chargement de votre page Web php via le navigateur.
Pour exécuter à partir de la ligne de commande, vous avez besoin de:
#!/usr/bin/php
au début du script/etc/xdg/foo
ou/home/fred/bar
, ou d'un répertoire relatif, commedir1/prog1
ou./prog2
.la source