Connexion
Abonnez-vous

Linux : le composant systemd se dote d’un écran bleu de la mort

LoL Micro$oft

Linux : le composant systemd se dote d’un écran bleu de la mort

La version 255 du composant systemd, trouvé dans la grande majorité des distributions Linux, intègre un élément qui peut prêter à sourire : l’équivalent de l’écran bleu de Windows. L’occasion de revenir sur ce grand symbole du plantage et son intérêt.

Le 08 décembre 2023 à 16h33

L’écran bleu est souvent appelé BSOD, pour « bleu screen of death » (écran bleu de la mort). Pourquoi cette appellation ? Parce que depuis bien longtemps, sous Windows, son apparition signifie un plantage si important du système que la seule solution est de redémarrer le système.

Sa signification n’a pas changé, même aujourd’hui. Sa forme a évolué plusieurs fois, mais il est toujours bleu et a toujours la même signification : une erreur si grave que tout s’est bloqué. Le fait qu’il soit devenu bien plus rare qu’avant n’y fait rien.

Un outil d’information et de diagnostic

Ces dernières années, et dans l’immense majorité des cas, l’écran bleu est provoqué par un pilote de mauvaise qualité. Avec le temps et le passage des versions successives de Windows, les pilotes ont vu leur champ d’actions resserré sur l’espace utilisateur, ne laissant disponible l’espace noyau que dans quelques scénarios, dont le plus connu est le pilote graphique. La qualité générale s’est en outre beaucoup améliorée, grâce à une infrastructure plus stricte.

Avoir un écran bleu aujourd’hui est rare et toujours synonyme d’un sérieux problème. Il peut survenir à cause d’un pilote, d’un matériel défectueux, d’une tentative ratée d’overclocking ou encore du dépassement d’un certain seuil de température par le processeur.

Cela étant, le BSOD n’a pas que vocation à annoncer une mauvaise nouvelle : il fournit également des informations. La première est bien sûr d’indiquer qu’un gros problème s’est produit et que la session est devenue inutilisable. La deuxième qu’un vidage de la mémoire est en cours (indiqué par un pourcentage). Ce « dump » pourra se retrouver ensuite dans le journal des évènements. C’est une source d’informations précieuse dans les dépannages, car le fichier DMP contient les conditions ayant mené au crash.

Deux autres informations sont présentes : un code QR (apparu avec Windows 10) et un code d’arrêt. Le premier renvoie vers une page du site de Microsoft sur les écrans bleus, le second donne le type d’erreur ayant provoqué le plantage.

C'est quoi systemd ?

Avant de plonger dans la version 255 de systemd, présentons brièvement ce composant – ou plutôt cette série de composants – que l’on trouve dans la plupart des distributions Linux. Toutes les Debian, Ubuntu, Fedora ou encore Arch Linux s’en servent depuis longtemps.

Dans les grandes lignes, systemd est responsable de nombreux processus impliqués dans le démarrage de l’ordinateur, dont l’initialisation, c’est-à-dire le tout premier programme à être exécuté. Il fournit de nombreux outils et capacités comme la gestion des dépendances entre services, le chargement en parallèle de ces derniers, la journalisation des évènements ou encore la gestion des connexions des périphériques.

Notez que systemd est tellement vaste dans ses possibilités qu’il est entouré depuis longtemps d’une polémique sur son utilisation. Linuxfr.org y avait consacré un vaste dossier en 2015.

Un BSOD dans systemd

Et voilà qu’arrive la version 255 de systemd, avec à son bord l’équivalent d’un BSOD. Et l’équipe de développement ne s’en cache pas, puisque le nouveau composant est sobrement appelé « systemd-bsod ».

L’objectif est simple : tout évènement atteignant un niveau de journal LOG_EMERG affichera ses informations en plein écran. « EMERG » signifie ici « emergency » (urgence). Le niveau en question signifie que le système est devenu inutilisable. Des informations techniques sont donc fournies, y compris un code QR renvoyant vers de plus amples informations.

Cet ajout a été pensé comme une nouveauté utile, même si elle peut prêter à sourire. Il s’agit cependant d’une fonction présentée comme expérimentale et qui pourrait donc évoluer dans les prochains mois. La version 255 étant finale, elle sera intégrée – elle ou une mouture ultérieure – dans la prochaine vague de distributions prévues dans la première moitié de 2024, notamment les futures Ubuntu et Fedora.

Si cet ajout est vite devenu le plus visible, il est loin d’être le seul. Certains sont d’ailleurs beaucoup plus utiles, comme une meilleure prise en charge des puces TPM et du chiffrement intégral des disques, la possibilité d’utiliser l’hibernation avec des partitions Btrfs, ou encore l’utilisation des PIDFD au lieu des PID pour la plupart des processus internes. On trouvera la liste complète sur le dépôt GitHub officiel, mais Phoronix a trié les points les plus importants.

Commentaires (43)

Vous devez être abonné pour pouvoir commenter.

Abonnez-vous
votre avatar
Le "Bleu screen of death" c'est comme le "Rouge ring of death" de la Xbox 360 ?

