Recherche de site Web

Comprendre les permissions Linux : les différences entre chmod et chown


Si vous commencez tout juste à vous familiariser avec les permissions de fichiers sur un système Linux, les commandes chmod et chown seront votre point de départ pour accorder ou révoquer des permissions de fichiers pour les comptes d’utilisateurs. chmod et chown sont des commandes complètement différentes, mais elles vont de pair lorsqu’il s’agit de modifier les permissions de fichiers sur le système de fichiers Linux. Le résumé de base est que chown peut changer le propriétaire d’un fichier, et chmod peut changer les permissions du fichier, mais cette explication ne fait qu’effleurer la surface.

Pour avoir la possibilité de modifier entièrement les permissions d’un fichier, il sera nécessaire de maîtriser à la fois les commandes chmod et chown. Mais ne vous inquiétez pas, ni l’un ni l’autre n’est si compliqué, et les deux nécessitent juste un peu de contexte pour se faire une idée.

Dans ce tutoriel, nous allons expliquer les différences entre les commandes chmod et chown sur un système Linux. Vous apprendrez la syntaxe des commandes à l’aide d’exemples pour les deux commandes et verrez comment les utiliser conjointement l’une avec l’autre afin d’obtenir les autorisations et les paramètres de sécurité appropriés que vous souhaitez pour les fichiers sur votre système Linux. Rejoignez-nous ci-dessous pour en savoir plus.

Dans ce tutoriel, vous allez apprendre :

  • Comment changer la propriété d’un fichier avec la commande chown
  • Comment modifier les autorisations de fichiers avec la commande chmod
  • Quelle est la différence entre les commandes Linux chmod et chown ?

Commandes Linux chown vs. chmod

Les commandes Linux chmod et chown sont les principaux outils utilisés pour contrôler les permissions de fichiers sous Linux. Ils vont tous deux de pair et doivent être utilisés conjointement pour contrôler efficacement les utilisateurs qui ont la possibilité d’utiliser certains fichiers.

Il existe trois autorisations principales sous Linux :

  • Lire – la capacité d’ouvrir un fichier et de lire son contenu
  • Écrire – la possibilité de modifier et d’enregistrer les modifications apportées aux fichiers
  • Exécuter – la capacité d’exécuter un fichier, tel qu’un script Bash

Ces trois types d’autorisations peuvent ensuite être délégués à trois types d’utilisateurs différents :

  • Propriétaire – l’utilisateur ou le propriétaire du fichier
  • Groupe : groupe d’utilisateurs disposant d’autorisations sur le fichier
  • Autre – tous les autres utilisateurs qui ne sont ni le propriétaire ni le groupe

Disons que nous avons le fichier suivant :


ls -l example_file.txt 
-rwxrw-r-- 1 linuxconfig admins 22 Oct  2 18:00 example_file.txt

Le résultat nous indique que :

  • Le propriétaire du fichier est linuxconfig, avec les permissions de lecture, d’écriture et d’exécution
  • Le groupe du fichier est constitué d’administrateurs, avec des autorisations de lecture et d’écriture
  • Tous les autres utilisateurs n’ont que des autorisations de lecture sur le fichier

Voyons maintenant comment utiliser ces deux commandes pour modifier les utilisateurs qui peuvent interagir avec nos fichiers sous Linux.

Comment utiliser chown

Afin d’attribuer des autorisations à des utilisateurs individuels ou à un groupe d’utilisateurs, nous devons d’abord utiliser la commande chown pour spécifier qui doit être le propriétaire et le groupe du fichier. Une fois que nous avons appliqué ces paramètres, nous pouvons modifier les autorisations du propriétaire et du groupe avec chmod.

  1. Commençons par définir le propriétaire du fichier example_file.txt à l’utilisateur linuxconfig :

    
    sudo chown linuxconfig:linuxconfig example_file.txt
    

    Notez que nous avons utilisé la commande sudo ici, qui est nécessaire pour changer la propriété des fichiers. Nous avons également utilisé la syntaxe linuxconfig :linuxconfig pour changer à la fois l’utilisateur et le groupe simultanément. C’est effectivement la même chose que de ne pas donner d’autorisations de groupe, puisque le groupe linuxconfig ne contient qu’un seul utilisateur – linuxconfig.

  2. Ou si nous voulons configurer à la fois le propriétaire linuxconfig et les administrateurs de groupe, nous pouvons exécuter :

    
    sudo chown linuxconfig:admins example_file.txt
    
  3. La commande chgrp peut être utilisée si vous souhaitez uniquement modifier le groupe d’un fichier, et non le propriétaire. Dans cet exemple, nous changeons le groupe en admins :

    
    sudo chgrp admins example_file.txt
    

Comment utiliser chmod

Maintenant que le propriétaire et le groupe sont correctement définis, nous pouvons utiliser la commande chmod pour modifier les permissions de fichier dont nous avons besoin pour le propriétaire, le groupe et les autres utilisateurs.

La commande chmod peut accepter de nombreuses syntaxes et options, et il serait hors du cadre de ce tutoriel de les couvrir toutes. Au lieu de cela, consultez notre tutoriel de commande chmod pour une liste de divers exemples. Dans cette section, nous allons juste couvrir les bases afin de vous aider à comprendre en quoi le chmod est différent de chown.

La commande suivante modifiera les autorisations pour le propriétaire, le groupe et les autres utilisateurs :


chmod 760 example_file.txt
  • Le 7 est équivalent aux autorisations de lecture, d’écriture et d’exécution, et accordera ces autorisations au propriétaire
  • Le 6 équivaut aux permissions de lecture et d’écriture, et les accordera au groupe
  • Le 0 équivaut à aucune autorisation et les attribue à tous les autres utilisateurs

De cette façon, nous pouvons voir comment les commandes chown et chmod se complètent pour obtenir les autorisations dont nous avons besoin pour chaque fichier. La commande chmod contrôle les permissions pour tous les utilisateurs, et la commande chown nous permet d’attribuer des permissions de manière plus granulaire en configurant les comptes propriétaire et de groupe.

Réflexions finales

Dans ce tutoriel, nous avons découvert les différences entre les commandes chown et chmod sur un système Linux. Ces deux commandes se complètent pour donner aux utilisateurs la possibilité de déléguer les autorisations de lecture, d’écriture et d’exécution aux utilisateurs du système. Ces deux commandes doivent être comprises et maîtrisées pour empêcher les fichiers d’être consultés par des utilisateurs non intentionnels.

Articles connexes: