GNU/Linux >> Tutoriels Linux >  >> Linux

Exemples de commande "chmod" de base sous Linux

La commande Linux pour modifier les autorisations sur un fichier ou un répertoire est chmod, que nous aimons lire comme mode de changement de fichier. chmod a deux modes de fonctionnement :

  1. mode symbolique
  2. mode numérique/octal

Pour modifier l'autorisation à l'aide de la commande Linux chmod, nous devons suivre une syntaxe et des règles. Comme nous en avons discuté ci-dessus, nous pouvons modifier l'autorisation en utilisant la méthode numérique et alphabétique, ici j'ai expliqué les deux méthodes avec toutes les astuces.

Chemin alphabétique

Pour utiliser cette méthode, vous devez vous souvenir des règles et des alphabets ci-dessous pour une utilisation correcte. Pour modifier l'autorisation de l'utilisateur, vous devez utiliser l'alphabet "u “. Comme ça pour le groupe "g " et pour d'autres c'est "o ".

Comme l'utilisateur, le groupe et les autres, nous devons nous souvenir de certains alphabets pour donner l'autorisation de lecture, d'écriture et d'exécution. Comme pour l'autorisation de lecture, vous devez utiliser l'alphabet "r ", pour Ecrire "w " et pour Exécuter c'est "x ".

Ainsi, la formule d'attribution des autorisations à l'aide de la commande chmod est indiquée ci-dessous :

  • u – Utilisateur
  • g – Groupe
  • o – Autres
  • r – Lire
  • w – Écrire
  • x – Exécuter

Par exemple, si vous souhaitez donner l'autorisation de lecture et d'écriture à l'utilisateur/propriétaire et l'autorisation de lecture au groupe et aux autres en utilisant la méthode alphabétique, la commande serait :

# chmod u+rw,g+r,o+r file_name

Chemin numérique

Pour utiliser cette méthode, vous devez vous souvenir des règles et des chiffres ci-dessous pour une utilisation correcte.

  • 4 - Pour donner l'autorisation de lecture
  • 2 - Donner une autorisation d'écriture
  • 1 - Pour donner l'autorisation d'exécution

Par exemple, si vous souhaitez donner l'autorisation de lecture et d'écriture à l'utilisateur/propriétaire et l'autorisation de lecture au groupe et aux autres en utilisant la méthode numérique, le calcul de la commande serait :

4+2 =6 :Cela ajoutera l'autorisation de lecture et d'écriture à l'utilisateur/propriétaire.
4 :Cela ajoutera l'autorisation de lecture au groupe.
4 :Cela ajoutera l'autorisation de lecture à l'autre.

La commande ressemblerait donc à :

# chmod 644 filename

Vous pouvez vérifier l'autorisation de n'importe quel fichier en utilisant la commande ci-dessous :

# ls -l file.txt 
-rw-rw-r-- 1 geeklab geeklab 0 Feb 20 06:16 file.txt

Et utilisez la commande ci-dessous pour vérifier l'autorisation d'un répertoire :

# ls -ld data/
drwxrwxr-x 2 geeklab geeklab 4096 Feb 20 06:18 data/

Maintenant, la question est de savoir comment identifier les autorisations attribuées à un fichier ou à un répertoire. C'est assez simple. Ci-dessus, j'ai donné deux exemples. Identifions maintenant l'autorisation de file.txt. Si vous remarquez que les propriétés du fichier commencent par "-rw-rw-r–". Ici, nous pouvons identifier l'autorisation attribuée à file.txt.

La section d'autorisation est divisée en 10 bits dont

" ” :Le premier bit est chargé d'identifier s'il s'agit d'un fichier, d'un répertoire ou d'un lien symbolique. Reportez-vous aux symboles ci-dessous :

