Informations sur le fichier

 

La variable st_mode

Le contenu de st_mode indique le type d'un fichier, Set-GID, sticky, les droits en accès pour le propriétaire/groupe/les utilisateur (il s'agit en fait de positions binaires qui indiquent les différents attributs d'un fichier). Cette variable pourra être interprétée via des constantes définies sous sys/stat.h.

Constante Valeur Désignation
S_IFMT 0170000 masque du type de fichier
S_IFSOCK 0140000 socket
S_IFLNK 0120000 lien symbolique
S_IFREG 0100000 fichier ordinaire
S_IFBLK 0060000 périphérique blocs
S_IFDIR 0040000 répertoire
S_IFCHR 0020000 périphérique caractères
S_IFIFO 0010000 fifo
S_ISUID 0004000 bit Set-UID
S_ISGID 0002000 bit Set-Gid (voir ci-dessous)
S_ISVTX 0001000 bit sticky (voir ci-dessous)
S_IRWXU 00700 lecture/écriture/exécution du propritaire
S_IRUSR 00400 le propritaire a le droit de lecture
S_IWUSR 00200 le propritaire a le droit d'écriture
S_IXUSR 00100 le propritaire a le droit d'exécution
S_IRWXG 00070 lecture/écriture/excution du groupe
S_IRGRP 00040 le groupe a le droit de lecture
S_IWGRP 00020 le groupe a le droit d'écriture
S_IXGRP 00010 le groupe a le droit d'exécution
S_IRWXO 00007 lecture/écriture/exécution des autres
S_IROTH 00004 les autres ont le droit de lecture
S_IWOTH 00002 les autres ont le droit d'écriture
S_IXOTH 00001 les autres ont le droit d'exécution


Image non trouvée !Le bit Set-GID (S_ISGID) a plusieurs utilisations particulières : pour un répertoire, il indique que la sémantique BSD doit être appliquée en son sein, c'est à dire que les fichiers qui y sont créés héritent leur GID du répertoire et non pas du GID effectif du processus créateur, et les sous-répertoires auront automatiquement le bit S_ISGID actif. Pour les fichiers qui n'ont pas d'autorisation d'exécution pour le groupe (S_IXGRP non actif), ce bit indique qu'un verrouillage strict est en vigueur sur ce fichier.

Le bit `sticky' (S_ISVTX) sur un répertoire indique que les fichiers qui s'y trouvent ne peuvent être renommés ou effacés que par leur propriétaire, par le propriétaire du répertoire ou par root.