abonnel-siteweb/data/pages/informatique/linux/commandes/umask.txt

58 lines
3.8 KiB
Plaintext

====== umask ======
{{ :dummy.png?75x75|Nom de la section}}
La commande ''umask'' est utilisée pour définir les permissions par défaut pour les nouveaux fichiers et les nouveaux répertoires créés dans un système de fichiers UNIX/Linux.
===== Description =====
La valeur **umask** représente les bits de permission qui seront désactivés pour les nouveaux fichiers et les nouveaux répertoires. Par exemple, si la valeur umask est ''022'', cela signifie que le bit de permission ''write'' (écriture) sera désactivé pour le groupe et pour les autres utilisateurs. Par conséquent, les nouveaux fichiers auront des permissions de **644 (rw-r--r--)** et les nouveaux répertoires auront des permissions de **755 (rwxr-xr-x)** par défaut.
La commande **umask** est généralement utilisée dans le fichier de configuration du shell, tel que ''~/.bashrc'' ou ''~/.profile''. En modifiant la valeur **umask** dans le fichier de configuration du shell, vous pouvez modifier les permissions par défaut pour tous les nouveaux fichiers et les nouveaux répertoires créés dans les sessions de shell que vous ouvrez.
Il est important de noter que la valeur umask ne modifie pas les permissions des fichiers et des répertoires existants. Elle ne s'applique qu'aux nouveaux fichiers et aux nouveaux répertoires créés après avoir défini la nouvelle valeur umask.
--
La commande ''umask -S'' affiche la valeur umask actuelle sous forme de notation symbolique plus facile à comprendre que la notation numérique standard.
Par exemple, si la valeur **umask** est actuellement définie à **022**, la commande ''umask -S'' affichera :
<code>
u=rw,g=r,o=r
</code>
Cela signifie que les nouveaux fichiers auront des permissions de ''rw-r--r--'' et les nouveaux répertoires auront des permissions de ''rwxr-xr-x'' par défaut. La notation symbolique affichée par la commande ''umask -S'' montre les permissions qui seront désactivées pour les nouveaux fichiers et les nouveaux répertoires, en utilisant les symboles ''r'' (read/lecture), ''w'' (write/écriture) et ''x'' (execute/exécution).
--
La commande ''umask -p'' affiche la valeur umask actuelle sous forme de notation numérique standard, où chaque chiffre représente les bits de permission qui seront désactivés pour les propriétaires, les groupes et les autres utilisateurs. Par exemple, si la valeur **umask** est actuellement définie à **022**, la commande ''umask -p'' affichera :
<code bash>
022
</code>
--
Pour afficher la valeur umask actuelle d'un autre utilisateur, vous pouvez utiliser la commande ''sudo -u <utilisateur> umask''. Cette commande permet d'exécuter la commande ''umask'' en tant qu'utilisateur spécifié par l'option "-u".
Par exemple, pour afficher la valeur umask actuelle de l'utilisateur ''user1'', vous pouvez utiliser la commande suivante :
<code>
sudo -u user1 umask
</code>
Cette commande affichera la valeur **umask** actuelle de l'utilisateur ''user1'' en notation numérique standard.
===== Modification des permissions d'un fichier =====
Les permissions d'un fichier sont modifiables avec la commande [[informatique:linux:commandes:chmod]].
Par exemple :
<code BASH>
chmod -R 777 .
</code>
===== Modification des droits d'accès par défaut pour d'un groupe pour un répertoire =====
Pour modifier les droits d'accès par défaut pour d'un groupe pour un répertoire, on utilise les ACLs (Access Control Lists) avec la commande [[informatique:linux:commandes:setfacl|setfacl]].
Plus précisément, la commande ''setfacl'' définit les ACLs pour les fichiers et les répertoires. Les ACLs sont des mécanismes de sécurité avancés qui permettent de définir des autorisations plus précises que les permissions de base UNIX (par exemple, en permettant à plusieurs utilisateurs ou groupes d'avoir des permissions différentes sur un même fichier).