La commande chmod

Description

Protection des fichiers et des répertoires

Guide

Chaque fichier est soumis à 2 types de protection:

  1. par niveau;
  2. par accès.

Il y a 4 niveaux de protection:

  • u pour user, i.e. vous;
  • g pour le group, auquel vous appartenez;
  • o pour other, indiquant tous les usagers;
  • a pour all, désignant tout le monde (vous, le groupe et les autres).

Il y a (entre autres) 3 types d'accès:

  • r pour read, permission de lecture;
  • w pour write, permission d'écriture;
  • x pour execute, permission d'exécuter.

Pour chaque fichier/répertoire, il y a donc 3 types d'accès pour chaque niveau. Un répertoire n'ayant aucune protection est présenté de la façon suivante:

drwxrwxrwx

La première lettre 'd' signifie qu'il s'agit d'un répertoire. Cette écriture est explicitée dans le schéma suivant:
Fichier:Chmod0.png
Par défaut sur le réseau du DMS, un nouveau fichier créé par un usager aura les protections suivantes:

-rw-r--r--

i.e. que l'usager peut lire (r) et éditer le fichier (w) mais ne peut l'exécuter (l’absence de la permission x est signalée par un trait '-'). Les groupes et tous les autres usagers du réseau DMS ne peuvent que lire ce nouveau fichier. L'absence de la lettre 'd' signifie simplement que cet item est un fichier.

Il est possible de connaître ces protections à l'aide de la commande ls -al. De plus, pour changer les accès (pour un niveau donné) à un fichier ou même à un répertoire, on utilise la commande chmod dont la syntaxe générale est:

chmod [ugoa][+-=][rwx] nom_de_fichier_ou_répertoire

Exemples

chmod a-wx fichier.tex

enlève à tous les usagers la possibilité de modifier (écrire) et d'exécuter ce fichier.

chmod o+rw gaffe.txt

ajoute la permission aux autres usagers de lire et modifier ce fichier (ce n'est pas à conseiller!).

chmod u=r Final

ne permet à l'usager qu'une permission de lecture du fichier Final.
Remarques:

  1. La notion de protection s'applique tout autant à un fichier standard qu'à un répertoire ou un sous-répertoire.
  2. Il existe une autre syntaxe de chmod utilisant une valeur numérique des niveaux et des types.


Par exemple,

chmod ug=rw toto

est équivalent à

chmod 660 toto

On devrait consulter les manuels de référence pour plus d'informations.

Voir aussi


La dernière modification de cette page a été faite le 19 juin 2013 à 11:03.