Blague a part c'est vraiment le pire truc pour dénicher la panne.

Edit: C'est normal qu'il n'y ai plus de bouton pour les smileys et édition de text (gras/italic/etc...) ?
votre avatar
C’est normal on n’est plus sur le même site. Il faut laisser le temps aux devs de trouver le bon plugin wordpress pour le faire.
C’est très compliqué car plus on ajoute des plugins wordpress plus on augmente le surface d’attaque du site 😞
votre avatar
Ça dépend. S'il se contente d'afficher en overlay d'une session X/wayland les messages que le noyau afficherait sinon uniquement sur la console texte, je vois bien l'utilité.
votre avatar
Mais que reste-t'il à Windows?

Blague à part, c'est juste systemd, l'équivalent du BSOD c'est le kernel panic. Et là mieux vaut avoir un log sur port série actuellement, les kernels panics ne sont plus affichés sur les ordis de bureau (cause: pilotes graphiques, mode graphiques, ...). On a juste un figeage, parfois n'importe quoi à, l'écran mais plus aucune info sur l'écran.
votre avatar
Le kernel panic est affiché sur la première console texte. Si tu es en mode graphique, tu ne le vois pas. Mais il est bel et bien affiché.
votre avatar
Oui, mais on ne peut plus y accéder en kernel panic, donc débogage série.
votre avatar
Ctrl+Shift+F1 ?
votre avatar
Non, plus rien ne fonctionne à ce moment (peut-être même pas le port série), Ctrl-Alt-F1 ne sert à rien.
votre avatar
"fatal error"
votre avatar
Le créateur de systemd est Lennart Poettering qui a été embauché par Microsoft en 2022 … hasard ?
votre avatar
Oh purin j'ai cru à une blague mais non. x_x
votre avatar
Et pour les plus anciens un Guru meditation qui m'a bien fait rager quelques fois ^^
votre avatar
ça c'est quand on bosse avec un système qui se veut multitâche préemptif mais qui est totalement dépourvu de protection de la mémoire... ça ne peut finir en crash général
votre avatar
Il y avait aussi les bombes sur le TOS d'Atari.

Et le nombre de bombe permet de connaître la raison du plantage :
https://www.atariarchives.org/cfn/13/0222.php

Si j'avais su ça à l'époque, ça m'aurait bien aidé :-D
votre avatar
Je pensais justement à ces bombes ! Par contre je n'avais aucune idée que leur nombre avait un sens. En même temps j'avais dix ans, quand y avait les bombes je râlais puis rebootais et c'est tout :p
votre avatar
ils auraient pu faire un effort... même vmware a mis une couleur différente du bleu (voir PSOD) :D
votre avatar
J'espère que ces bsod seront moins mystiques que les codes d'erreur de windows. En effet, je n'ai jamais réussi à obtenir une quelconque aide des codes d'erreur windows, que soit en bsod ou plus récemment pour des tentatives de passer de win10 à win11.

On trouve en effet un nombre impressionnant de recherche sur les significations des codes windows, sans jamais de réponse.
votre avatar
Pareil pour moi, aujourd'hui encore j'ignore comment trouver la réponse.
votre avatar
"L'oberservateur d'évènements" de Windows est une bonne piste pour voir ce qui a provoqué le freez du système !
votre avatar
Je suppose qu'il parviens parfois à fournir une réponse.
Je n'ai jamais eu cette chance.
votre avatar
Entre le message de l'écran bleu (et surtout son code erreur)+observateur d'évènement+minidump, j'ai traqué le problème jusqu'à une fuite mémoire dans un pilote de stockage vmware.
Donc si, ça marche.
votre avatar
Ok, perso je ne comprend toujours pas comment tu fais ça.
votre avatar
De la patience, de la lecture, un poil l'envie de se documenter et de découvrir :)
votre avatar
C'est pourtant ce que je faisais à l'époque, j'ai sans doute manqué une étape cruciale.
votre avatar
C'est surtout la faute aux sites qui pullulent et te proposent de résoudre le problème en installant leur logiciel d'optimisation de windows.
votre avatar
Systemd 255 a été installé ce matin sur mes ordis sous Arch Linux, mais je n’ai appris que cet après-midi pour ce nouveau composant “systemd-bsod”.
votre avatar
😳 Tu n'as pas lu l'intégralité des release note avant d'appliquer les mises à jour ?
😁
votre avatar
La plupart du temps, je me contente de valider ce que me propose Pacman (enfin, Yay, pour signaler aussi les MAJ venues d’AUR), c’est tout. C’est ultra-rare qu’il me faille faire autre chose que d’appuyer sur Entrée pour confirmer l’installation des paquets indiqués.

