Le masque de mode de création de fichier utilisateur (umask) est une commande shell intégrée qui peut être utilisée pour définir des valeurs par défaut pour les autorisations de lecture/écriture/exécution sur les fichiers nouvellement créés. Il doit être exécuté dans les fichiers de démarrage du shell ".cshrc" ou ".profile".
Il reçoit une valeur octale à trois chiffres, qui représente l'inverse binaire des autorisations pouvant être attribuées aux fichiers. Cet argument numérique à trois chiffres représente l'accès à "inhiber" ou "masquer" lors de la création d'un fichier.
Lorsqu'un fichier est créé, ses autorisations sont définies sur ce que le programme de création demande moins ce que le paramètre "umask" interdit. Ainsi, la valeur qu'il souhaite est le complément octal du mode de fichier numérique souhaité. Les chiffres donnent les autorisations indiquées ci-dessous :
Octal | Binaire | Autorisations |
---|---|---|
0 | 000 | rwx |
1 | 001 | rw- |
2 | 010 | r-x |
3 | 011 | r– |
4 | 100 | -wx |
5 | 101 | -w- |
6 | 110 | –x |
7 | 111 | (aucun) |
Changer le "umask"
Pour déterminer la valeur souhaitée, déterminez simplement l'équivalent numérique du mode de fichier que vous souhaitez obtenir, puis soustrayez-le de 777.
Par exemple, pour obtenir le mode 751 par défaut, calculez 777-751=026 - c'est la valeur que vous donnez à "umask"
% umask 026
Une fois cette commande exécutée, tous les futurs fichiers créés bénéficieront automatiquement de cette protection.
Une autre façon de calculer les valeurs "umask" est de se rappeler que le numéro 2 dans le "umask" désactive l'autorisation d'écriture, tandis que le numéro 7 désactive l'autorisation de lecture, d'écriture et d'exécution.
Valeurs communes de "démasquage"
Par défaut, la plupart des versions d'UNIX spécifient un mode octal de 666 (n'importe quel utilisateur peut lire ou écrire le fichier) lorsqu'ils créent de nouveaux fichiers. De même, de nouveaux programmes sont créés avec un mode 777 (n'importe quel utilisateur peut lire, écrire ou exécuter le programme).
Les valeurs umask les plus courantes sont 022, 027 et 077. Une valeur umask de 022 permet au propriétaire de lire et d'écrire tous les fichiers nouvellement créés, mais tout le monde ne peut que les lire :
- 0666 :Mode de création de fichier par défaut.
- 022 :mode résultant.
- 0644 :mode résultant.
Une valeur umask de 077 permet uniquement au propriétaire des fichiers de lire tous les fichiers nouvellement créés :
- 0666 :Mode de création de fichier par défaut.
- 077 :umask.
- 0600 :mode résultant.
Sur de nombreux systèmes UNIX, le umask par défaut est 022. Ceci est hérité du processus init, car tous les processus sont des descendants de init.
Tableau des paramètres umask courants
umask | Accès utilisateur | Accès de groupe | Autre |
---|---|---|---|
0000 | tous | tous | tous |
0002 | tous | tous | lire, exécuter |
0007 | tous | tous | aucun |
0022 | tous | lire, exécuter | lire, exécuter |
0027 | tous | lire, exécuter | aucun |
0077 | tous | aucun | aucun |