kdump è un meccanismo avanzato di crash dump. Quando abilitato, il sistema viene avviato dal contesto di un altro kernel. Questo secondo kernel riserva una piccola quantità di memoria e il suo unico scopo è catturare l'immagine del core dump in caso di crash del sistema. Poiché essere in grado di analizzare il core dump aiuta in modo significativo a determinare la causa esatta dell'errore di sistema, si consiglia vivamente di abilitare questa funzione. Questa nota spiega come configurare, testare e utilizzare il servizio kdump in CentOS/RHEL 6.
Per utilizzare il servizio kdump, devi disporre di kexec-tools pacchetto installato.
# yum install kexec-tools
Per configurare la quantità di memoria riservata al kernel kdump, modifica il file /boot/grub/grub.conf e aggiungi il parametro crashkernel=[size]M (o crashkernel=auto) all'elenco delle opzioni del kernel .E poi riavvialo per renderlo effettivo.
Ad esempio:
# vi /boot/grub/grub.conf ... title Oracle Linux Server-uek (2.6.39-200.24.1.el6uek.x86_64) root (hd0,0) kernel /vmlinuz-2.6.39-200.24.1.el6uek.x86_64 ro root=/dev/mapper/vg_ol6desktop-lv_root crashkernel=128M initrd /initramfs-2.6.39-200.24.1.el6uek.x86_64.img ...
# reboot
Per configurare kdump, dobbiamo modificare il file di configurazione /etc/kdump.conf . L'opzione predefinita è archiviare il file vmcore in /var/crash/ directory del file system locale. Per modificare la directory locale in cui salvare il core dump, rimuovere il segno hash ("#") dall'inizio della #path /var/crash line e sostituire il valore con il percorso di directory desiderato.
Ad esempio:
path /usr/local/cores
Facoltativamente, puoi anche salvare il core dump direttamente in una partizione non elaborata.
Ad esempio:
raw /dev/sdb4
Per archiviare il dump su una macchina remota utilizzando il protocollo NFS, rimuovere il segno hash ("#") dall'inizio della riga #net my.server.com:/export/tmp e sostituire il valore con un nome host valido e percorso della directory.
Ad esempio:
net my.server.com:/export/cores
Per ridurre le dimensioni del file di dump di vmcore, kdump ti consente di specificare un'applicazione esterna per comprimere i dati e, facoltativamente, di escludere tutte le informazioni irrilevanti. Attualmente, l'unico core collector completamente supportato è makedumpfile.
Per abilitare il core collector, modificare il file di configurazione /etc/kdump.conf , rimuovere l'hash ("#") dall'inizio del #core_collector makedumpfile -c –message-level 1 -d 31 riga e modifica le opzioni della riga di comando come descritto di seguito.
Ad esempio:
core_collector makedumpfile -c
Per impostazione predefinita, quando viene catturato il crash del kernel, viene montato il file system root e viene eseguito /sbin/init. Per modificare questo comportamento, apri il file di configurazione /etc/kdump.conf, rimuovi il segno cancelletto ("#") dall'inizio della riga della shell #default e sostituisci il valore con un'azione desiderata come descritto.
Ad esempio:
default halt
Controlla e assicurati che la riga di comando del kernel includa la configurazione di kdump e che la memoria sia riservata per il crash del kernel:
# cat /proc/cmdline ro root=/dev/mapper/vg_ol6desktop-lv_root crashkernel=128M
Imposta il servizio kdump può essere avviato al riavvio del sistema.
# chkconfig kdump on
Per avviare il servizio nella sessione corrente, utilizzare il comando seguente:
# service kdump start No kdump initial ramdisk found. [WARNING] Rebuilding /boot/initrd-2.6.39-200.24.1.el6uek.x86_64kdump.img Starting kdump: [ OK ]
Per testare la configurazione, riavvia il sistema con kdump abilitato e assicurati che il servizio sia in esecuzione.
Ad esempio:
# service kdump status Kdump is operational
Quindi digita i seguenti comandi al prompt della shell:
# echo 1 > /proc/sys/kernel/sysrq # echo c > /proc/sysrq-trigger
Ciò forzerà il crash del kernel Linux e il file address-YYYY-MM-DD-HH:MM:SS/vmcore verrà copiato nella posizione che hai selezionato nella configurazione (cioè in /var/crash/ da predefinito)
CentOS / RHEL 5:Come configurare kdumpCentOS / RHEL 7:Come configurare kdump
Come configurare Kdump su SuSE Linux Enterprise System 10 e 11