Un mode octal encode des bits, pas une décision d’accès complète. 0755 devient rwxr-xr-x pour un fichier comme un répertoire, mais x signifie exécuter un programme pour le fichier et rechercher ou traverser pour le répertoire. Propriété, identités du processus, ACL, options de montage et autres politiques comptent aussi.

Lecture signifie contenu ou noms

Pour un fichier ordinaire, lecture permet de lire les données si le reste du contrôle d’accès l’autorise. Pour un répertoire, elle permet de lister les noms, sans donner à elle seule accès aux métadonnées ou contenus correspondants. Le parcours du répertoire dépend séparément de x.

L’écriture du répertoire contrôle les entrées, pas les données

L’écriture d’un fichier permet de modifier ses données selon l’environnement. Pour un répertoire, elle participe à la création, suppression et au renommage des entrées et nécessite normalement le parcours pour agir sur les chemins. Supprimer une entrée n’est donc pas écrire le fichier référencé.

Un mode converti ne garantit pas la commande

GNU chmod peut conserver setuid ou setgid sur les répertoires lorsqu’un mode numérique à trois ou quatre chiffres ne les vise pas explicitement ; les formes à cinq chiffres ou plus, avec opérateur ou symboliques explicites peuvent agir autrement. Déréférencement, récursion, politique du système, privilèges, ACL et propriété ajoutent du contexte. ChmodCalc modélise l’instantané 12 bits demandé sans promettre l’état observé après une commande.