GNU/Linux >> Znalost Linux >  >> Linux

Jak nakonfigurovat kdump v Oracle Enterprise Linux (OEL 5,6)

Když je povolen mechanismus kdump crash dumpingu, systém se zavede z kontextu jiného jádra. Toto druhé jádro si vyhrazuje malé množství paměti a jeho jediným účelem je zachytit obraz výpisu jádra pro případ, že dojde k pádu systému.

Možnost analyzovat výpis jádra významně pomáhá určit přesnou příčinu selhání systému, a proto důrazně doporučujeme mít tuto funkci povolenou. Tato kapitola vysvětluje, jak nakonfigurovat, testovat a používat službu kdump v Red Hat Enterprise Linux, a poskytuje stručný přehled toho, jak analyzovat výsledný výpis jádra pomocí nástroje pro ladění pádů.

Instalace služby kdump

Chcete-li ve svém systému používat službu kdump, ujistěte se, že máte kexec-tools balíček nainstalován. Chcete-li tak učinit, zadejte do příkazového řádku jako root následující příkaz:

# yum install kexec-tools

Konfigurace služby kdump

Konfigurace využití paměti

Chcete-li nakonfigurovat množství paměti vyhrazené pro jádro kdump, upravte soubor /boot/grub/grub.conf soubor a přidejte crashkernel=[velikost]M nebo crashkernel=auto . Všimněte si, že volba crashkernel=auto vyhrazuje paměť pouze v případě, že fyzická paměť systému je rovna nebo větší než:

  • 2 GB na 32bitových a 64bitových architekturách x86

Ukázkový soubor /boot/grub/grub.conf

# grub.conf generated by anaconda
#
# Note that you do not have to rerun grub after making changes to this file
# NOTICE:  You have a /boot partition.  This means that
#          all kernel and initrd paths are relative to /boot/, eg.
#          root (hd0,0)
#          kernel /vmlinuz-version ro root=/dev/sda3
#          initrd /initrd
#boot=/dev/sda
default=0
timeout=5
splashimage=(hd0,0)/grub/splash.xpm.gz
hiddenmenu
title Red Hat Enterprise Linux Server (2.6.32-220.el6.x86_64)
        root (hd0,0)
        kernel /vmlinuz-2.6.32-220.el6.x86_64 ro root=/dev/sda3 crashkernel=128M
        initrd /initramfs-2.6.32-220.el6.x86_64.img

Konfigurace typu cíle

Když je zachycen pád jádra, výpis jádra může být buď uložen jako soubor v místním souborovém systému, zapsán přímo do zařízení nebo odeslán přes síť pomocí protokolu NFS (Network File System) nebo SSH (Secure Shell). V tuto chvíli lze nastavit pouze jednu z těchto možností a výchozí možností je uložit soubor vmcore do /var/crash/ adresář místního souborového systému. Chcete-li to změnit, jako root otevřete konfigurační soubor /etc/kdump.conf v textovém editoru a upravte možnosti, jak je popsáno níže.

