Quando il mio kernel si avvia, oltre alle utili informazioni importanti, stampa molte informazioni di debug, come
....
kernel: [0.00000] BIOS-e820: [mem 0x0000000000000000-0x000000000009d3ff] usable
kernel: [0.00000] BIOS-e820: [mem 0x000000000009d400-0x000000000009ffff] reserved
kernel: [0.00000] BIOS-e820: [mem 0x00000000000e0000-0x00000000000fffff] reserved
...
kernel: [0.00000] MTRR variable ranges enabled:
kernel: [0.00000] 0 base 0000000000 mask 7E00000000 write-back
...
kernel: [0.00000] init_memory_mapping: [mem 0x00100000-0xcf414fff]
kernel: [0.00000] [mem 0x00100000-0x001fffff] page 4k
kernel: [0.00000] [mem 0x00200000-0xcf3fffff] page 2M
kernel: [0.00000] [mem 0xcf400000-0xcf414fff] page 4k
....
kernel: [0.00000] ACPI: XSDT 0xD8FEB088 0008C (v01 DELL CBX3 01072009 AMI 10013)
kernel: [0.00000] ACPI: FACP 0xD8FFC9F8 0010C (v05 DELL CBX3 01072009 AMI 10013)
....
kernel: [0.00000] Early memory node ranges
kernel: [0.00000] node 0: [mem 0x00001000-0x0009cfff]
kernel: [0.00000] node 0: [mem 0x00100000-0xcf414fff]
kernel: [0.00000] node 0: [mem 0xcf41c000-0xcfdfcfff]
....
kernel: [0.00000] ACPI: Local APIC address 0xfee00000
kernel: [0.00000] ACPI: LAPIC (acpi_id[0x01] lapic_id[0x00] enabled)
kernel: [0.00000] ACPI: LAPIC (acpi_id[0x02] lapic_id[0x02] enabled)
e molto altro ancora.
Non vedo come questo possa essere utile a chiunque diverso da uno sviluppatore / debugger del kernel.
Ho scoperto che posso sbarazzarmi di questi usando loglevel=5
come parametro di avvio. I log di debug non vengono più stampati sul terminale, ma sono ancora dentro dmesg
e dentro syslog
.
E 'possibile diminuire il livello di dettaglio del registro di avvio a livello globale, in modo che dmesg
e syslog
non sono invaso da queste informazioni inutili?
Sto usando il kernel autocompilato 3.18
SOLUZIONE ACCETTATA
Si scopre, mettendo le seguenti righe per /etc/rsyslog.conf
risolvere il problema per me:
kern.debug /dev/null
& ~
syslog
e dmesg
sono inondati con i registri di debug inutili, e così facendo gli avvisi reali e gli errori più facili da trascurare. Inoltre, dmesg
e syslog
dovrebbe essere letto dagli umani (cioè l'amministratore). Questo è il loro intero scopo.