Aller au contenu principal

Comment Linux fonctionne, sans commande

Résumé : cinq notions suffisent pour comprendre 90 % de Linux : le noyau, le shell, l'arborescence de fichiers, les processus et les permissions. Cette leçon les explique une par une, visuellement, sans vous demander de taper quoi que ce soit.


1. Le noyau — l'orchestre invisible

Vous avez déjà croisé le noyau à la leçon 2. Petit rappel : c'est le seul programme autorisé à parler directement au matériel. Toute application (navigateur, base de données, jeu) doit passer par lui pour lire un fichier, écrire sur un disque, ou envoyer un paquet réseau.

Cette centralisation garantit deux choses fondamentales :

  • Un programme qui plante n'entraîne pas l'ordinateur — parce qu'il n'a jamais eu les clés du matériel.
  • Deux programmes ne peuvent pas se marcher dessus — le noyau arbitre l'accès à la mémoire.

2. Le shell — votre interlocuteur privilégié

Le shell est le programme qui interprète vos ordres et les transmet au noyau. Sur Linux, le shell le plus courant s'appelle Bash (Bourne Again Shell). Il en existe d'autres (Zsh, Fish, Sh) mais Bash reste la référence.

Le shell vous permet de :

  • Exécuter des programmes (nginx, python, docker…).
  • Manipuler des fichiers (cp, mv, rm, ls…).
  • Chaîner des commandes avec des tubes (|) pour combiner leur puissance.
  • Écrire des scripts — des fichiers texte contenant une série de commandes à rejouer automatiquement.

Le shell est la vraie signature de Linux. Beaucoup de tâches d'administration qui prendraient des heures de clics sur Windows se font en une ligne de shell sur Linux.


3. L'arborescence de fichiers — un seul arbre pour tout

Sur Windows, vous avez plusieurs racines : C:\, D:\, E:\. Sur Linux, il n'y en a qu'une seule, appelée simplement /. Tout le reste — disques externes, clés USB, partages réseau, périphériques — vient s'y accrocher en tant que sous-dossiers.

Deux règles à retenir :

  • La racine / n'a pas de lettre. C'est juste /.
  • Le principe « tout est fichier » de la philosophie Unix s'applique ici : un disque dur, un port USB, la mémoire vive, l'état du noyau — tout apparaît comme des fichiers dans cette arborescence. C'est cette uniformité qui rend Linux si programmable.

Emplacements les plus utiles à connaître :

DossierContient
/home/aliceLe dossier personnel de l'utilisatrice Alice
/etc/nginx/nginx.confLa configuration du serveur web Nginx
/var/log/Les journaux (logs) du système et des applications
/tmp/Fichiers temporaires, effacés au redémarrage
/usr/bin/Les programmes disponibles pour tous les utilisateurs

4. Les processus — les programmes en cours d'exécution

Un processus est un programme en train de tourner. Chaque processus a :

  • Un identifiant unique appelé PID (Process ID).
  • Un propriétaire (l'utilisateur qui l'a lancé).
  • Une quantité de mémoire allouée.
  • Un processus parent qui l'a créé.

Point à retenir : sur un serveur Linux typique, il y a en permanence une centaine à plusieurs milliers de processus qui tournent en parallèle. Le noyau les orchestre en donnant à chacun une tranche de temps de processeur à tour de rôle, tellement rapidement que l'utilisateur a l'illusion qu'ils tournent tous simultanément.

Une commande célèbre (top ou htop) permet de voir cette danse en direct.


5. Les permissions — trois questions, trois réponses

Chaque fichier et chaque dossier appartient à un utilisateur et un groupe, et porte trois permissions définies pour trois audiences distinctes.

Les trois audiences

Les trois permissions

Pour chacune des trois audiences ci-dessus, on définit trois permissions :

PermissionSur un fichierSur un dossier
Lecture (r)Ouvrir et lire le contenuLister les fichiers qu'il contient
Écriture (w)Modifier ou effacer le contenuCréer, renommer, supprimer des fichiers dans le dossier
Exécution (x)Lancer le fichier comme un programmeEntrer dans le dossier

Exemple concret

Un fichier /etc/passwd (liste des utilisateurs) a typiquement les permissions suivantes :

  • Propriétaire (root) : lecture + écriture.
  • Groupe (root) : lecture seule.
  • Autres utilisateurs : lecture seule.

Autrement dit, tout le monde peut consulter la liste des utilisateurs, mais seul l'administrateur peut la modifier. C'est ce système simple et rigoureux qui rend Linux très difficile à compromettre quand il est bien configuré.


6. Le compte root — le super-utilisateur

Sur Linux, il existe un compte spécial appelé root (aussi appelé super-utilisateur ou administrateur). Il a tous les droits : il peut lire, écrire, effacer n'importe quel fichier, arrêter n'importe quel processus, modifier le noyau.

Règle absolue en production : on ne se connecte jamais directement en root. On se connecte comme un utilisateur normal, et on demande ponctuellement les droits root avec la commande sudosubstitute user do »). Cette pratique laisse une trace claire de qui a fait quoi, et minimise les erreurs catastrophiques du type « j'ai effacé toute la production en tapant la mauvaise commande ».


7. Le workflow complet, en une seule image

Voici tout ce que vous avez appris, sur un même schéma vertical.

Ce déroulé se répète des milliards de fois par jour sur chaque serveur Linux dans le monde. Comprendre ces cinq briques, c'est comprendre 90 % de ce qui se passe derrière chaque application web, chaque conteneur, chaque déploiement cloud.


Retenir en 30 secondes

  • Noyau = seul programme qui parle au matériel. Il arbitre tout.
  • Shell (Bash) = votre interlocuteur. Il interprète vos ordres et les transmet au noyau.
  • Arborescence = une seule racine /, tout est un fichier dans cet arbre.
  • Processus = un programme en cours d'exécution, avec un PID, un propriétaire, une mémoire.
  • Permissions = lecture, écriture, exécution, pour trois audiences (propriétaire, groupe, autres).
  • Root = tous les droits. À utiliser uniquement ponctuellement via sudo.

Suivant : Cas d'usage réels →