Vous modifiez les autorisations sur un script shell sous Unix à l'aide de la commande `chmod`. Voici comment procéder :
Comprendre les autorisations :
Les autorisations Unix sont représentées par un nombre octal à trois chiffres (base 8). Chaque chiffre contrôle les autorisations pour une catégorie d'utilisateurs :
* Premier chiffre (le plus à gauche) : Autorisations du propriétaire
* Deuxième chiffre : Autorisations de groupe
* Troisième chiffre : Les autres (tout le monde)
Chaque chiffre est une somme de ces valeurs :
* `4` :autorisation de lecture
* `2` :autorisation d'écriture
* `1` :autorisation d'exécution
* `0` :Aucune autorisation
Exemples de scénarios :
Disons que vous avez un script nommé « my_script.sh ».
* Rendez-le exécutable pour le propriétaire uniquement :
```bash
chmod 700 mon_script.sh
```
Cela donne au propriétaire des autorisations de lecture (4), d'écriture (2) et d'exécution (1) (4+2+1=7), et aucune autorisation pour le groupe ou d'autres (00).
* Rendez-le exécutable pour le propriétaire et le groupe :
```bash
chmod 750 mon_script.sh
```
Cela donne au propriétaire des autorisations de lecture, d'écriture et d'exécution (7), au groupe des autorisations de lecture et d'exécution (4+1=5) et aucune autorisation pour les autres (0).
* Rendez-le exécutable pour tout le monde :
```bash
chmod 755 mon_script.sh
```
Cela permet au propriétaire de lire, d'écrire et d'exécuter (7), au groupe de lire et d'exécuter (5) et aux autres de lire et d'exécuter (5). Il s'agit d'une autorisation courante pour les scripts destinés à être exécutés par plusieurs utilisateurs.
* Ajouter une autorisation d'exécution pour tout le monde sans modifier les autorisations de lecture/écriture :
Si vous ne souhaitez pas spécifier toutes les autorisations, vous pouvez utiliser la syntaxe `+x` pour *ajouter* l'autorisation d'exécution.
```bash
chmod +x mon_script.sh
```
Cela ajoute une autorisation d'exécution pour le propriétaire, le groupe et d'autres personnes, laissant les autorisations de lecture et d'écriture inchangées.
* Supprimer l'autorisation d'exécution pour les autres :
Vous pouvez également utiliser la syntaxe `-x` pour *supprimer* l'autorisation d'exécution.
```bash
chmod -x mon_script.sh
```
Cela supprime l'autorisation d'exécution pour le propriétaire, le groupe et les autres.
Vérification des autorisations :
Après avoir modifié les autorisations, vous pouvez les vérifier à l'aide de la commande `ls -l` :
```bash
ls -l mon_script.sh
```
Cela vous montrera les autorisations dans un format lisible par l'homme (par exemple, `-rwxr-xr-x`).
N'oubliez pas de remplacer `my_script.sh` par le nom réel de votre script shell. Soyez toujours prudent lorsque vous modifiez les autorisations, car des paramètres incorrects peuvent créer des failles de sécurité.
|