Explication Umask

Résolu/Fermé
CyRux Messages postés 164 Date d'inscription dimanche 4 janvier 2015 Statut Membre Dernière intervention 8 septembre 2016 - Modifié par mamiemando le 6/11/2015 à 10:24
CyRux Messages postés 164 Date d'inscription dimanche 4 janvier 2015 Statut Membre Dernière intervention 8 septembre 2016 - 12 nov. 2015 à 18:39
Bonjour a tous,

J'ai un serveur pure-ftpd et pour faire en sorte que quand on met un fichier sur le serveur, les droits du fichiers soit les bons j'ai mis "027 022" dans
/etc/pure-ftpd/conf/Umask

Tout marche bien ^^

"027" c'est les droits qui sont apliqués (rwxr-x---), je les ai trouvé sur ce site https://linuxzoo.net/page/sec_umask.html

Mais je ne comprend pas a quoi correspond "022" ...
Si quelqu'un pouvais m'éclairer sa serai gentil ^^
Merci d'avance et bonne soirée


1 réponse

mamiemando Messages postés 33077 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 18 avril 2024 7 748
6 nov. 2015 à 10:35
Bonjour

Explication courte

Le umask fonctionne sur le même principe que la commande chmod. La seule différence réside dans le fait que le masque passé en paramètre (022 dans ton cas) serait "opposé" dans le cas de chmod (755) dans le système octal (qui consiste à compter de 0 à 7).

Explication détaillée

Chacun de ces trois chiffres correspond aux trois catégories d'utilisateurs (propriétaire, groupe propriétaire, autres) soit un triplet de trois chiffres compris entre 0 et 7.

Maintenant, pourquoi entre 0 et 8 (ie pourquoi un système octal), et à quoi correspondent ces chiffres ? Pour chaque catégorie de groupes, tu veux pouvoir activer ou désactiver 3 droits (lecture (r), écriture (w), exécution (x)), correspondant chacun à un bit. Avec trois bits on a 2^3 valeurs, comprise dans [0, 2^3-1] = [0, 7]. Ainsi, les entiers entre 0 et 7 sont nécessaires et suffisants pour encoder cette notion.

Reste à comprendre à quoi correspondre à quoi correspondent les chiffres. Pour ça il faut faire un peu de maths mais rien de méchant : on décompose en nombre binaire le chiffre en question, chaque puissance de deux correspondant à un droit :
- 4 = 2^2 pour le droit r
- 2 = 2^1 pour le droit w
- 1 = 2^0 pour le droit x

On peut maintenant traduire chaque valeur octale en son triplet de droits correspondant :
7 = 4+2+1 = rwx
6 = 4+2+0 = rw-
5 = 4+0+1 = r-x
...
0 = 0+0+0 = ---

Reste à revenir à umask, nous avons dit que c'était le masque "opposé" (complémentaire). Ne me demande pas pourquoi ils n'ont pas adopté la même convention, je ne sais pas :-).

Pour calculer le complémentaire, il suffit de soustraire à 777 ton masque. Ainsi 777-755 = 022 et la boucle est bouclée.

Bonne chance
1
CyRux Messages postés 164 Date d'inscription dimanche 4 janvier 2015 Statut Membre Dernière intervention 8 septembre 2016 3
12 nov. 2015 à 12:50
Merci beaucoup ^^
Mais dans mon cas le les droits appliqués sont 750 qui sont appliqués avec 027 mais a quoi sert 022 ? suis-je obligé de le mettre ?
Merci
0
zipe31 Messages postés 36402 Date d'inscription dimanche 7 novembre 2010 Statut Contributeur Dernière intervention 27 janvier 2021 6 407 > CyRux Messages postés 164 Date d'inscription dimanche 4 janvier 2015 Statut Membre Dernière intervention 8 septembre 2016
12 nov. 2015 à 17:49
Salut,

Le 1er définit les droits sur les fichiers, le 2nd sur les dossiers.

https://mathieu-androz.developpez.com/articles/linux/serveur-ftp/#LV-3
http://www.proftpd.org/docs/howto/Umask.html
0
CyRux Messages postés 164 Date d'inscription dimanche 4 janvier 2015 Statut Membre Dernière intervention 8 septembre 2016 3 > zipe31 Messages postés 36402 Date d'inscription dimanche 7 novembre 2010 Statut Contributeur Dernière intervention 27 janvier 2021
12 nov. 2015 à 18:39
Merci beaucoup a vous deux ^^
Zipe tes liens vont beaucoup me servir
Résolu
0