J'ai configuré une configuration CentOS 6.3, sur laquelle le niveau de journal de la console est défini sur 4 et le niveau de journal par défaut est défini sur 4. Je sais que je peux modifier le niveau de journal de la console par défaut en procédant comme suit:
cat /proc/sys/kernel/printk
4 4 1 7
echo 5 > /proc/sys/kernel/printk
cat /proc/sys/kernel/printk
5 4 1 7
Cependant, au redémarrage, le niveau de consignation de la console revient à sa valeur d'origine. Dois-je recompiler le noyau ou existe-t-il un moyen de faire en sorte que la valeur modifiée soit persistante lors du redémarrage.
Dois-je recompiler le noyau,
Non.
ou existe-t-il un moyen de faire en sorte que la valeur modifiée soit persistante lors du redémarrage.
Oui.
Utilisez le paramètre de ligne de commande du noyau loglevel
:
loglevel= All Kernel Messages with a loglevel smaller than the
console loglevel will be printed to the console. It can
also be changed with klogd or other programs. The
loglevels are defined as follows:
0 (KERN_EMERG) system is unusable
1 (KERN_ALERT) action must be taken immediately
2 (KERN_CRIT) critical conditions
3 (KERN_ERR) error conditions
4 (KERN_WARNING) warning conditions
5 (KERN_NOTICE) normal but significant condition
6 (KERN_INFO) informational
7 (KERN_DEBUG) debug-level messages
La liste complète des paramètres possibles sur la ligne de commande du noyau se trouve dans le Linux/Documentation/kernel-parameters.txt
fichier dans l'arborescence source.
En fonction de votre chargeur de démarrage (par exemple Grub ou U-Boot), vous devrez modifier le texte pour ajouter ce nouveau paramètre à la ligne de commande. Utilisation cat /proc/cmdline
pour afficher la ligne de commande du noyau utilisée pour le démarrage précédent.
Addendum
Pour tout afficher, le nombre fourni pour le paramètre loglevel aurait dû être supérieur à KERN_DEBUG.
Autrement dit, vous devez spécifier loglevel=8
.
Ou utilisez simplement le ignore_loglevel
paramètre pour afficher tous les messages du noyau.