Définition d’un umask personnalisé sous macOS

Chaque fichier et dossier de votre Mac est doté d’un ensemble d’autorisations. Lorsque vous créez un fichier ou un dossier, l’umask détermine ces autorisations.

Les étapes avancées ci-dessous s’adressent principalement aux administrateurs système et aux utilisateurs maîtrisant les lignes de commande. Soyez vigilant lorsque vous modifiez des autorisations de fichiers et des umasks. Si vous faites une erreur, vous pouvez réduire la sécurité des fichiers, des dossiers ou des apps sur votre Mac ou empêcher les apps de fonctionner.

À propos des autorisations et des umasks

Autorisations. Chaque fichier, dossier et app stocké sur votre Mac possède des réglages d’autorisations qui déterminent quels comptes d’utilisateurs peuvent lire, écrire ou exécuter le fichier, le dossier ou l’app. Elles incluent les autorisations POSIX et les listes de contrôle d’accès (ACL). Pour rendre les autorisations POSIX d’un utilisateur plus ou moins restrictives, vous pouvez régler leur valeur umask.

Umasks. Un nombre à trois chiffres peut représenter les autorisations POSIX d’un fichier. Vous pouvez voir ce type d’autorisations lorsque vous les visualisez à partir de Terminal. Chaque chiffre est compris entre 0 et 7. Lorsque vous créez un fichier ou un dossier, la valeur umask est soustraite d’une valeur par défaut (généralement 666 pour les fichiers et 777 pour les dossiers) pour déterminer les autorisations appropriées. Par exemple, un umask par défaut de 022 définit des autorisations de 644 sur les nouveaux fichiers et de 755 sur les nouveaux dossiers.

Vous pouvez définir le umask dans plusieurs emplacements et chaque emplacement influe sur différentes apps. Si vous définissez un umask de manière incorrecte, vous risquez de perdre l’accès à certains fichiers ou d’y accorder l’accès à d’autres utilisateurs. Reportez-vous à la section MODES de la page chmod(1) du manuel pour en savoir plus.

Umask pour les apps utilisateur

Connectez-vous en tant qu'administrateur et entrez la commande suivante dans Terminal, en remplaçant nnn par la valeur umask, telle que 027 ou 002. Cette commande définit le umask de l'utilisateur pour chaque app ouverte, y compris les apps auxquelles il accède depuis la ligne de commande et les nouveaux fichiers créés par ces apps. Après avoir entré cette commande, vous devrez peut-être redémarrer votre Mac.

sudo launchctl config user umask nnn

Si le message « Impossible d’écrire les données liées à la configuration : fichier ou répertoire introuvable » s’affiche, votre disque de démarrage possède un dossier dans /private/var/db/com.apple.xpc.launchd/config. Si le dossier de configuration est manquant, réessayez après avoir entré la commande suivante pour le créer :

sudo mkdir -m 755 /private/var/db/com.apple.xpc.launchd/config

Umask pour les processus système

Connectez-vous en tant qu'administrateur et entrez la commande suivante dans Terminal, en remplaçant nnn par la valeur umask, telle que 027 ou 002. Cette commande définit le umask de l’utilisateur pour chaque démon exécuté dans le contexte système. Cela est fortement déconseillé, car cela risque d’entraîner la modification des autorisations applicables aux fichiers utilisés par le système. Des autorisations trop restrictives peuvent empêcher le logiciel de fonctionner et des autorisations trop ouvertes peuvent entraîner des problèmes de sécurité. Après avoir entré cette commande, vous devrez peut-être redémarrer votre Mac.

sudo launchctl config system umask nnn

Si le message « Impossible d’écrire les données liées à la configuration : fichier ou répertoire introuvable » s’affiche, votre disque de démarrage possède un dossier dans /private/var/db/com.apple.xpc.launchd/config. Si le dossier de configuration est manquant, réessayez après avoir entré la commande suivante pour le créer :

sudo mkdir -m 755 /private/var/db/com.apple.xpc.launchd/config

En savoir plus

Pour obtenir plus d’informations sur la définition d’un umask, entrez man launchctl dans Terminal.

Date de publication: