Differences

This shows you the differences between two versions of the page.

Link to this comparison view

explication_du_chmod_linux [2011/05/19 12:09] (current)
pouys created
Line 1: Line 1:
 +===== Droits d'​accès sur les fichiers ou répertoires (Chmod) =====
 +Le système de permis de Linux est basé sur un modèle d'​utilisateurs / groupes qui sont devenus la base principale de la sécurité sous Linux, les utilisateurs et les groupes bénéficient de droits à des fichiers et des répertoires.
 +
 +C'est l'une des fonctions qui font que Linux soi presque immunisé aux Virus d'​ordinateur,​ les virus doivent être capables d'​écrire sur des fichiers pour pouvoir les infecter et être exécuté d'une certaine manière pour pouvoir infecter d'​autres fichiers, avec le système de permis de Linux les virus ne peuvent pas se copier à toutes les fichiers, si l'​utilisateur qui exécute le virus manque d'​autorisations sur le reste du système, le virus ne pourra pas se reproduire.
 +
 +En Linux nous avons trois différents droits de fichier : 
 +
 +  * **r : read** (lecture) : Quand l'​autorisation de lecture sera actif sur un répertoire il signifie qu'on pourra énumérer les fichiers stockés dans ce répertoire,​ si elle est assignée à des fichiers on pourra lire son contenu.
 +  * **w : write** (écriture) : Lorsque l'​écriture est activée sur un répertoire,​ vous pouvez créer et supprimer des fichiers dans le répertoire,​ s'il est activé pour les fichiers il signifie qu'on pourra modifier son contenu.
 +  * **x : execute** (exécution) : Si la permission d'​exécution est activé sur un répertoire,​ signifie que l'​utilisateur peut exercer d'​autres fonctions dans le répertoire et s'il est actif sur les fichiers, signifie que le fichier pourra être exécute depuis la ligne de commandes.
 +
 +Pour afficher les autorisations de fichiers et de répertoires,​ il est nécessaire d'​exécuter la commande suivante :
 +<​code>​
 +ls -l
 +</​code>​
 +Cette commande nous donnera un résultat similaire à:
 +<​code>​
 +-rw-r--r-- ​ 1 root    root          0 2008-10-23 10:02 interfaces
 +-rw-r--r-- ​ 1 root    root        128 2008-10-23 09:52 interfaces2
 +drwxr-xr-x ​ 2 dvazart dvazart ​   4096 2008-10-31 16:25 Modèles
 +drwxr-xr-x ​ 2 dvazart dvazart ​   4096 2008-09-22 13:16 Musique
 +-rw-r--r-- ​ 1 root    root    3860754 2008-07-21 11:14 nxclient_3.2.0-14_i386.deb
 +drwx------ ​ 2 dvazart dvazart ​   4096 2008-10-21 11:38 PDF
 +drwxr-xr-x ​ 2 dvazart dvazart ​   4096 2008-09-22 13:16 Public
 +-rwx------ ​ 1 root    root       1634 2008-10-22 17:54 readline
 +-rwx------ ​ 1 root    root       1266 2008-10-22 17:41 readline2
 +---------- -- ----    ----      ----- ---------- ----- ---------
 +    |       ​| ​  ​| ​      ​| ​         |       ​| ​       |       V
 +    |       ​| ​  ​| ​      ​| ​         |       ​| ​       |  nom des fichiers
 +    |       ​| ​  ​| ​      ​| ​         |       ​| ​       V
 +    |       ​| ​  ​| ​      ​| ​         |       ​| ​     heure
 +    |       ​| ​  ​| ​      ​| ​         |       V
 +    |       ​| ​  ​| ​      ​| ​         |     date
 +    |       ​| ​  ​| ​      ​| ​         V
 +    |       ​| ​  ​| ​      ​| ​       taille
 +    |       ​| ​  ​| ​      V
 +    |       ​| ​  ​| ​   groupe
 +    |       ​| ​  V
 +    |       | propriétaire
 +    |       V
 +    |     liens
 +    V
 +  DROITS
 +
 +</​code>​
 +Les droits sont assignés en groupes de trois et correspondent à : 
 +  * **Propriétaire** (owner) : Propriétaire de des fichiers ou répertoires.
 +  * **Groupe** (group) : groupe auquel appartient le propriétaire du fichier.
 +  * **Autres** (others) : les utilisateurs d'​autres groupes. ​
 +<​code>​
 +- rw- r-- r--
 +d rwx --- ---
 +d rwx r-x r-x
 +- rwx --- ---
 +- rwx --- ---
 +d rwx rwx rwx
 +- rwx --- ---
 +d rwx r-x r-x
 +  --- --- ---
 +   ​| ​  ​| ​  |
 +   ​| ​  ​| ​   `---> Autres
 +   ​| ​   `------->​ Groupe
 +    `----------->​ Propriétaire
 +</​code>​
 +=====Commandes=====
 +Linux dispose de 3 commandes pour modifier les autorisations,​ le propriétaire et le groupe d'un fichier ou un répertoire,​ respectivement:​
 +  * **chmod** : Permet de changer les permissions du fichier ou du répertoire.
 +<​code>​
 +$ chmod [autorisations] [fichier / répertoire] [options]
 +</​code>​
 +  * **chown** : Est utilisée pour changer le propriétaire du fichier ou de répertoire.
 +<​code>​
 +chown [nouveau propriétaire] [fichier / répertoire] [options]
 +</​code>​
 +  * **chgrp** : Pour changer le groupe de fichiers ou de répertoires.
 +<​code>​
 +chgrp [groupe] [fichier / répertoire] [options]
 +</​code>​
 +=====Changer les permissions en utilisant des caractères.=====
 +<​code>​
 +             ​Symbole ​                    ​Description
 +
 +Identités u C'​est le propriétaire du fichier ou le répertoire. ​
 + g C'​est le groupe du fichier ou du répertoire. ​
 + o D'​autres utilisateurs,​ le reste du monde. ​
 + a Tout le monde - propriétaire,​ groupe et autres.
 +
 +Permis r Accès de lecture.
 + w Accès en écriture.
 + x Accès d'​exécution.
 +
 +Actions + Ajouter permis.
 + - Élimine les permis.
 + = Le seul permis.
 +</​code>​
 +
 +====Exemples====
 +<​code>​
 +      Commande ​                            ​Description ​                        ​Résultats
 +
 +chmod u+rwx photo1.png Ajouter toutes les autorisations pour rwx------
 + le propriétaire.
 +
 +chmod g+x photo1.png Ajouter la permission d'​exécution pour rwx-x---
 + le groupe.
 +
 +chmod o+r photo1.png Ajouter la permission de lecture pour rwx-xr--
 + les autres utilisateurs.
 +
 +chmod u-rw photo1.png Supprimer les permissions de lecture et --x-xr---
 + écriture pour le propriétaire.
 +
 +chmod a=r photo1.png Nous établissons lecture comme seule r--r--r--
 + autorisation pour les 3 groupes.
 +
 +chmod u+rx,o+x photo1.png Nous ajoutons les autorisations lecture ---------
 + et exécution pour le propriétaire et 
 + exécution pour les autres. ​
 +</​code>​
 +
 +=====Changer les permissions en utilisant des chiffres.=====
 +Chaque autorisation ont assigné une valeur, même quand l'​autorisation ne sera pas active. Pour pouvoir utiliser les chiffres nous devrons tenir compte le tableau suivant avec leurs valeurs respectives :
 +<​code>​
 +      Valeur ​  ​Permis ​                 Description
 +      ​
 + 0 --- Zéro signifie que pas de permis ont été attribués.
 + 1 --x On a seulement assigné celui d'​exécution.
 + 2 -w- Seulement autorisation d'​écriture.
 + 3 -wx Autorisations écriture et exécution.
 + 4 r-- Seulement autorisation de lecture.
 + 5 r-x Autorisations lecture et exécution.
 + 6 rw- Autorisations lecture et écriture.
 + 7 rwx Autorisations de lecture, écriture et exécution.
 +</​code>​
 +
 +Les autorisations par chiffres sont assignées dans des groupes de 3 (propriétaire,​ groupe, autres), il n'est pas possible d'​assigner seulement pour un ou deux d'​entre eux.
 +
 +====Exemples====
 +<​code>​
 +      Commande ​       Résultats ​                       Description
 +
 +chmod 600 photo1.png ​ rw------- ​  Seul le propriétaire a le droit de lire et d'​écrire.
 +chmod 644 photo1.png ​ rw-r--r-- ​  Seul le propriétaire a la permission de lire et d'​écrire mais le groupe et les autres ne peuvent que lire.
 +chmod 700 photo1.png ​ rwx------ ​  Seul le propriétaire a le droit de lire, d'​écrire et d'​exécuter le fichier.
 +chmod 751 photo1.png ​ rwxr-xr-x ​  Le propriétaire a le droit de lire, d'​écrire et d'​exécuter,​ le groupe peut lire et exécuter et les autres ne peuvent que exécuter.
 +chmod 711 photo1.png ​ rwx--x--x ​  Le propriétaire a les droits lecture, écriture et exécution ; le groupe et les autres peuvent seulement exécuter.
 +chmod 666 photo1.png ​ rw-rw-rw- ​  Tout le monde peut lire et écrire dans les fichiers.
 +chmod 777 photo1.png ​ rwxrwxrwx ​  Tout le monde peut lire, écrire et exécuter.
 +</​code>​