Examen demain Vendredi su UNIX, une petite question - Programmation
Marsh Posté le 10-01-2002 à 16:19:54
Ce n'est pas 4 chiffres mais 3 chiffres attention lire ce qui suit :
EXEMPLE DE DE DROITS D'UN FICHIER
Code :
|
Chaque utilisateur peut être membre de un ou plusieurs groupes. Le fichier /etc/password contient les groupes qui sont définis et indique les groupes secondaires de chaque utilisateur. Les droits d'accès reposent sur trois classes d'utilisateur, le propriétaire d'un fichier(user), le groupe primaire auquel il appartient (group) et tous les autres utilisateurs(other users).
Les droits disponibles sont lecture (r), écriture(w) et exécution (x ou s). Dans certains cas spéciaux, le droit d'exécution est s au lieu de x. Cela signifie que l'utilisateur va bénéficier des mêmes droits d'accès que le propriétaire durant l'exécution du programme.
Les droits d'un fichiers sont affichés comme suit :
- rwx rwx rwx. Le premier caractère indique qu'il s'agit d'un fichier ordinaire. Le premier groupe de 3 car. sont les droits du propriétaire du fichier. Le second correspond aux droits du groupe et le 3e groupe sont les droits des autres utilisateurs.
Dans le cas d'un répertoire, il faut avoir le droit de lecture et celui d'exécution pour être en mesure de le consulter. Le droit d'écriture permet de modifier son contenu. Typiquement les droits d'accès à un répertoire sont --- ou r-x ou rwx.
Quand un fichier est créé certains droits d'accès sont automatiquement définis. Il est possible de choisir ces droits par défaut en modifiant le masque de création des fichiers avec la commande umask, on peut aussi changer les droits avec chmod.
Attention la localisation d'un fichier n'a rien à voir avec son propriétaire. En d'autres termes, un usager peut créer des fichiers dans un répertoire qui ne lui appartient pas en autant qu'il dispose des droits requis pour le faire.
[edtdd]--Message édité par AlphaT--[/edtdd]
Marsh Posté le 10-01-2002 à 15:49:39
Salut a tous, voila, j'ai une petite difficultée a comprendre les autorisations sur fichiers.
Dans un shell, on utilise chmod, chgrp... etc jusque la ça va...
Mais en C on utilise chmod pour tout, les permission de groupe, d'utilisateurs...
Pour cela on utilise la commande chmod + un nombre a 4 chiffres qui je pense est en OCTAL...
Ma question est comment merche ce nombre, je ne comprends pas bien, parce que par exemple quand je met 0777, je me retrouve avec une autorisation 0755...