第 18 章 支持的 kdump 配置和目标
kdump
机制是 Linux 内核的一个功能,它在发生内核崩溃时生成一个崩溃转储文件。内核转储文件有关键的信息,可帮助分析和确定内核崩溃的根本原因。崩溃可能是因为各种因素,举几个例子,如硬件问题或第三方内核模块问题。
使用提供的信息和流程,您可以了解 RHEL 8 系统上支持的配置和目标,正确配置 kdump
,并验证它是否工作正常。
18.1. kdump 的内存要求
要让 kdump
捕获内核崩溃转储,并保存它以便进一步分析,应该为捕获内核永久保留系统内存的一部分。保留时,主内核无法使用系统内存的这一部分。
内存要求因某些系统参数而异。主要因素之一就是系统的硬件构架。要找出确切的机器架构(如 Intel 64 和 AMD64,也称为 x86_64)并将其输出到标准输出,请使用以下命令:
$ uname -m
使用上述最小内存要求的列表,您可以设置合适的内存大小,来在最新可用版本上为 kdump
自动保留内存。内存大小取决于系统的架构和总可用物理内存。
构架 | 可用内存 | 最小保留内存 |
---|---|---|
AMD64 和 Intel 64 ( | 1 GB 到 4 GB | 192 MB 内存 |
4 GB 到 64 GB | 256 MB 内存 | |
64 GB 及更多 | 512 MB 内存 | |
64 位 ARM 架构 ( | 2 GB 及更多 | 480 MB 内存 |
IBM Power 系统 ( | 2 GB 到 4 GB | 384 MB 内存 |
4 GB 到 16 GB | 512 MB 内存 | |
16 GB 到 64 GB | 1 GB 内存 | |
64 GB 到 128 GB | 2 GB 内存 | |
128 GB 及更多 | 4 GB 内存 | |
IBM Z ( | 1 GB 到 4 GB | 192 MB 内存 |
4 GB 到 64 GB | 256 MB 内存 | |
64 GB 及更多 | 512 MB 内存 |
在很多系统中,kdump
可以估算所需内存量并自动保留。默认情况下,此行为是启用的,但仅适用于内存总量超过特定数量的系统,这些内存因系统架构而异。
根据系统中内存总量自动配置保留内存是最佳工作量估算。实际需要的内存可能因其它因素(如 I/O 设备)而有所不同。使用内存不足将导致 debug 内核无法在内核 panic 的情况下作为捕获内核引导。要避免这个问题,请足够增大崩溃内核内存。