Motifs et types de redémarrage
Redémarrer pas à pas : l'échelle du plus petit redémarrage suffisant
Face à un problème, on avance marche par marche : on observe, on nomme le motif (mise à jour, fuite mémoire, plantage matériel, optimisation), puis on choisit le redémarrage le plus petit qui règle ce motif, du simple service jusqu'à la coupure de courant, en connaissant le risque de chaque marche.
Objectifs
- Suivre une procédure en six étapes avant tout redémarrage : observer, classer, choisir, préparer, exécuter, vérifier.
- Relier chacun des quatre motifs (mise à jour, fuite mémoire, plantage matériel, optimisation) à des indices concrets sous Linux et sous Windows.
- Situer les redémarrages sur une « échelle » : service, espace utilisateur, noyau, machine entière, coupure électrique ; et y rattacher les types soft, hard, planifié et forcé.
- Estimer par le calcul le moment où une fuite mémoire va saturer une machine, pour planifier un redémarrage.
- Lire les traces laissées par un redémarrage pour savoir s'il était voulu ou subi.
1. La procédure en six étapes
Un redémarrage remet un logiciel ou une machine dans un état initial connu. C'est un outil puissant, mais il coupe le service et, mal choisi, il fait perdre des données. La règle de base de ce cours est simple :
Pour l'appliquer, on suit toujours les mêmes étapes :
- Observer : relever les symptômes et les mesures (mémoire, journaux, messages d'erreur, depuis quand la machine tourne).
- Classer le motif : mise à jour, fuite mémoire, plantage matériel ou optimisation.
- Choisir la marche : le niveau de redémarrage le plus bas qui traite ce motif (partie 3).
- Préparer : prévenir les utilisateurs, enregistrer le travail, choisir l'heure creuse, noter l'état de départ.
- Exécuter : lancer la commande choisie.
- Vérifier : le problème a-t-il disparu ? Tous les services sont-ils revenus ? La cause est-elle corrigée ou seulement repoussée ?
flowchart TD
A[Observer les symptomes] --> B[Classer le motif]
B --> C[Choisir la plus basse marche utile]
C --> D[Preparer et prevenir]
D --> E[Executer]
E --> F{Probleme regle}
F -- oui --> G[Noter la cause et la corriger]
F -- non --> H[Monter d une marche]
H --> D
Ibrahim constate qu'un poste « rame ». Quelle est la première étape de la procédure ?
2. Étape 2 : classer le motif à partir des indices
On distingue quatre grands motifs. Pour chacun, il faut savoir le reconnaître et savoir si le redémarrage règle la cause ou s'il ne fait que la cacher.
2.1 Mise à jour
Un fichier sur le disque a été remplacé, mais l'ancienne version est encore chargée en mémoire. Pour une application ou une bibliothèque, redémarrer les programmes qui l'utilisent suffit. Pour le noyau du système, il faut charger le nouveau noyau, donc redémarrer au moins le noyau.
- Linux :
uname -raffiche le noyau en cours d'exécution, à comparer avec le noyau installé. Sous Debian et Ubuntu, l'outilneedrestartliste les services qui utilisent encore d'anciennes bibliothèques et propose de les redémarrer. - Windows : après certaines mises à jour, Windows Update indique qu'un redémarrage est requis.
2.2 Fuite mémoire
Un programme réserve de la mémoire sans jamais la rendre. Sa consommation monte avec le temps, jusqu'à saturer la machine (ralentissements, utilisation du swap, puis arrêt de processus par le système).
- Linux :
free -hpour la mémoire globale ;ps -o pid,rss,etime,cmd -p 1234pour suivre la mémoire résidente (RSS, en kio) et la durée de vie du processus 1234. - Windows : Gestionnaire des tâches, onglet « Détails », colonne de mémoire ; ou en PowerShell
Get-Process | Sort-Object WS -Descending | Select-Object -First 5.
Le redémarrage du seul processus fautif libère sa mémoire. Mais il ne corrige rien : la fuite recommencera. C'est une mesure d'attente, à accompagner d'un signalement du bogue.
2.3 Plantage ou défaut matériel
La machine se fige, s'éteint ou redémarre seule. Les causes possibles : pilote défectueux, barrette de mémoire, disque, surchauffe, alimentation électrique instable (fréquente avec les coupures de courant).
- Linux :
journalctl -k -b -1affiche les messages du noyau du démarrage précédent (à condition que le journal soit conservé sur disque) ;last -x rebootliste les redémarrages. - Windows : Observateur d'événements, journal « Système » (voir l'exemple 2).
Ici, le redémarrage remet la machine en marche mais ne répare pas le matériel. Si les plantages se répètent, il faut tester le composant suspect.
2.4 Optimisation
On redémarre volontairement pour appliquer un réglage (paramètre du noyau, nouvelle configuration d'un service), pour repartir d'une mémoire « propre », ou dans le cadre d'une maintenance régulière. C'est le seul motif où l'on choisit librement le moment : le redémarrage est alors planifié.
Le logiciel de caisse occupe 1 Go le matin et 3 Go le soir, puis redevient normal après son redémarrage. Quel est le motif ?
3. Étape 3 : l'échelle des redémarrages
Quand un ordinateur démarre, il passe par une chaîne d'étapes : le micrologiciel (firmware : BIOS ou UEFI) initialise le matériel, le chargeur d'amorçage lance le noyau, le noyau démarre l'espace utilisateur (gestionnaire de services, sessions), qui lance enfin les services (serveur web, base de données, logiciel de caisse). Chaque marche de l'échelle relance une partie plus ou moins longue de cette chaîne.
Marche 1 : on relance seulement le service fautif ; le reste de la machine continue de tourner.
Marche 2 : on relance tout l'espace utilisateur (services et sessions) en gardant le même noyau.
Marche 3 : on charge directement un noyau, sans repasser par le firmware ni le chargeur.
Marche 4 : redémarrage logiciel complet ; le système ferme tout proprement, puis la machine repart du firmware.
Marche 5 : coupure de l'alimentation ou bouton reset ; tout repart de zéro, mais sans aucune fermeture propre.
3.1 Les marches et leurs commandes
| Marche | Ce qui redémarre | Linux (systemd) | Windows | Risque principal |
|---|---|---|---|---|
| 1. Service | Un seul programme | sudo systemctl restart nom.service | Console « Services » ou Restart-Service nom (PowerShell, en administrateur) | Courte coupure de ce seul service |
| 2. Espace utilisateur | Tous les services, même noyau | sudo systemctl soft-reboot (systemd 254 ou plus récent) | Pour les programmes d'un utilisateur : fermer la session et se reconnecter | Ne charge pas un nouveau noyau |
| 3. Noyau sans firmware | Noyau et tout ce qui est au-dessus | sudo systemctl kexec (outil kexec-tools installé) | Pas d'équivalent courant | Certains pilotes supportent mal l'absence de réinitialisation du matériel |
| 4. Machine entière, logiciel (soft) | Toute la chaîne, après fermeture propre | sudo systemctl reboot ou sudo reboot | shutdown /r /t 0 ou Restart-Computer | La coupure la plus longue des redémarrages propres |
| 5. Coupure brutale (hard) | Toute la chaîne, sans fermeture | Bouton reset, appui long sur le bouton d'alimentation, coupure électrique | Idem | Données non enregistrées perdues, système de fichiers à vérifier |
3.2 Où se placent les quatre types de redémarrage ?
- Soft (doux) : le système d'exploitation ferme proprement programmes et fichiers avant de relancer (marches 1 à 4). Les données en mémoire tampon sont écrites sur le disque.
- Hard (dur) : l'alimentation est coupée ou le matériel réinitialisé sans que le système soit prévenu (marche 5). Ce qui n'était pas encore écrit sur le disque est perdu ; au démarrage suivant, Linux peut lancer
fscket Windowschkdskpour réparer le système de fichiers. - Planifié : un redémarrage soft déclenché à une heure choisie, avec un avertissement. Linux :
sudo shutdown -r 22:00 "Maintenance à 22 h"ousudo shutdown -r +15(dans 15 minutes), annulation parsudo shutdown -c. Windows :shutdown /r /t 900 /c "Maintenance dans 15 minutes", annulation parshutdown /a. - Forcé : un redémarrage logiciel qui n'attend pas que les applications acceptent de se fermer. Windows : option
/f(elle est appliquée automatiquement dès que le délai/test supérieur à 0, d'où l'intérêt de prévenir les utilisateurs). Linux :sudo systemctl reboot --forcetue les processus sans passer par l'arrêt ordonné des services, puis démonte les disques. C'est plus sûr qu'un hard, mais des travaux non enregistrés peuvent être perdus.
Le noyau Linux vient d'être mis à jour sur le serveur. Quelle est la marche la plus basse qui charge le nouveau noyau ?
4. Exemples résolus
Exemple 1 : quand la fuite mémoire va-t-elle saturer la machine ?
Cherche d'abord : calcule la vitesse de la fuite, puis le temps avant saturation.
sudo systemctl restart caisse.service, puis on contrôle que la mémoire du service est revenue vers 1,2 Go et que les caisses répondent. On signale enfin le bogue à l'éditeur du logiciel : le redémarrage n'a fait que remettre le compteur à zéro.Exemple 2 : redémarrage voulu ou subi ?
Cherche d'abord, en sachant que : l'événement 1074 est écrit quand un utilisateur ou un programme (par exemple Windows Update) demande un arrêt ou un redémarrage ; l'événement 6008 signale que l'arrêt précédent était inattendu ; l'événement 41 indique que le système a redémarré sans s'être arrêté proprement.
Voir la solution
Pas de 1074 : personne n'a demandé de redémarrage, ni un utilisateur ni une mise à jour. Les événements 41 et 6008 montrent que la machine s'est arrêtée sans fermeture propre : c'est un redémarrage hard subi. Motif probable : coupure de courant ou défaut matériel (alimentation, surchauffe, mémoire).
Étapes suivantes : vérifier si d'autres postes ont redémarré à la même heure (si oui, la coupure électrique est l'explication la plus simple, et un onduleur est la vraie solution) ; sinon, surveiller la température et tester la mémoire de ce poste. Sous Linux, la même enquête se fait avec last -x reboot et journalctl -b -1 -e (fin du journal du démarrage précédent).
Exemple 3 : serveur figé, quelle marche ?
Cherche d'abord : peut-on éviter la marche 5 ?
fsck pourra être nécessaire.systemctl --failed pour repérer les services en échec, puis journalctl -b -1 -e pour chercher la cause du blocage. Sans cause trouvée, le blocage reviendra.Sur une autre machine, la mémoire d'un service passe de 1,0 Go à 1,6 Go en 2 h, et il reste 3,0 Go disponibles. Dans combien de temps la machine sera-t-elle saturée, si la fuite reste régulière ?
5. Erreurs fréquentes
- Redémarrer la machine pour un seul service : on coupe tous les autres services sans raison. Monter l'échelle une marche à la fois.
- Croire qu'un redémarrage répare : pour une fuite mémoire ou un défaut matériel, il repousse le problème. Il faut ensuite corriger le logiciel ou changer la pièce.
- Confondre forcé et hard : le forcé reste logiciel (le système écrit encore ses fichiers et démonte ses disques), le hard coupe tout sans prévenir.
- Penser que
systemctl soft-rebootcharge le nouveau noyau : il ne relance que l'espace utilisateur ; après une mise à jour du noyau, il fautsystemctl kexecou un redémarrage complet. - Planifier sans prévenir : sous Windows, un délai
/tsupérieur à 0 force la fermeture des applications ; les utilisateurs doivent être avertis (option/cpour le message). - Oublier la vérification : un redémarrage sans contrôle de
systemctl --failed(ou des services Windows) peut laisser un service important arrêté.
6. Récapitulatif
- Procédure : observer, classer le motif, choisir la marche, préparer, exécuter, vérifier.
- Quatre motifs : mise à jour (le redémarrage charge la nouvelle version), fuite mémoire (il remet le compteur à zéro), plantage matériel (il relance sans réparer), optimisation (il applique un réglage, au moment choisi).
- Cinq marches : service, espace utilisateur, noyau sans firmware, machine entière, coupure brutale.
- Soft = fermeture propre ; hard = coupure sans fermeture ; planifié = soft à une heure annoncée ; forcé = logiciel sans attendre les applications.
- Une fuite régulière se prévoit : \( t = \dfrac{\text{mémoire disponible}}{\text{vitesse de la fuite}} \).
Teste tes connaissances sur ce cours
Crée ton compte gratuitement pour accéder aux quiz associés et suivre ta progression.
