GNU/Linux >> Tutoriels Linux >  >> Linux

Kernel Panic ne vide aucun fichier journal

Pour être sûr que votre machine génère un fichier "core" lorsqu'une défaillance du noyau se produit, vous devez confirmer les paramètres "sysctl" de votre machine.

IMO, voici les paramètres (minimaux) dans /etc/sysctl.conf :

kernel.core_pattern = /var/crash/core.%t.%p
kernel.panic=10
kernel.unknown_nmi_panic=1

Exécutez sysctl -p après avoir fait des changements dans le /etc/sysctl.conf dossier. Vous devriez probablement aussi mkdir /var/crash s'il n'existe pas déjà.

Vous pouvez tester ce qui précède en générant un vidage manuel à l'aide de SysRq key (la combinaison de touches pour vider core est Alt +SysRq +C ).


Lorsque le noyau panique, cela signifie que quelque chose s'est mal passé dans le noyau. L'écriture de fichiers journaux et de vidages mémoire nécessite l'utilisation des pilotes du périphérique de stockage de blocs (votre disque) et du système de fichiers (l'espace doit être alloué et la taille du fichier journal doit être mise à jour). Étant donné que les services fournis par le noyau sont nécessaires pour écrire des fichiers, et que le noyau sait qu'il est dans un état cassé, il ne peut pas écrire les fichiers ou enregistrer quoi que ce soit, car il n'est plus dans un état sûr, ce faisant toute opération pourrait aggraver les choses et endommager/détruire votre système de fichiers. Vous ne pouvez donc pas laisser le noyau écrire dans le journal ni vider un vidage de mémoire lorsqu'il panique.

Maintenant, ce que vous pouvez faire, si vous le souhaitez, c'est configurer le système avec un noyau de gestion des plantages, qui est un second noyau chargé en mémoire auquel le contrôle peut être transféré si le noyau principal plante. Étant donné que ce noyau a des pilotes et autres, il pourrait vous enregistrer un vidage sur incident. Ce n'est pas une configuration très courante, cependant, et principalement utilisée pour les systèmes haut de gamme qui nécessitent une haute disponibilité et où un plantage est un problème très grave qui doit être étudié.

Voir par exemple l'option crashkernel dans Kernel Crash Dump sur ubuntu.com. (Notez que cette page indique que le mécanisme de vidage sur incident du noyau est activé par défaut, à partir d'Ubuntu 16.04.)

Je crois que le système enregistre en fait le vidage dans une partie réservée de la mémoire, puis redémarre, et le noyau enregistre la mémoire réservée sur le disque au prochain démarrage (puisque le nouveau noyau qui démarre est dans un état sain et peut le faire).


Linux
  1. Comment gérer les fichiers journaux à l'aide de Logrotate sous Linux

  2. Commande pour nettoyer les anciens fichiers journaux ?

  3. Comment utiliser Logrotate pour gérer les fichiers journaux

  4. Supprimer les fichiers journaux à l'aide de la tâche cron

  5. Supprimer tout /var/log ?

Création et débogage de fichiers de vidage Linux

Que faire en cas de panique du noyau Linux

Panique du noyau après la mise à jour vers 4.4.0-108-generic ?

Journalisation Python - vérifier l'emplacement des fichiers journaux ?

Linux Kernel.org trompeur sur la panique du noyau

Supprimer des fichiers avec logrotate