GNU/Linux >> Tutoriels Linux >  >> Linux

UNIX / Linux :Guide du débutant sur les autorisations de fichiers et de répertoires (umask, chmod, lecture, écriture, exécution)

L'autorisation de fichier et de répertoire Unix se présente sous la forme d'une structure 3 × 3. c'est-à-dire trois autorisations (lecture, écriture et exécution) disponibles pour trois types d'utilisateurs (propriétaire, groupes et autres).

Dans la sortie de la commande ls -l, les 9 caractères de la 2e à la 10e position représentent les autorisations pour les 3 types d'utilisateurs.

-rw-r--r--  1 sathiya sathiya  272 Mar 17 08:22 test.txt

Dans l'exemple ci-dessus :

  • L'utilisateur (sathiya) est autorisé à lire et à écrire
  • Le groupe dispose d'une autorisation de lecture
  • D'autres ont l'autorisation de lecture

Trois autorisations de fichiers :

  • lire :autorisé à lire le contenu du fichier.
  • écrire :autorisé à écrire dans le fichier.
  • exécuter :autorisé à exécuter le fichier en tant que programme/script.

Trois autorisations de répertoire :

  • lire  :autorisé à lire le contenu du répertoire (voir les fichiers et les sous-répertoires de ce répertoire).
  • écrire :autorisé à écrire dans le répertoire. (créer des fichiers et des sous-répertoires dans ce répertoire)
  • exécuter :autorisé à entrer dans ce répertoire.

Valeurs numériques pour les autorisations de lecture, d'écriture et d'exécution :

  • lire 4
  • écrire 2
  • exécuter 1

Pour avoir une combinaison d'autorisations, ajoutez les nombres requis. Par exemple, pour les autorisations de lecture et d'écriture, c'est 4+2 =6.

Modifier les autorisations de fichiers et de répertoires à l'aide de la commande Chmod

Vous pouvez utiliser la représentation octale ou la représentation symbolique pour modifier l'autorisation d'un fichier ou d'un répertoire.

Représentation octale pour les autorisations :

  • Le premier numéro est pour l'utilisateur
  • Le deuxième numéro est pour le groupe
  • Le troisième numéro est pour les autres

Par exemple, donnez lecture, écriture ( 4+2 =6 ) à l'utilisateur et lecture ( 4 ) au groupe et autres.

$ chmod 644 filename

Par exemple, donnez lecture, exécution ( 4 + 1 =5 ) à l'utilisateur et lecture (4 ) au groupe, et rien ( 0 ) aux autres.

$ chmod 540 filename

Par exemple, donnez lecture, écriture ( 4 + 2 =6 ) à l'utilisateur et rien ( 0 ) au groupe, et lecture ( 4 ) aux autres.

$ chmod 604 filename

Umask 022 est responsable de l'autorisation par défaut d'un fichier

La valeur umask par défaut est 0022, qui détermine l'autorisation par défaut pour un nouveau fichier ou répertoire. L'autorisation par défaut pour un répertoire est 0777, pour les fichiers, les autorisations sont 0666 à partir de laquelle la valeur umask par défaut 0022 est déduite pour obtenir les fichiers nouvellement créés ou l'autorisation de répertoire.

L'autorisation finale par défaut pour un fichier est calculée comme indiqué ci-dessous :

  • Autorisation de fichier par défaut :666
  • umask par défaut :022
  • Autorisation finale par défaut du fichier : 644

L'autorisation finale par défaut pour un répertoire est calculée comme indiqué ci-dessous :

  • Autorisation de répertoire par défaut :777
  • Umask par défaut :022
  • Autorisation finale par défaut du répertoire :755

Vous pouvez modifier la valeur umask à la valeur appropriée de ce dont vous avez besoin en fonction du calcul ci-dessus. Par exemple, si vous ne voulez pas que quelqu'un d'autre que l'utilisateur (propriétaire) fasse quoi que ce soit sur le fichier ou le répertoire, vous pouvez donner umask comme 0077.

$ umask 0077

Après cela, si vous créez un fichier ou un répertoire, il n'aura des autorisations que pour l'utilisateur, comme indiqué ci-dessous :

$ > testfile
$ ls -l testfile
-rw------- 1 sathiya sathiya 0 Mar 17 08:23 testfile

Linux
  1. Autorisations Linux :une introduction à chmod

  2. Linux chmod et chown - Comment modifier les autorisations et la propriété des fichiers sous Linux

  3. Linux - Comprendre les autorisations Unix et les types de fichiers ?

  4. Lire et écrire dans le même fichier sous Linux sans l'écraser ??

  5. Autorisations de fichiers sous Linux – Lecture/Écriture/Exécution

9 exemples de commandes chmod rapides sous Linux

Commande Chmod sous Linux (autorisations de fichiers)

Exemples de commandes Linux chmod

Gérer les autorisations de répertoire et de fichier avec chmod Recursive

Questions d'entretien Linux - Autorisations de base sur les fichiers et les répertoires

Bit d'exécution vs de lecture. Comment fonctionnent les autorisations de répertoire sous Linux ?