Si vous avez déjà utilisé Linux, vous avez probablement croisé la notion de « permissions ». Au début, ça peut sembler un peu intimidant, mais une fois que vous avez saisi les bases, les permissions deviennent un outil puissant pour gérer la sécurité et le contrôle d’accès dans votre système. C’est un peu comme gérer les clés d’un immeuble où chaque pièce contient des informations importantes. Il est essentiel de savoir qui peut entrer, qui peut modifier des choses, et qui peut juste jeter un coup d’œil.
Les Trois Acteurs Principaux
Sous Linux, les permissions sont essentiellement gérées pour trois types d’acteurs :
- User (u) – L’utilisateur propriétaire du fichier ou du répertoire.
- Group (g) – Le groupe d’utilisateurs qui partagent un accès commun.
- Others (o) – Tous les autres utilisateurs qui ne sont ni le propriétaire, ni dans le groupe.
Imaginez cela comme les résidents d’un immeuble (user), les membres d’une association de copropriétaires (group), et les visiteurs extérieurs (others).
Lecture, Écriture, Exécution : Les Trois Permissions
Il y a trois types de permissions que vous pouvez attribuer :
- Lecture (r) : Permet de lire le contenu d’un fichier ou de lister les fichiers dans un répertoire.
- Écriture (w) : Permet de modifier un fichier ou de créer, supprimer, ou renommer des fichiers dans un répertoire.
- Exécution (x) : Permet d’exécuter un fichier (s’il s’agit d’un programme) ou d’entrer dans un répertoire.
En combinant ces permissions pour chaque type d’utilisateur (user, group, others), vous pouvez créer un système de sécurité granulaire et efficace.
Lire une Ligne de Permissions
Prenons un exemple pratique. Lorsque vous tapez ls -l
dans votre terminal Linux, vous obtenez une liste de fichiers et de répertoires avec leurs permissions associées. Voici à quoi cela pourrait ressembler :
Cette ligne peut sembler ésotérique au premier coup d’œil, mais c’est en réalité assez simple. Le premier caractère (-
) indique le type de fichier (un -
pour un fichier ordinaire, d
pour un répertoire). Les neuf caractères suivants sont divisés en trois groupes de trois :
rwx
pour le propriétaire (user)r-x
pour le groupe (group)r--
pour les autres (others)
Dans cet exemple, le propriétaire peut lire, écrire et exécuter le fichier, les membres du groupe peuvent lire et exécuter, mais ne pas écrire, et tous les autres utilisateurs peuvent seulement lire le fichier.
Voici un exemple de ligne de permissions pour un répertoire sous Linux :

Décomposition :
d
: Le premier caractère indique que c’est un répertoire (d
pour « directory »).rwx
: Le propriétaire (user) a les permissions de lecture (r
), écriture (w
), et exécution (x
).r-x
: Le groupe (group) a les permissions de lecture (r
) et d’exécution (x
), mais pas d’écriture.r--
: Les autres utilisateurs (others) ont seulement la permission de lecture (r
).
Contexte d’utilisation :
- Le propriétaire du répertoire peut y entrer (exécution), voir son contenu (lecture), et y créer, modifier ou supprimer des fichiers (écriture).
- Les membres du groupe peuvent entrer dans le répertoire et voir son contenu, mais ne peuvent pas modifier les fichiers ou en ajouter de nouveaux.
- Les autres utilisateurs peuvent seulement voir la liste des fichiers dans le répertoire, mais ne peuvent ni entrer ni modifier quoi que ce soit.
Modifier les Permissions avec Chmod
La commande chmod
est l’outil principal pour modifier ces permissions. Supposons que vous vouliez donner aux membres de votre groupe la possibilité d’écrire dans un fichier. Vous utiliseriez :

Ceci ajoute l’autorisation d’écriture (+w
) au groupe (g
) pour le fichier fichier.txt
. C’est aussi simple que ça.
Les Permissions Spéciales : Setuid, Setgid, et Sticky Bit
Linux propose également des permissions « spéciales » pour des cas d’utilisation spécifiques :
- Setuid (
s
) : Permet à un fichier de s’exécuter avec les privilèges du propriétaire, quel que soit l’utilisateur qui le lance. Très utilisé pour des commandes commepasswd
. - Setgid (
s
) : Applique à un répertoire, cela signifie que les fichiers créés dans ce répertoire héritent du groupe du répertoire parent. - Sticky Bit (
t
) : Surtout utilisé pour les répertoires partagés, il empêche les utilisateurs de supprimer des fichiers qu’ils ne possèdent pas, même s’ils ont la permission d’écriture sur le répertoire.
Pourquoi Tout Cela Est-il Important ?
Les permissions sous Linux ne sont pas qu’un casse-tête technique ; elles sont essentielles pour protéger les données et assurer la bonne marche de votre système. Imaginez ce qui pourrait arriver si n’importe qui pouvait modifier des fichiers critiques ou supprimer des répertoires importants ? En maîtrisant les permissions, vous assurez que chaque utilisateur ne peut faire que ce qu’il est censé faire, ni plus, ni moins.
Conclusion
Les permissions sous Linux peuvent sembler complexes au début, mais elles sont un élément fondamental de la gestion d’un système. Une fois que vous avez compris comment elles fonctionnent, vous avez le contrôle total sur qui peut faire quoi dans votre système, rendant votre environnement plus sécurisé et organisé. Et comme toujours dans le monde Linux, la clé est de pratiquer. Essayez de jouer avec les permissions sur quelques fichiers d’entraînement, et vous verrez que cela devient vite une seconde nature.