Symboles importants :

  • :Autorisation attribuée à un fichier
  • d :Autorisation attribuée à un Répertoire
  • l :Autorisation attribuée à un Lien Symbolique
  • Les 2e, 3e et 4e bits sont pour l'autorisation du propriétaire.
  • Les 5e, 6e et 7e bits sont pour l'autorisation du groupe.
  • Les 8e, 9e et 10e bits sont pour l'autorisation des autres.

Pour donner la permission à n'importe quel fichier/répertoire, vous devez utiliser "+ " Symbole. Pour supprimer l'autorisation de n'importe quel fichier/répertoire, vous devez utiliser " ” Symbole.

Exemples d'utilisation de la commande chmod

Attribuer une autorisation à un fichier

Ici, j'ai un fichier nommé file.txt. Donnons l'autorisation de lecture et d'écriture à l'utilisateur/propriétaire à l'aide de la commande chmod.

$ chmod u+rw file.txt
$ ls -l file.txt 
-rw------- 1 geeklab geeklab 0 Feb 20 06:16 file.txt

Par Voie Numérique utilisez la commande ci-dessous :

$ chmod 600 file.txt

Attribuer une autorisation à un répertoire

La commande ci-dessous peut être utilisée pour donner l'autorisation à un répertoire. Ici, j'ai un répertoire nommé data. Donnons donc une autorisation complète (lecture, écriture, exécution) à l'utilisateur/propriétaire. Reportez-vous à la commande ci-dessous.

$ chmod u+rwx data/
$ ls -ld data/
drwx------ 2 geeklab geeklab 4096 Feb 20 06:18 data/

Chemin numérique :

$ chmod 700 data/

Supprimer l'autorisation d'un fichier/répertoire

Supprimez l'autorisation d'un fichier/répertoire à l'aide de la commande Linux chmod ci-dessous. Ici, je supprime l'autorisation de lecture et d'écriture de l'utilisateur/propriétaire.

$ chmod u-rw file.txt 
$ ls -l file.txt 
----rw-r-- 1 geeklab geeklab 0 Feb 20 07:18 file.txt

Donner la permission à tout le monde

Vous pouvez utiliser la commande ci-dessous pour donner la permission à tout le monde. Ici, j'attribue une autorisation complète à tout le monde pour accéder à file.txt. Il existe deux méthodes pour faire la même chose.

Méthode 1

$ chmod a+rwx file.txt 
$ ls -l file.txt 
-rwxrwxrwx 1 geeklab geeklab 0 Feb 20 06:44 file.txt

Méthode 2
Vous pouvez également utiliser la commande Linux chmod ci-dessous pour faire de même.

$ chmod ugo+rwx file.txt 
$ ls -l file.txt 
-rwxrwxrwx 1 geeklab geeklab 0 Feb 20 06:44 file.txt

Chemin numérique :

$ chmod 777 file.txt 

Attribuez différentes autorisations à l'utilisateur, au groupe et aux autres à l'aide de la commande chmod Linux unique

Ici, je supprime l'autorisation d'exécution de l'utilisateur/propriétaire et j'ajoute l'autorisation d'exécution au groupe et aux autres en utilisant une seule commande.

$ chmod u-x,g+x,o+x file.txt
$ ls -l file.txt 
-rw-rwxrwx 1 geeklab geeklab 0 Feb 20 09:40 file.txt

Attribuer une autorisation à un fichier en prenant référence à tout autre fichier

Vous pouvez copier l'autorisation d'un fichier à un autre. Ici, j'ai un fichier nommé a1.txt dont la permission est quelque chose comme "-rw-r–r– ".

$ ls -l a1.txt 
-rw-r--r-- 1 geeklab geeklab 0 Feb 20 07:21 a1.txt

Maintenant, je veux attribuer la même autorisation à mon autre fichier nommé a2.txt. Vous pouvez le faire en utilisant la commande Linux chmod avec l'argument –reference. Reportez-vous à la commande ci-dessous.