En fait et en général, je regarde les changelogs après, quand il y a des paquets mis à jour pour lesquels ça m’intéresse d’en connaître les changements.
votre avatar
Citation d'un grand homme : "Windows is a cancer that attaches itself in an intellectual property sense to everything it touches"
(pas garantie à 100 %)
votre avatar
C'est un titre que j'aurais bien vu pour un 1er avril.
votre avatar
Pourquoi cette appellation ? Parce que depuis bien longtemps, sous Windows, son apparition signifie un plantage si important du système que la seule solution est de redémarrer le système.
Il me semblait qu’au début, il fallait réinstaller le système (quand ce n’était pas carrément lié à une panne matérielle).

Du coup le « de la mort » aujourd’hui n’est plus si pertinent (encore que la dernière fois que j’ai vu des BSoD, sous Windows 10, si un redémarrage fonctionnait, il revenait systématiquement après quelque temps, et même une réinstallation n’y avait rien fait, donc quelque part c’est pertinent) [et non la panne était pas matérielle, Linux tournait nickel sur la même machine].

Oh et l’indication d’erreur disait juste « arrêt imprévu », et les logs pareil. Jamais vu un système aussi muet. Comment voulez-vous déboguer dans ces conditions.
votre avatar
À l’époque des Windows 3.x et 9x/ME (donc pas la branche NT actuelle), les écrans bleus n’obligeaient pas forcément à redémarrer : un simple retrait sauvage de clef USB pouvait en déclencher un, mais c’était juste pour signaler que la clef n’avait pas été débranchée correctement. Un simple appui sur Échap ramenait sur le Bureau. Mais c’est vrai que, la plupart du temps, on avait plutôt des messages d’« erreur fatale 0E » (le chiffre zéro, pas la lettre O) et des gels complets de l’OS, obligeant à appuyer sur le bouton Reset de toute manière.

Les écrans bleus des Windows NT, eux, provoquent de toute façon l’arrêt de l’OS et n’offrent pas d’autre choix que de réamorcer (d’ailleurs, c’est ce qu’ils font par défaut après le dump, si on n’a pas décoché la case demandant un redémarrage automatique). Même couleur de fond (je croyais qu’ils devaient être noirs sous Windows 11, et verts pour les préversions Insiders), mais pas les mêmes infos, ni le même fonctionnement.
votre avatar
Une clef USB sous Windows 3, t'es sûr ? Le support USB est arrivé dans 95 OSR2.

Sous Windows 3, il y avait très peu de crashes qui faisaient rebooter la machine ; le plus souvent, ça faisait juste planter Windows et tu revenais sous DOS. Ça revient au même qu'un reboot, puisque toutes tes applis étaient dégommées quand même.
votre avatar
Je parlais de manière générale pour l’ensemble Windows 3.x et 9x/ME. En l’occurrence, j’ai eu le cas des clefs USB causant un écran bleu si débranchées sauvagement sur Windows ME (tu me diras qu’un plantage de ce dernier lui arrivait plus souvent qu’à son tour, mais j’ai eu la chance d’en avoir connu deux qui ne plantaient pas trop, sûrement parce que préinstallés).
votre avatar
L'équivalent du BSOD sous windows 3.1 / dos : Un message en popup (ou prompt sous dos) avec 3 options [Abort], [Retry], [Ignore]
Je pense sérieusement qu'il n'a jamais rien codé derrière [Retry] et [Ignore] :)
[R] faisait rien, [I] non plus, [A] faisait rebooter sous dos (revenir à dos sous windows)
ça a été repris sous windows 95 par un écran bleu :
- Entrée (retry),
- Echap (ignore),
- Ctrl+Alt+Suppr (Abort)

un jour un dev a dû réaliser qu'il n'y avait aucun code derrière Entrée et Echap, il a virer ce faux choix et le BSOD moderne était né ne proposant que de redémarrer avec Ctrl+Alt+Suppr :)
votre avatar
« L'équivalent du BSOD sous windows 3.1 / dos : Un message en popup (ou prompt sous dos) avec 3 options [Abort], [Retry], [Ignore] »

Non : ce dont tu parles, c’était juste le signe avant-coureur de l’écran bleu (qui apparaissait souvent après). Mais l’écran bleu n’est pas apparu avec Windows 95 : il date au plus tard de Windows 2 (sorti en 1987).
votre avatar
Le dump donne des infos qui peuvent aider pour trouver l'origine du problème.
J'ai quasi-jamais de BSOD mais les très rare fois où j'en ai, j'utilise WhoCrashed qui permet de lire le fichier dump.
votre avatar
Il manque quand même le principal : une capture d'écran !!! :D
votre avatar
Oui. Je n'en ai trouvé dans aucun article de presse ni sur le dépôt du projet...
votre avatar
idem
votre avatar
ici : https://www.reddit.com/r/linux/comments/18e6q0r/systemds_new_blue_screen_of_death_systemdbsod/
votre avatar
Ah, merci ! Désolé je n'avais pas eu de notification pour la réponse.
votre avatar
Vivement que cette merde saute des distributions GNU/Linux.
Peut-être qu'un jour le projet Debian reviendra à la raison…

Linux : le composant systemd se dote d’un écran bleu de la mort

  • Un outil d’information et de diagnostic

  • C’est quoi systemd ?

  • Un BSOD dans systemd

Fermer