Au-delà des permissions standard de lecture, d'écriture et d'exécution, Linux offre des permissions spéciales pour un contrôle d'accès avancé. La dernière de ces permissions spéciales que nous aborderons est le bit collant (sticky bit).
Qu'est-ce que le Bit Collant ?
Le bit collant est un paramètre de permission qui peut être appliqué à un répertoire. Lorsqu'un répertoire a le bit collant défini, les fichiers qu'il contient ne peuvent être ni supprimés ni renommés que par le propriétaire du fichier, le propriétaire du répertoire ou l'utilisateur root. Ceci est particulièrement utile pour les répertoires partagés où plusieurs utilisateurs doivent créer et gérer leurs propres fichiers sans interférer avec les autres. Ce concept est une partie essentielle de la gestion des permissions de fichiers Unix bit collant.
Un Exemple Pratique : Le Répertoire /tmp
Un cas d'utilisation courant pour le bit collant sous Linux est le répertoire /tmp, qui est un emplacement accessible en écriture par tous pour les fichiers temporaires. Examinons ses permissions :
$ ls -ld /tmp
drwxrwxrwt 17 root root 4096 Dec 15 11:45 /tmp
Remarquez le t à la fin de la chaîne de permissions (rwxrwxrwt). Ce t indique que le bit collant est défini. Grâce à cela, bien que tout utilisateur puisse créer des fichiers dans /tmp, il ne peut pas supprimer ou déplacer les fichiers créés par d'autres utilisateurs. Cela empêche un utilisateur de perturber le travail d'un autre dans cet espace partagé.
Comment Définir le Bit Collant
Vous pouvez définir le bit collant à l'aide de la commande chmod de deux manières : mode symbolique ou mode octal (numérique).
Pour ajouter le bit collant en mode symbolique :
chmod +t mon_repertoire_partage
Pour définir les permissions en mode octal, vous préfixez un 1 au code de permission standard à trois chiffres. La représentation numérique du bit collant est 1.
# Ceci définit les permissions à rwxr-xr-x avec le bit collant
chmod 1755 mon_repertoire_partage
Comprendre le bit collant est essentiel pour gérer efficacement les environnements multi-utilisateurs et sécuriser les répertoires partagés.