$ chmod --reference=a1.txt a2.txt 
$ ls -l a2.txt 
-rw-r--r-- 1 geeklab geeklab 0 Feb 20 07:22 a2.txt

Attribuer une autorisation de manière récursive

J'ai un répertoire nommé data, dans lequel j'ai tellement de fichiers et je veux donner la permission à tous à la fois au lieu de manuellement un par un. Pour cela, vous pouvez utiliser la commande Linux chmod avec l'argument -R. Cela vous aidera à donner la permission de manière récursive.

$ chmod -R ugo+rwx data/

Chemin numérique :

$ chmod -R 777 data/

Attribuer une autorisation avec une sortie détaillée

Vous pouvez obtenir une sortie après avoir attribué une autorisation à tous les fichiers/répertoires en utilisant la commande Linux chmod avec l'argument -v. Reportez-vous à la commande ci-dessous.

$ chmod -v 777 file.txt 
mode of 'file.txt' changed from 0664 (rw-rw-r--) to 0777 (rwxrwxrwx)

Attribuer une autorisation avec sortie (cette commande donnera une sortie uniquement s'il y a des changements)

La commande chmod avec l'argument -c fait également la même chose que la sortie détaillée (c'est-à-dire -v). Mais il n'affichera la sortie que s'il y a des changements dans l'autorisation. Si vous attribuez la même autorisation, aucune sortie ne s'affichera.

$ chmod -c 755 file.txt 
mode of 'file.txt' changed from 0777 (rwxrwxrwx) to 0755 (rwxr-xr-x)

Attribuer une autorisation en ignorant/résolvant les erreurs

Pour éviter toute erreur ou pour rectifier toute erreur lors de l'attribution d'une autorisation, vous pouvez utiliser la commande Linux chmod avec l'argument -f. Reportez-vous à la commande ci-dessous.

$ chmod -f 755 file.txt 

Pour l'aide de la commande chmod

Pour la commande chmod plus d'options et d'arguments, vous pouvez utiliser la commande ci-dessous.

$ chmod --help
Usage: chmod [OPTION]... MODE[,MODE]... FILE...
  or:  chmod [OPTION]... OCTAL-MODE FILE...
  or:  chmod [OPTION]... --reference=RFILE FILE...
Change the mode of each FILE to MODE.
With --reference, change the mode of each FILE to that of RFILE.

  -c, --changes          like verbose but report only when a change is made
  -f, --silent, --quiet  suppress most error messages
  -v, --verbose          output a diagnostic for every file processed
      --no-preserve-root  do not treat '/' specially (the default)
      --preserve-root    fail to operate recursively on '/'
      --reference=RFILE  use RFILE's mode instead of MODE values
  -R, --recursive        change files and directories recursively
      --help     display this help and exit
      --version  output version information and exit

Each MODE is of the form '[ugoa]*([-+=]([rwxXst]*|[ugo]))+|[-+=][0-7]+'.

GNU coreutils online help: [http://www.gnu.org/software/coreutils/]
Full documentation at: [http://www.gnu.org/software/coreutils/chmod]
or available locally via: info '(coreutils) chmod invocation'

Vérifier la version de la commande chmod

Vous pouvez utiliser la commande Linux chmod avec l'argument –version pour vérifier la version de la commande chmod installée.

$ chmod --version
chmod (GNU coreutils) 8.25
Copyright (C) 2016 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later [http://gnu.org/licenses/gpl.html].
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

Written by David MacKenzie and Jim Meyering.


Linux
  1. Exemples de commandes Linux tail

  2. ln Exemples de commandes sous Linux

  3. Exemples de commandes gzip sous Linux

  4. plus d'exemples de commandes sous Linux

  5. head Exemples de commandes sous Linux

Exemples de commandes Linux chmod

Exemples de commande Linux cat

Exemples de commande Linux gzip

Exemples de commandes dumpe2fs sous Linux

Exemples de commandes fsck sous Linux

Exemples de commandes mkfs sous Linux