Définition simple
umask définit quels bits de permission sont retirés par défaut lors de la création de nouveaux fichiers et répertoires sous Unix/Linux.
Définition technique
Une application demande un mode de création, souvent basé sur 0666 pour un fichier et 0777 pour un répertoire. Le noyau applique ensuite le masque : les bits présents dans l’umask sont retirés du mode demandé. L’umask est héritée par les processus enfants.
Fonctionnement / rôle
Avec une umask 027, un répertoire demandé en 0777 devient généralement 0750, tandis qu’un fichier demandé en 0666 devient 0640. L’umask ne remplace pas chmod : elle influence les permissions initiales, pas les permissions d’un objet déjà créé.
À quoi cela sert ?
Éviter que de nouveaux fichiers ou répertoires soient créés avec des droits trop permissifs.
Exemple concret
Un service lancé avec une umask 027 crée ses fichiers de configuration lisibles par le propriétaire et son groupe, mais pas par les autres utilisateurs.
Problèmes fréquents
- Masque trop permissif exposant des données
- Masque trop restrictif empêchant un service de fonctionner
- umask différente entre shell interactif et service systemd
- Confusion entre umask, chmod et ACL
Termes associés
À retenir : umask agit au moment de la création en retirant des permissions ; elle ne modifie pas rétroactivement les fichiers existants.