Lorsque l’on découvre l’univers d’Unix/Linux/Mac, il y a certaines choses qui ont du mal à passer lorsque l’on débute. Je me souviens par exemple de la difficulté à apprendre le fonctionnement du système des droits sur les fichiers et plus particulièrement n’avoir rien compris des setuid, setgid et sticky bit. Je reparle de ça parce que je viens de perdre pas mal de temps avec un problème sur un développement PHP en cours, et il s’agissait du setgid qui n’était pas accordé à un répertoire. Bref, ce qui suit est un petit rafraîchissement.
Comme dit dans le sous-titre, les setuid, setgid et sticky bit sont des droits dits spéciaux, ils s’ajoutent aux droits classiques (lecture, écriture et exécution) et fonctionnent différemment suivant qu’on les applique sur un fichier ou un répertoire.