Red Hat Training
A Red Hat training course is available for Red Hat Enterprise Linux
2.4.10. 对 Kernel Crash Collection 的更改(Kdump)
内核崩溃收集工具( kdump )以前使用自定义 mkdumprd
脚本为 kdump 捕获内核生成初始 RAMDisk(initrd
)。在 Red Hat Enterprise Linux 7 中,初始 RAMDisk 使用 dracut 生成,使生成初始 RAMDisk 的过程更易于维护。
因此,在 kdump 及其配置文件中进行了以下更改。
-
net
指令不再被支持。用户现在必须明确定义ssh
或nfs
。 -
不再支持
黑名单
选项。相反,用户可以将rd.driver.blacklist
指定为捕获内核的/etc/sysconfig/kdump
文件中的参数。 -
默认的
mount_root_run_init
操作(在转储到预期的目标失败时)已被dump_to_rootfs
操作替代。这个新操作会挂载根文件系统,而不是挂载真实根文件系统,而是运行初始化脚本,并在kdump
服务启动时尝试保存 vmcore。这个新操作会挂载 root 文件系统并将 vmcore 保存到其中。 -
新的指令
dracut_args
允许您在配置 kdump 时指定额外的 dracut 参数。 -
kdump 不再包含
debug_mem_level
选项。这个功能已移至 dracut。用户可以通过在其捕获内核的/etc/sysconfig/kump
文件中指定rd.memdebug
作为参数来实现相同的功能。 -
options
指令之前被用来在初始 RAM 文件系统(initramfs
)中包含与内核模块相关的参数。Red Hat Enterprise Linux 7 不支持这个方法。用户可以在捕获内核的/etc/sysconfig/kdump
文件中指定相关参数。 -
link_delay
和disk_timeout
参数不再是必需的或支持,因为 dracut 包含udev
,它解决了之前需要这些参数的用例。 -
在启动 kdump 服务并创建初始 RAMDdisk 镜像前,所有文件系统后端转储目标都必须挂载到崩溃的内核中。您可以将这些目标添加到
/etc/fstab
,以便在引导时自动挂载这些目标。 - 如果您指定路径但没有指定目标,并且您指定的路径中的任何目录都是单独设备的挂载点,则 vmcore 将保存到路径中,而不是与该路径挂载的设备。因此,当您的系统重启以及设备挂载时,vmcore 无法访问,因为该设备已经挂载到其位置的顶部。现在,当您指定路径而不指定目标时,Red Hat Enterprise Linux 7 会警告此问题。
有关 kdump 的详情,请查看 内核管理指南。