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 :
| Dossier | Contient |
|---|---|
/home/alice | Le dossier personnel de l'utilisatrice Alice |
/etc/nginx/nginx.conf | La 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 :
| Permission | Sur un fichier | Sur un dossier |
|---|---|---|
| Lecture (r) | Ouvrir et lire le contenu | Lister les fichiers qu'il contient |
| Écriture (w) | Modifier ou effacer le contenu | Créer, renommer, supprimer des fichiers dans le dossier |
| Exécution (x) | Lancer le fichier comme un programme | Entrer 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 sudo (« substitute 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 →