14.7. 测试 kdump 配置
配置 kdump 后,您必须手动测试系统崩溃,并确保 vmcore 文件在定义的 kdump 目标处产生。vmcore 文件是从新引导的内核的上下文中捕获的。因此,vmcore 有用于调试内核崩溃的重要信息。
不要在活跃的生产系统中测试 kdump。测试 kdump 的命令将导致内核崩溃,且数据丢失。根据您的系统架构,确保您安排了相当长的维护时间,因为 kdump 测试可能需要多次重启,且引导时间很长。
如果 vmcore 文件没有在 kdump 测试过程中生成 ,请在再次运行测试前识别并修复问题,以便成功进行 kdump 测试。
如果进行任何手动系统修改,您必须在任何系统修改的最后测试 kdump 配置。例如,如果您进行以下任何更改,请确保为以下情形测试 kdump 配置,以获取最佳 kdump 性能:
- 软件包升级。
- 硬件级别的更改,如存储或网络更改。
- 固件升级。
- 包括第三方模块的新安装和应用程序升级。
- 如果您使用热插机制在支持此机制的硬件上添加更多内存。
-
在
/etc/kdump.conf或/etc/sysconfig/kdump文件中进行了更改后。
先决条件
- 您在系统上具有 root 权限。
-
您已保存了所有重要数据。测试
kdump的命令导致内核崩溃,且数据丢失。 - 您已根据系统架构安排了相当长的机器维护时间。
流程
启用
kdump服务:kdumpctl restart
# kdumpctl restartCopy to Clipboard Copied! Toggle word wrap Toggle overflow 使用
kdumpctl检查kdump服务的状态:kdumpctl status
# kdumpctl status kdump:Kdump is operationalCopy to Clipboard Copied! Toggle word wrap Toggle overflow 另外,如果您使用
systemctl命令,输出会打印在systemd日志中。启动内核崩溃来测试
kdump配置。sysrq-trigger组合键导致内核崩溃,并可能在需要时重启系统。echo c > /proc/sysrq-trigger
# echo c > /proc/sysrq-triggerCopy to Clipboard Copied! Toggle word wrap Toggle overflow 在内核重启时,
address-YYYY-MM-DD-HH:MM:SS/vmcore文件在您在/etc/kdump.conf文件中指定的位置创建。默认值为/var/crash/。