Chcete-li změnit místní adresář, do kterého se má výpis jádra uložit, odstraňte znak hash („#“) ze začátku řádku #path /var/crash a nahraďte hodnotu požadovanou cestou k adresáři. Volitelně, pokud chcete zapsat soubor na jiný oddíl, postupujte stejným způsobem také s řádkem #ext4 /dev/sda3 a změňte typ systému souborů i zařízení (název zařízení, štítek systému souborů, a UUID jsou všechny podporovány). Například:

ext3 /dev/sda4
path /usr/local/cores

Chcete-li výpis zapsat přímo do zařízení, odstraňte znak hash („#“) ze začátku řádku #raw /dev/sda5 a nahraďte hodnotu požadovaným názvem zařízení. Například:

raw /dev/sdb1

Chcete-li výpis uložit na vzdálený počítač pomocí protokolu NFS, odstraňte znak hash („#“) ze začátku řádku #net my.server.com:/export/tmp a nahraďte hodnotu platným názvem hostitele. a cestu k adresáři. Například:

net penguin.example.com:/export/cores

Chcete-li výpis uložit na vzdálený počítač pomocí protokolu SSH, odstraňte znak hash („#“) ze začátku řádku #net [email protected] a nahraďte hodnotu platným uživatelským jménem a názvem hostitele. . Například:

net [email protected]

Při přenosu souboru jádra do vzdáleného cíle přes SSH musí být soubor jádra pro přenos serializován. Tím se vytvoří soubor vmcore.flat v adresáři /var/crash/ na cílovém systému, který je nečitelný obslužným programem pro zhroucení. Chcete-li převést vmcore.flat na soubor výpisu, který je čitelný při selhání, spusťte v cílovém systému jako root následující příkaz:

# /usr/sbin/makedumpfile -R */tmp/vmcore-rearranged* < *vmcore.flat*

Konfigurace Core Collector

Chcete-li zmenšit velikost souboru výpisu vmcore, kdump vám umožňuje zadat externí aplikaci (tj. kolektor jádra) pro kompresi dat a volitelně vynechat všechny irelevantní informace. V současnosti je jediným plně podporovaným sběratelem jader makedumpfile.

Chcete-li povolit sběratel jader, jako root otevřete konfigurační soubor /etc/kdump.conf v textovém editoru, odstraňte znak hash (“#”) ze začátku #core_collector makedumpfile -c --message-level 1 - d 31 řádek a upravte možnosti příkazového řádku, jak je popsáno níže.

Chcete-li povolit kompresi souboru výpisu, přidejte parametr -c. Například:

core_collector makedumpfile -c

Chcete-li odstranit nulové i volné stránky, použijte následující:

core_collector makedumpfile -d 17 -c

Úplný seznam dostupných voleb naleznete v manuálové stránce makedumpfile.

Změna výchozí akce

Ve výchozím nastavení, když kdump selže při vytvoření výpisu jádra, je připojen kořenový souborový systém a je spuštěn /sbin/init. Chcete-li toto chování změnit, jako uživatel root otevřete konfigurační soubor /etc/kdump.conf v textovém editoru, odstraňte znak hash (“#”) ze začátku #default řádku shellu a nahraďte hodnotu požadovanou akcí. jak je popsáno níže:

Podporované akce

Možnost Popis
restartovat Restartujte systém a během procesu ztratíte jádro.
zastavit Zastavte systém.
vypnutí Vypněte systém.
shell Spusťte relaci msh z initramfs, což uživateli umožní zaznamenat jádro ručně.

Například:

default halt

Povolení služby

Chcete-li spustit démona kdump při zavádění, zadejte do příkazového řádku jako root následující příkaz:

# chkconfig kdump on

Tím povolíte službu pro úrovně běhu 2, 3, 4 a 5. Podobně zadáním "chkconfig kdump off" ji vypnete pro všechny úrovně běhu. Chcete-li spustit službu v aktuální relaci, použijte jako root následující příkaz:

# service kdump start

Testování konfigurace

Níže uvedené příkazy způsobí pád jádra. Při provádění těchto kroků buďte opatrní a v žádném případě je nepoužívejte na produkčním stroji. Chcete-li otestovat konfiguraci, restartujte systém s povoleným kdump a ujistěte se, že služba běží:

# service kdump status
Kdump is operational

Poté do příkazového řádku zadejte následující příkazy:

# echo 1 > /proc/sys/kernel/sysrq
# echo c > /proc/sysrq-trigger

To způsobí zhroucení linuxového jádra a soubor adresa-RRRR-MM-DD-HH:MM:SS/vmcore bude zkopírován do umístění, které jste vybrali v konfiguraci (tj. do /var/crash/ výchozí).


Linux
  1. Jak nakonfigurovat virtualizaci na Redhat Linuxu

  2. Jak zvýšit počet diskových inodů v Linuxu

  3. Jak nakonfigurovat replikaci MySQL Multi-Master Replication na Oracle Linux

  1. Jak změnit systémové ID stroje v Oracle Enterprise Linux 7

  2. Jak nakonfigurovat YUM pro připojení k Oracle Public Repository v Oracle Enterprise Linux

  3. Jak nakonfigurovat Kdump na SuSE Linux Enterprise System 10 a 11

  1. Jak formátovat diskové oddíly v Linuxu

  2. Jak vytvořit nový souborový systém Ext4 (oddíl) v Linuxu

  3. Jak připojit a odpojit souborový systém v Linuxu