Kernel/Kdump: различия между версиями
Vt (обсуждение | вклад) (Новая страница: «Kdump предоставляет возможность получить дамп ядра в случае kernel panic. В Альте используется интерфейс на базе дебиановского [https://manpages.debian.org/testing/kdump-tools/kdump-tools.5.en.html kdump-tools] с утилитой [https://manpages.debian.org/testing/kdump-tools/kdump-config.8.en.html kdump-config]. Описание используемого мех...») |
Vt (обсуждение | вклад) Нет описания правки |
||
Строка 1: | Строка 1: | ||
Kdump предоставляет возможность получить дамп ядра в случае kernel panic. В Альте используется интерфейс на базе дебиановского [https://manpages.debian.org/testing/kdump-tools/kdump-tools.5.en.html kdump-tools] с утилитой [https://manpages.debian.org/testing/kdump-tools/kdump-config.8.en.html kdump-config]. | Kdump предоставляет возможность получить дамп ядра в случае kernel panic. В Альте используется интерфейс на базе дебиановского [https://manpages.debian.org/testing/kdump-tools/kdump-tools.5.en.html kdump-tools] с утилитой [https://manpages.debian.org/testing/kdump-tools/kdump-config.8.en.html kdump-config]. (В отличии от дебиановких утилит у нас нет генерации специального мини-initrd для kdump, а используется обычный initrd с обычным ядром.) | ||
Описание используемого механизма ядра: https://www.kernel.org/doc/html/latest/admin-guide/kdump/kdump.html (англ.) | Описание используемого механизма ядра: https://www.kernel.org/doc/html/latest/admin-guide/kdump/kdump.html (англ.) | ||
Строка 27: | Строка 27: | ||
# kdump-config status | # kdump-config status | ||
current state : ready to kdump | current state : ready to kdump | ||
= Проверка работоспособности Kdump = | |||
Системы разные и после первоначальной установки на всякий случай можно убедиться, что всё работает. Для этого после рубута (при наличии статуса "ready to kdump") искусственно вызовите крэш системы: | |||
# sync | |||
# echo 1 > /proc/sys/kernel/sysrq | |||
# echo c > /proc/sysrq-trigger | |||
Возникнет kernel panic после чего система должна загрузится в dump-capture ядро, которое запишет дамп предыдущего ядра в подкаталог названый по дате и времени в <code>/var/crash</code>. Пример: | |||
# ls -l /var/crash/202211220350 | |||
total 137928 | |||
-rw------- 1 root root 151909 Nov 22 03:50 dmesg.202211220350 | |||
-rw-r--r-- 1 root root 141075304 Nov 22 03:50 dump.202211220350 | |||
= Ссылки = | = Ссылки = | ||
Настройка Kdump в других дистрибутивах: | Настройка '''Kdump''' в других дистрибутивах: | ||
* https://fedoraproject.org/wiki/How_to_use_kdump_to_debug_kernel_crashes | * В Федоре используется расширенный пакет <code>kexec-tools</code> https://fedoraproject.org/wiki/How_to_use_kdump_to_debug_kernel_crashes | ||
* В Арче самостоятельная конфигурация https://wiki.archlinux.org/title/Kdump |
Версия от 22:35, 24 ноября 2022
Kdump предоставляет возможность получить дамп ядра в случае kernel panic. В Альте используется интерфейс на базе дебиановского kdump-tools с утилитой kdump-config. (В отличии от дебиановких утилит у нас нет генерации специального мини-initrd для kdump, а используется обычный initrd с обычным ядром.)
Описание используемого механизма ядра: https://www.kernel.org/doc/html/latest/admin-guide/kdump/kdump.html (англ.)
Пример конфигурации системы по шагам
# apt-get uodate # apt-get install -y kdump-tools
Добавьте параметр crashkernel=256M
в kernel command line, для этого (при использовании загрузчика grub2) редактируйте файл /etc/sysconfig/grub2
строку GRUB_CMDLINE_LINUX_DEFAULT=
, например:
# vim /etc/sysconfig/grub2 GRUB_CMDLINE_LINUX_DEFAULT='panic=10 console=ttyS0 audit=0 crashkernel=256M'
Затем нужно [перегенерировать grub.cfg], чтоб новый параметр применился при следующей загрузке системы:
# update-grub
И включить сервис kdump-tools
:
# systemctl enable kdump-tools
После этого можно (нужно) перезагрузить систему (reboot).
Результат работы сервиса можно будет посмотреть командами kdump-config show
(выведет больше подробностей) или kdump-config status
(кратко) — в их выводе должен быть текст ready to kdump
:
# kdump-config status current state : ready to kdump
Проверка работоспособности Kdump
Системы разные и после первоначальной установки на всякий случай можно убедиться, что всё работает. Для этого после рубута (при наличии статуса "ready to kdump") искусственно вызовите крэш системы:
# sync # echo 1 > /proc/sys/kernel/sysrq # echo c > /proc/sysrq-trigger
Возникнет kernel panic после чего система должна загрузится в dump-capture ядро, которое запишет дамп предыдущего ядра в подкаталог названый по дате и времени в /var/crash
. Пример:
# ls -l /var/crash/202211220350 total 137928 -rw------- 1 root root 151909 Nov 22 03:50 dmesg.202211220350 -rw-r--r-- 1 root root 141075304 Nov 22 03:50 dump.202211220350
Ссылки
Настройка Kdump в других дистрибутивах:
- В Федоре используется расширенный пакет
kexec-tools
https://fedoraproject.org/wiki/How_to_use_kdump_to_debug_kernel_crashes - В Арче самостоятельная конфигурация https://wiki.archlinux.org/title/Kdump