NSI — Systèmes d'exploitation — Système Unix/Linux
Les systèmes de type Unix sont des systèmes multi-utilisateurs : plusieurs utilisateurs peuvent partager le même ordinateur, chacun disposant d'un environnement et de droits qui lui sont propres. Le système d'exploitation permet de gérer ces droits très finement, fichier par fichier.
1. Utilisateurs et groupes
Chaque utilisateur possède des droits qui lui permettent d'effectuer certaines opérations et pas d'autres. Un utilisateur particulier, appelé administrateur ou root, peut modifier les droits de tous les autres utilisateurs.
Plutôt que de gérer les utilisateurs un par un, l'administrateur peut créer des groupes et attribuer des droits à un groupe entier.
- L'utilisateur
roota tous les droits sur le système. - Un groupe regroupe plusieurs utilisateurs partageant les mêmes droits sur un fichier.
- Tout fichier appartient à un propriétaire et à un groupe.
2. Les trois types de droits
Chaque fichier ou répertoire possède trois types de droits :
| Symbole | Droit | Pour un fichier | Pour un répertoire |
|---|---|---|---|
| r | Lecture | Lire le contenu du fichier | Lister le contenu du répertoire |
| w | Écriture | Modifier le contenu du fichier | Créer, supprimer des fichiers dans le répertoire |
| x | Exécution | Exécuter le fichier (programme) | Accéder (traverser) le répertoire |
3. Les trois catégories d'utilisateurs
Pour chaque fichier, les droits sont définis séparément pour trois catégories d'utilisateurs :
Par défaut, la personne qui a créé le fichier. Symbolisé par u (user).
Tous les utilisateurs appartenant au groupe associé au fichier. Symbolisé par g (group).
Tous les autres utilisateurs (ni propriétaire, ni membre du groupe). Symbolisé par o (others).
4. Lire les droits avec ls -l
La commande ls -l affiche des informations détaillées sur les fichiers et répertoires,
dont leurs permissions :
drwxr-xr-x 2 david david 4096 avril 13 20:05 info
Décomposer la chaîne de permissions
Prenons l'exemple -rw-r--r-- et décomposons les 10 caractères :
(fichier)
(u)
(g)
(o)
-→ c'est un fichier (undindiquerait un répertoire)rw-→ le propriétaire peut lire et écrire, mais pas exécuterr--→ le groupe peut lire uniquementr--→ les autres peuvent lire uniquement
Exemple avec un répertoire : drwxr-xr-x
(répertoire)
(u)
(g)
(o)
d→ c'est un répertoirerwx→ le propriétaire peut lire, modifier et traverser le répertoirer-x→ le groupe peut lire et traverser, mais pas modifier le contenur-x→ les autres peuvent lire et traverser, mais pas modifier le contenu
5. Modifier les droits avec chmod
Le propriétaire d'un fichier (ou root) peut modifier les permissions
à l'aide de la commande chmod.
Syntaxe générale
Exemples
Il est possible de combiner plusieurs droits dans une même commande.
Par exemple, chmod g-wx toto.txt supprime à la fois w et x
pour le groupe en une seule instruction.
root a tous les droits sur l'ensemble
des fichiers et des répertoires du système. Il peut utiliser chmod sur n'importe quel fichier,
même s'il n'en est pas le propriétaire.
6. À retenir
Points clés du cours
- Un système Unix est multi-utilisateurs : chaque utilisateur a des droits spécifiques.
- Il existe trois types de droits : r (lecture), w (écriture), x (exécution).
- Ces droits sont définis pour trois catégories : u (propriétaire), g (groupe), o (autres).
- La commande
ls -lpermet de lire les permissions d'un fichier ou répertoire. - La commande
chmodpermet de modifier les permissions d'un fichier ou répertoire. - L'utilisateur
roota tous les droits et peut modifier les permissions de n'importe quel fichier.
