Apprenez en lisant dans l'ordre

Les permissions — les lire et chmod

Apprends à lire la notation rwx et les nombres octaux dans ls -l, à réécrire les permissions avec les modes symbolique et numérique de chmod, et la syntaxe de chown — tout en pratique dans un terminal en navigateur.

Lire les permissions — ls -l et l'octal

Les permissions sont un réglage qui dit qui peut faire quoi sur un fichier ou un répertoire.

Quand tu lances ls -l, chaque ligne commence par 10 caractères comme -rwxr-xr-x.

Le premier caractère est le type (- pour un fichier, d pour un répertoire), et tu lis les 9 suivants par groupes de trois.

Les 9 caractères forment trois groupes depuis la gauche : propriétaire, groupe et autres.

Chaque groupe est dans l'ordre r (lecture), w (écriture), x (exécution) — une lettre si c'est autorisé, ou - sinon.

r=4, w=2, x=1 correspondent à trois bits binaires, et tu additionnes les positions 4, 2, 1.

En additionnant un groupe, rwx vaut 7, r-x vaut 5, et r-- vaut 4 ; aligne trois groupes et tu obtiens une notation octale comme 755 ou 644.

SymboleSignificationr4+w2+x1Nombre
---Rien d'autorisé00
--xExécution seule11
r--Lecture seule44
r-xLecture + exécution4+15
rw-Lecture + écriture4+26
rwxAccès complet4+2+17
OctalNotation rwxUsage
644rw-r--r--Fichiers ordinaires
755rwxr-xr-xScripts et répertoires
700rwx------Clés privées, répertoires personnels
600rw-------Fichiers de configuration
Correspondance rwx vers octal
propriétairegroupeautresrwx = r4+w2+x1r-x = r4+x1r-x = r4+x1= 7= 5= 5755
rwxr-xr-x se lit propriétaire 7, groupe 5, autres 5 — c'est-à-dire 755.

Les permissions ici vs sur un serveur de production

Cet environnement en navigateur tourne en root seul, donc même si tu changes les bits avec chmod, root ignore les restrictions d'accès et Permission denied n'apparaît pas.

Dans ce cours tu apprends à lire les bits et la syntaxe de chmod / chown.

Tu peux réellement voir l'affichage de ls -l changer.

Sur un serveur de production multi-utilisateur, ces réglages de permissions fonctionnent comme contrôle d'accès.

touch report.txt        # crée le matériel
ls -l report.txt        # lis la notation rwx en tête
ls -l                   # liste le répertoire pour voir aussi d

① Crée un fichier de travail avec touch report.txt.

② Lance ls -l report.txt et lis la notation rwx en début de ligne.

③ Découpe les 9 caractères que tu as lus en groupes de trois et convertis-les en un nombre octal à 3 chiffres en additionnant r=4, w=2, x=1.

④ Liste tout le répertoire courant avec ls -l et observe la différence du premier caractère entre fichiers et répertoires. (Lance-le correctement et une explication apparaîtra.)

Linux console
0 / 3 exécutée(s)
Loading Linux Terminal...

Changer les permissions — chmod

chmod change les permissions.

Il y a deux façons de l'écrire : le mode symbolique, où tu spécifies avec des symboles comme chmod +x file pour « ajouter l'exécution », et le mode numérique, où tu spécifies propriétaire, groupe et autres ensemble avec un nombre octal à 3 chiffres comme chmod 644 file.

ModeComment l'écrireExempleSignification
Symboliquechmod [ugoa][+-=][rwx]chmod +x fileAjoute l'exécution
Numériquechmod NNN filechmod 644 fileRègle les trois groupes d'un coup
Le mode symbolique et le mode numérique de chmod
chmod +x run.shajoute x (exécution)pour tout le mondechmod 644 data.txtrègle sur rw-r--r--(rw / r / r)chmod 700 secret.txtrègle sur rwx------(propriétaire seul, complet)
Le symbole +x ajoute l'exécution, et les nombres 644 / 700 règlent les trois groupes d'un coup.
touch script.sh             # crée le matériel
chmod +x script.sh          # ajoute l'exécution
ls -l script.sh             # vérifie que x a été ajouté

① Crée un fichier de travail avec touch script.sh.

② Ajoute la permission d'exécution avec chmod +x script.sh, et confirme avec ls -l script.sh qu'un x a été ajouté à la notation en tête.

③ Ensuite lance chmod 644 script.sh et confirme avec ls -l script.sh que la notation est passée à rw-r--r--.

Linux console
0 / 4 exécutée(s)
Loading Linux Terminal...

Le propriétaire uniquement — chmod 700

chmod 700 donne rwx au propriétaire et ne donne rien au groupe ni aux autres.

C'est le réglage typique pour ce à quoi tu ne veux que personne d'autre que le propriétaire touche, comme des clés privées ou des répertoires personnels.

L'affichage devient rwx------.

① Crée un fichier de travail avec touch secret.txt.

② Lance chmod 700 secret.txt.

③ Avec ls -l secret.txt, confirme que la notation est passée à rwx------ et que les champs du groupe et des autres sont tous -.

Linux console
0 / 3 exécutée(s)
Loading Linux Terminal...

Changer le propriétaire — chown

chown est la commande qui change le propriétaire d'un fichier ou d'un répertoire.

La syntaxe est chown user file, et pour changer aussi le groupe tu écris chown user:group file.

Ici le : sépare l'utilisateur et le groupe : avant le : c'est le propriétaire, et après c'est le groupe.

Comment l'écrireSignificationExemple
chown user fileChange le propriétairechown alice file.txt
chown user:group fileChange le propriétaire et le groupechown alice:dev file.txt

Changer le propriétaire est par nature une opération de root, utilisée sur les serveurs multi-utilisateurs pour confier un fichier à un nouveau propriétaire.

Il n'y a pas d'occasion de la lancer dans cet environnement, donc lis et apprends simplement la forme de la syntaxe dans l'exemple suivant.

chown alice file.txt        # change le propriétaire en alice
chown alice:dev file.txt    # propriétaire alice, groupe dev
QUIZ

Vérification des connaissances

Répondez à chaque question une par une.

Question 1Quel est l'octal du -rwxr-xr-x affiché en tête de ls -l ?

Question 2Que fait chmod +x script.sh ?

Question 3Quelle est la notation après avoir lancé chmod 700 secret.txt ?