Linux chmod Example

Dans ce rapide tutoriel, nous allons voir comment nous pouvons utiliser la commande chmod dans une machine Ubuntu pour trouver, modifier et supprimer les permissions de l’utilisateur sur des fichiers spécifiques qui existent sur le système de fichiers de l’utilisateur. Jouons à travers diverses conditions afin que nous puissions maîtriser les commandes chmod de base qui peuvent rendre notre vie quotidienne plus facile avec Ubuntu.

Les permissions Linux

Les permissions Linux sont un grand ensemble de règles qui sont simples à comprendre si nous saisissons les droits de base. Les trois points principaux que nous devons comprendre pour savoir comment les permissions Linux fonctionnent sont :

  • L’élément pour lequel les permissions ont été définies
  • Quelles actions peuvent être effectuées avec une permission
  • Qui peut effectuer quelles actions

Il y a deux éléments de base dans le système de fichiers Linux :

  1. Répertoires
  2. Fichiers

Il y a trois actions qui peuvent être effectuées :

  1. Lecture
  2. Ecriture
  3. Exécution. En dehors de l’exécution de scripts, les mêmes actions sont nécessaires pour créer des fichiers et d’autres dossiers à l’intérieur

Les utilisateurs qui peuvent effectuer ces actions sont :

  1. Propriétaire du fichier
  2. Groupe du propriétaire du fichier
  3. Utilisateur qui n’est pas associé au groupe propriétaire ou au propriétaire lui-même

Pour voir les permissions liées à un fichier, exécutez la commande suivante :

ls -l

Voici ce que nous obtenons en retour avec cette commande :

Recherche des autorisations pour les fichiers

Recherche des autorisations pour les fichiers

Dans la sortie, les 10 premiers caractères présentent les autorisations pour le fichier :

  • Le premier caractère, qui est ‘-‘ dans ce cas signifie qu’il s’agit d’un fichier. Pour un répertoire, cela aurait été un ‘d’.
  • Les neuf caractères suivants représentent les permissions pour le propriétaire, le groupe du propriétaire et les autres, respectivement.

Modification des permissions

La syntaxe pour modifier la permission d’un fichier ressemble à :

chmod permissions fichier …

Représentation octale pour les permissions

Nous pouvons présenter les permissions comme un nombre octal. Par exemple, pour définir des permissions de lecture, d’écriture & d’exécution pour le propriétaire, des permissions de lecture & d’écriture pour son groupe, et aucune permission pour les autres, sur un fichier hello.txt, nous exécuterons la commande suivante :

sudo chmod 760 hello.txt

Une fois que nous exécutons la commande ci-dessus et que nous essayons de lire un fichier avec un compte non propriétaire en utilisant la commande suivante:

sudo -u notowner-user more hello.txt

Nous obtiendrons l’erreur suivante:

hello.txt : Permission refusée

Mais d’où vient ce nombre ? Chaque chiffre de ce nombre représente un ensemble de permissions. Voyons comment ils ont été dérivés :

  • 0 : Signifie aucune permission
  • 1 : Signifie la permission d’exécution
  • 2 : Signifie la permission d’écriture
  • 4 : Signifie la permission de lecture

Pour attribuer les permissions de lecture, d’écriture & d’exécution au propriétaire, nous lui avons attribué le numéro 7(= 4 + 2 + 1). Comprenons mieux ceci dans un tableau de chiffres :

.

.

.

.

Nombre Binaire Lecture Écriture Exécution
0 000 NON NON NON
1 001 NO NO YES
2 010 NO OUI NON
3 011 NON OUI OUI
4 100 OUI NON NON
5 101 OUI NON OUI
6 110 OUI OUI NO
7 111 OUI OUI OUI

Le tableau ci-dessus est beaucoup plus clair dans ce que chacun représente en termes de permissions de fichiers.

Représentation des caractères pour les permissions

Nous pouvons présenter les permissions comme un nombre octal. Par exemple, pour définir des permissions de lecture, d’écriture & d’exécution pour le propriétaire, des permissions de lecture & d’écriture pour son groupe, et aucune permission pour les autres, sur un fichier hello.txt, nous exécuterons la commande suivante :

sudo chmod u=rwe,g=rw,o-rwx hello.txt

Pour ajouter des permissions à un utilisateur existant, nous pouvons également faire :

sudo chmod g+w hello.txt

Ici, la permission d’écriture était attribuée au groupe d’utilisateurs du propriétaire du fichier.

Modifications récursives des permissions

Nous pouvons également modifier les permissions pour le fichier contenu dans un répertoire spécifique avec une seule commande. Pour modifier les permissions de chaque fichier et dossier d’un répertoire fourni en une seule fois, utilisez sudo chmod avec -R:

sudo chmod 777 Directory/*

Nous pouvons voir la sortie suivante qui reflète clairement le changement des permissions des fichiers :

Modification récursive des permissions de fichiers

Modification récursive des permissions de fichiers

Conclusion

Dans cette leçon, nous avons regardé comment nous pouvons modifier les permssions d’un fichier et si besoin, le faire de manière récursive. Nous avons compris les concepts de base derrière la façon dont les permissions de Linux qui peut nous aider dans notre travail quotidien beaucoup.

Laisser un commentaire