kdump.service — Crash recovery kernel arming. Centos 7. Failed to start Crash recovery kernel arming.
В документации не нашёл где и как нужно прописать initial ramdisk.
cat /etc/default/grub GRUB_TIMEOUT=5 GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)" GRUB_DEFAULT=saved GRUB_DISABLE_SUBMENU=true GRUB_TERMINAL_OUTPUT="console" GRUB_CMDLINE_LINUX="ipv6.disable=1 rd.lvm.lv=centos/swap crashkernel=auto rd.lvm.lv=centos/usr vconsole.font=latarcyrheb-sun16 vconsole.keymap=ru rd.lvm.lv=centos/root rhgb quiet" GRUB_DISABLE_RECOVERY="true"
crashkernel=auto или указать вручную, как рекомендуют, не играет роли.
Памяти 32G думаю должно хватить для crashkernel=auto
No dump target specified. Default dump target is rootfs block device.
Вполне устраивает запись в /var/crash и не нужды в target specified
/etc/kdump.conf прописано path /var/crash core_collector makedumpfile -l --message-level 1 -d 31
CentOS / RHEL 7 : How to configure kdump
kdump is an advanced crash dumping mechanism. When enabled, the system is booted from the context of another kernel. This second kernel reserves a small amount of memory, and its only purpose is to capture the core dump image in case the system crashes. Since being able to analyze the core dump helps significantly to determine the exact cause of the system failure, it is strongly recommended to have this feature enabled.
1. Install the kexec-tools package if not already installed
To use the kdump service, you must have the kexec-tools package installed. If not already installed, install the kexec-tools.
# yum install kexec-tools
2. Configuring Memory Usage in GRUB2
To configure the amount of memory that is reserved for the kdump kernel, modify /etc/default/grub and modify GRUB_CMDLINE_LINUX , set crashkernel=[size] parameter to the list of kernel options.
GRUB_TIMEOUT=5 GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)" GRUB_DEFAULT=saved GRUB_DISABLE_SUBMENU=true GRUB_TERMINAL_OUTPUT="console" GRUB_CMDLINE_LINUX GRUB_DISABLE_RECOVERY="true"
Run command below to regenerate grub configuration :
# grub2-mkconfig -o /boot/grub2/grub.cfg
Reboot the system to make the kernel parameter effect.
# shutdown -r now
3. Configuring Dump Location
To configure kdump, we need to edit the configuration file /etc/kdump.conf. The default option is to store the vmcore file is the /var/crash/ directory of the local file system. To change the local directory in which the core dump is to be saved and replace the value with desired directory path.
For example:
path /usr/local/cores
Optionally, you can also save the core dump directly to a raw partition.
For example:
raw /dev/sdb4
To store the dump to a remote machine using the NFS protocol, remove the hash sign (“#”) from the beginning of the #nfs my.server.com:/export/tmp line, and replace the value with a valid hostname and directory path.
For example:
nfs my.server.com:/export/tmp
4. Configuring Core Collector
To reduce the size of the vmcore dump file, kdump allows you to specify an external application to compress the data, and optionally leave out all irrelevant information. Currently, the only fully supported core collector is makedumpfile.
To enable the core collector, modify configuration file /etc/kdump.conf, remove the hash sign (“#”) from the beginning of the #core_collector makedumpfile -c –message-level 1 -d 31 line, and edit the command line options as described below.
For example:
core_collector makedumpfile -c
5. Changing Default Action
We can also specify the default action to perform when the core dump fails to generate at the desired location. If no default action is specified, “reboot” is assumed default.
For example:
default halt
6. Start kdump daemon
Check and make sure kernel command line includes the kdump config and memory was reserved for crash kernel:
# cat /proc/cmdline BOOT_IMAGE=/vmlinuz-3.8.13-98.2.1.el7uek.x86_64 root=/dev/mapper/rhel-root ro rd.lvm.lv=rhel/root crashkernel=128M rd.lvm.lv=rhel/swap vconsole.font=latarcyrheb-sun16 vconsole.keymap=us rhgb quiet nomodeset
Set kdump service can be started when system rebooted.
# systemctl enable kdump.service
To start the service in the current session, use the following command:
# systemctl start kdump.service
7. Testing kdump (manually trigger kdump)
To test the configuration, we can reboot the system with kdump enabled, and make sure that the service is running.
# systemctl is-active kdump active
# service kdump status Redirecting to /bin/systemctl status kdump.service kdump.service - Crash recovery kernel arming Loaded: loaded (/usr/lib/systemd/system/kdump.service; enabled) Active: active (exited) since 一 2015-08-31 05:12:57 GMT; 1min 6s ago Process: 19104 ExecStop=/usr/bin/kdumpctl stop (code=exited, status=0/SUCCESS) Process: 19116 ExecStart=/usr/bin/kdumpctl start (code=exited, status=0/SUCCESS) Main PID: 19116 (code=exited, status=0/SUCCESS) Aug 31 05:12:57 ol7 kdumpctl[19116]: kexec: loaded kdump kernel Aug 31 05:12:57 ol7 kdumpctl[19116]: Starting kdump: [OK] Aug 31 05:12:57 ol7 systemd[1]: Started Crash recovery kernel arming.
Then type the following commands at a shell prompt:
# echo 1 > /proc/sys/kernel/sysrq # echo c > /proc/sysrq-trigger
This will force the Linux kernel to crash, and the address-YYYY-MM-DD-HH:MM:SS/vmcore file will be copied to the location you have selected in the configuration (that is, to /var/crash/ by default)
Избавляемся от ошибки «kdump failed» на Centos 7, 8
При получении нового VPS на Centos 7 и 8 нередко возникает ошибка kdump.service failed , которая обнаруживается при запуске команд:
# systemctl status State: degraded
Для более подробного вывода ошибки:
# systemctl --state=failed kdump.service loaded failed failed Crash recovery kernel arming
Эту ошибку можно проигнорировать, однако избавиться от неё довольно просто.
kdump это функция ядра, которая выполняет создание дампа ядра в случае его сбоя. При загрузке системы резервируется определенное количество оперативной памяти, в которую записывается копия ядра. При сбое основного ядра, включается копия ядра из оперативной памяти и захватывает аварийный дамп для дальнейшего анализа. Обычно, резервируется около 160Мб ОЗУ.
Cколько памяти (в байтах) резервирует kdump для аварийного ядра:
# cat /sys/kernel/kexec_crash_size
Если kdump не загружен (загрузился с ошибкой), результатом будет 0
Состояние kdump можно также посмотреть в сообщениях ядра dmesg:
# dmesg | grep Reserving Reserving 161MB of memory at 672MB for crashkernel
Отключение kdump
Необходимо отключить crashkernel в строке параметров ядра при загрузке. Для этого в файле /etc/default/grub замените параметр crashkernel=auto на crashkernel=no :
# nano /etc/default/grub . GRUB_CMDLINE_LINUX="crashkernel=no rhgb quiet" .
Чтобы изменения применились, нужно обновить главный конфигурационный файл grub:
# grub2-mkconfig -o /boot/grub2/grub.cfg
Удаляем сервис kdump из автозагрузки и перезагружаем VPS:
# systemctl disable kdump # reboot
CentOS / RHEL 7: Как настроить kdump
Когда включен, система загружается из контекста другого ядра.
Это второе ядро резервирует небольшой объем памяти, и его единственной целью является захват изображения дампа ядра в случае сбоя системы.
Поскольку возможность анализа дампа ядра помогает значительно определить точную причину сбоя системы, настоятельно рекомендуется включить эту функцию.
1. Установите пакет kexec-tools, если он еще не установлен.
Чтобы использовать службу kdump, вы должны установить пакет kexec-tools. Если он еще не установлен, установите инструменты kexec.
# yum install kexec-tools
2. Настройка использования памяти в GRUB2
Чтобы настроить объем памяти, зарезервированный для ядра kdump, отредактируйте /etc/default/grub и измените GRUB_CMDLINE_LINUX, установите параметр crashkernel = [размер] в список параметров ядра.
Выполните команду ниже, чтобы восстановить конфигурацию grub:
# grub2-mkconfig -o /boot/grub2/grub.cfg
Перезагрузите систему, чтобы вступили в силу параметры ядра.
# shutdown -r now
3. Конфигурирование местоположения дампа
Чтобы настроить kdump, нам нужно отредактировать файл конфигурации /etc/kdump.conf.
Опцией по умолчанию является сохранение файла vmcore в каталоге / var / crash / локальной файловой системы.
Чтобы изменить локальный каталог, в котором необходимо сохранить дамп ядра, и замените значение на нужный путь к каталогу.
Например:
path /usr/local/cores
При желании вы также можете сохранить дамп ядра непосредственно в необработанном разделе.
Например:
raw /dev/sdb4
Чтобы сохранить дамп на удаленном компьютере с использованием протокола NFS, удалите хэш-знак («#») с начала строки #nfs my.server.com:/export/tmp и замените значение допустимым именем хоста и путь к каталогу.
Например:
nfs my.server.com:/export/tmp
4. Настройка Core Collector
Чтобы уменьшить размер файла дампа vmcore, kdump позволяет вам указать внешнее приложение для сжатия данных и, при необходимости, оставить всю несущественную информацию.
В настоящее время единственным полностью поддерживаемым сборщиком ядра является makedumpfile.
Чтобы включить основной сборщик, измените конфигурационный файл /etc/kdump.conf, удалите хеш-знак («#») с начала файла makedumpfile #core_collector -c -message-level 1 -d 31 и отредактируйте командную строку как описано ниже.
core_collector makedumpfile -c
5. Изменение действия по умолчанию
Мы также можем указать действие по умолчанию для выполнения, когда дамп ядра не может сгенерироваться в нужном месте. Если не указано действие по умолчанию, «перезагрузка» считается по умолчанию.
default halt
6. Запустите демон kdump
Проверьте и убедитесь, что в командной строке ядра включена конфигурация kdump и память зарезервирована для сбоя ядра:
# cat /proc/cmdline BOOT_IMAGE=/vmlinuz-3.8.13-98.2.1.el7uek.x86_64 root=/dev/mapper/rhel-root ro rd.lvm.lv=rhel/root crashkernel=128M rd.lvm.lv=rhel/swap vconsole.font=latarcyrheb-sun16 vconsole.keymap=us rhgb quiet nomodeset
Установите,чтобы служба kdump могла быть запущена при перезагрузке системы.
# systemctl enable kdump.service
Чтобы запустить службу в текущем сеансе, используйте следующую команду:
# systemctl start kdump.service
7. Тестирование kdump (ручной запуск kdump)
Чтобы проверить конфигурацию, мы можем перезагрузить систему с включенным kdump и убедиться, что служба запущена.
# systemctl is-active kdump active
# service kdump status Redirecting to /bin/systemctl status kdump.service kdump.service - Crash recovery kernel arming Loaded: loaded (/usr/lib/systemd/system/kdump.service; enabled) Active: active (exited) since 一 2015-08-31 05:12:57 GMT; 1min 6s ago Process: 19104 ExecStop=/usr/bin/kdumpctl stop (code=exited, status=0/SUCCESS) Process: 19116 ExecStart=/usr/bin/kdumpctl start (code=exited, status=0/SUCCESS) Main PID: 19116 (code=exited, status=0/SUCCESS) Aug 31 05:12:57 ol7 kdumpctl[19116]: kexec: loaded kdump kernel Aug 31 05:12:57 ol7 kdumpctl[19116]: Starting kdump: [OK] Aug 31 05:12:57 ol7 systemd[1]: Started Crash recovery kernel arming.
Затем введите в командной строке следующие команды:
# echo 1 > /proc/sys/kernel/sysrq # echo c > /proc/sysrq-trigger
Для записи при сбое ядра в выбранное местоположение то есть в / var / crash /
itisgood
previous post
Команда «comm» в Linux с примерами
Учебное пособие команды Linux tload для начинающих (с примерами)
You may also like
Как настроить базовый DHCP-сервер
Различия между пакетными менеджерами YUM и DNF
Как расширить или увеличить размер диска виртуальной.
Как определить точку монтирования для конкретного файла.
Копирование файлов на Linux с помощью строки.
Как отобразить содержимое каталога, отсортированное по времени
Настройка уведомлений по электронной почте для отчетов.
Подключение интернет-магазина к CDEK Pay
gcc и g++: В чем разница?
Как вывести список USB-устройств на Linux
Leave a Comment Cancel Reply
• Свежие записи
- Механизмы и мотивации в накрутке голосований в опросах Телеграм
- Smart Ear — проект развития компьютерного слуха
- Как автоматизировать бухучет: обзор ПО для компаний разного масштаба
- Лучшие каналы продвижения товаров и привлечения клиентов в 2023 году: экспертные рекомендации
- Питание при проблемах ЖКТ: как правильно построить рацион и облегчить симптомы
- Как настроить базовый DHCP-сервер
- Различия между пакетными менеджерами YUM и DNF
- Как уменьшить размер тома данных Docker в Docker Desktop на Windows
- Как расширить или увеличить размер диска виртуальной машины KVM (VM)
- Как определить точку монтирования для конкретного файла или каталога
• Категории
• Теги
• itsecforu.ru
• Страны посетителей
IT is good
В современном мире социальных медиа и мессенджеров, где каждый голос и мнение имеют значение, накрутка голосований в опросах Телеграм стала актуальной темой. Телеграм — одна…
Искусственный интеллект с каждым годом становится сложнее и прогрессивнее. Появляются инновационные проекты, которые помогают развивать компьютерные чувства. Платформа SMART.by подробно знакомит с такими…
Автоматизация бухгалтерского и налогового учета сегодня – насущная необходимость для каждой организации. Выбор подходящего программного продукта позволяет сильно облегчить рутинную работу бухгалтера, минимизировать…
Маркетинг постоянно развивается, и каждый год появляются новые инструменты и тренды. 2023 год не станет исключением – он обещает принести множество интересных возможностей…
Заболевания желудочно-кишечного тракта являются одной из наиболее распространенных проблем современного человека. Неправильное питание, стрессы, неактивный образ жизни – все это провоцирует возникновение…