深入探索 Kdump,第 2 部分: Kdump 图形化配置工具

引言

众所周知,RHEL 和 SUSE 是当今比较主流的两大企业版 Linux,尤其在云计算服务器领域内锦上添花。对于界面用户,相对枯燥的 kdump 命令行终端配置文件,他们更加需要看到一个简单便捷的图形配置工具作为绝技杀手锏。下面以 IBM Power 架构和 RHEL6.2、SLES11SP2 系统为例,讲解这种图形工具分别是如何使界面用户操作方便、简单明了。RHEL6.2 介绍 system-config-kdump,SLES11SP2 介绍 yast2 kdump。

Redhat:system-config-kdump

RHEL6.2 的 Kdump 图形配置工具:system-config-kdump。它需要安装 system-config-kdump 的 rpm 包。system-config-kdump 主要包括基本设置、目标设置、过滤设置、高级设置四个部分,下面通过具体实例介绍相关桌面配置。另外,此工具需要 root 权限方能在界面窗口中启动。启动该图形工具 ( 内核转储配置 ) 有两种方法:(1) 在面板主菜单上,选择 System -> Administration -> Kernel crash dumps。(2) 在 GNOME 终端中键入 system-config-kdump 命令。

基本操作

在 system-config-kdump 包安装后,如果该工具已是禁用的状态,必须先把启用它才可以进行下面的配置 ( 点击 Enable 按钮 )。Apply 按钮是使得你改变后的配置生效。Reload 按钮是恢复你的操作变化到原始状态。如下图 1,


图 1. 基本设置
深入探索 Kdump,第 2 部分: Kdump 图形化配置工具_第1张图片
  • 基本设置。kdump 的基本设置,包括相关内存总量。
  • 目标设置。保存 kernel dump 到本地磁盘或远程通过 ssh/nfs 连到 server,选择路径。
  • 过滤设置。过滤级别。
  • 高级设置。给 kernel 加命令行参数,选择 dump 时行为,配置 core 收集器。

基本设置

在基本设置中,介绍系统总内存,当前实际预留给 Kdump 的内存,期望预留给 Kdump 的内存,预定后的可用内存等。如上图 1,自动 kdump 内存设置会根据系统内存情况自动选择最优参数配置。手动 kdump 内存设置有以下几个字段:

  • Total System Memory:系统总内存。
  • Current kdump Memory:当前 kdump 预留的实际内存。
  • New kdump Memory:手动设置 kdump 预留内存,需要人工手动输入。
  • Usable Memory:可用内存

目标设置

在目标设置中,介绍本地文件系统转储,原始设备转储,网络转储等几种方式转储的设置。如下图 2,


图 2. 目标设置
深入探索 Kdump,第 2 部分: Kdump 图形化配置工具_第2张图片
  1. Local filesystem:本地文件系统

    如想把 vmcore 保存到本地目录,则选择这一项进行配置。在 Path 里配置 vmcore 被保存的本地目录,一般设置为 /var/crash。在 Partition 里可以指定它的分区。

  2. Raw device:裸设备

    如果想把 vmcore 作为裸数据保存以而不依赖于文件系统,可以用这种方法。这使得即使触发 kernel dump 时文件系统瘫痪也可以完好地保存 vmcore,相当于 dd /proc/vmcore 操作。

  3. Network:网络

    如果你想把 vmcore dump 到远程主机上,可以用这种方法。这里支持 NFS 和 SSH 两种方式。

    1. NFS:需要指定主机名和路径,同时也支持 DNS。此图例中,会把本地的 /proc/vmcore 拷贝到远程主机的 /var/crash/%HOST-%DATE/ 中
    2. SSH: 需要指定远程主机名,远程路径已被默认指定为 /var/crash/%HOST-%DATE,同时也支持 DNS。相当于把本地的 /proc/vmcore 远程拷贝到 user@server:/var/crash/%HOST-%DATE/

过滤设置

在过滤设置中,介绍如何配置过滤级别和转储文件的格式。这里主要可以设置过滤级别和输出文件格式。过滤级别取决于零页面 (zero page)、缓存页 (cache page)、专用缓存 (cache private)、用户数据 (user date)、可用页面 (free page) 的选择。输出文件格式可以选择 ELF 格式 (ELF file format) 或磁盘转储文件格式 (diskdump file format),如下图 3。


图 3. 过滤设置
深入探索 Kdump,第 2 部分: Kdump 图形化配置工具_第3张图片

高级设置

在高级设置中,如何选择 initrd 和 capture kernel,如何为所选内核配置命令行参数,以及如何配置转储的默认操作。如下图 4,


图 4. 高级设置
深入探索 Kdump,第 2 部分: Kdump 图形化配置工具_第4张图片
  • initrd selection:initrd 选择,有默认 initrd 和自定义 initrd。
  • Capture kernel selection:捕获内核选择,有默认内核和自定义内核。
  • Command line options:命令行选项,有”原始的”和”编辑的”两种,对所选内核追加命令行执行参数。
  • Default action:默认动作。
    • mount rootfs and run /sbin/init:默认动作。先 mount root 文件系统,然后运行 init。
    • reboot:简单重启系统。
    • shell:掉进 shell 里。
    • halt:在捕获 vmcore 之后,无论成功与否,都简单地 halt 系统。
    • poweroff:系统关闭。
  • Core collector:核收集器。指定核收集器以 makedumpfile 开头的命令。

SUSE: yast2 kdump

SLES11SP2 的的 Kdump 图形配置工具:yast2 kdump,配置工具 yast2 工具的一部分。Yast2 是 SUSE 的配置管理工具。它可以通过 kdump 管理套件来启动 kdump 图形配置界面。它包括主要包括启动选项、转储过滤、转储目标、邮件通知、高级配置五个部分,下面通过具体实例介绍相关桌面配置。

启动选项

如下图 5,在启动选项中,主要配置 Kdump 启禁用、Kdump 的内存等。


图 5. 启动选项
深入探索 Kdump,第 2 部分: Kdump 图形化配置工具_第5张图片
  • 启禁用:此设置须在重启系统后生效。启用后,启动参数会多出 crashkernel 部分;禁用后,则反之。
  • kdump 内存:指 kdump 内核分配的内存大小。

转储过滤

在转储过滤中,指定转储需要的页面类型和创建转储文件的格式,这些页面会被拷贝到转储文件里,如下图 6。


图 6. 转储过滤
深入探索 Kdump,第 2 部分: Kdump 图形化配置工具_第6张图片
  • Dump 级别 : 选择作为分析用途的页面。这些被选到的页面在 dump 时会拷贝到 dumpfile 中。
  • Dump 格式:分 ELF 格式和压缩格式两种,可指定其一。

转储目标

在转储目标中,配置保存转储文件的位置,可以是本地,可以是远程机器,如下图 7。


图 7. 转储目标
深入探索 Kdump,第 2 部分: Kdump 图形化配置工具_第7张图片
  • 远程目标:可以通过 FTP、SSH、NFS、CIFS 等方式远程保存转储文件,同时需要指定远程主机和路径。
  • 本地目标:如果想把转储文件保存到本地,可以通过”Browse”按钮选择指定保存目录,默认是 /var/crash。

邮件通知

在邮件通知中,可以配置转储之后的邮件提醒,以便让用户更及时地知道机器系统崩溃。这个功能也是 SUSE kdump 的特色,如下图 8。


图 8. 邮件通知
深入探索 Kdump,第 2 部分: Kdump 图形化配置工具_第8张图片

高级配置

在高级配置中,配置选择 initrd 和 capture kernel,如何为所选内核配置命令行参数,如下图 9。


图 9. 高级配置
深入探索 Kdump,第 2 部分: Kdump 图形化配置工具_第9张图片
  1. custom kdump kernel:用户可以输入 custom kernel,比如:/boot/vmlinu[zx]-[.gz]
  2. 命令行参数:可以编辑传递给 kexec 的参数,也可以在命令行参数指定的情况下追加一些额外的参数。
  3. 转储设置:
    • Enable Delete Old Dump Images:如果转储文件在超过了 Number of Old Dumps,则自动删除最旧的一个。
    • Number of Old Dumps:指定最多可以保留多少个旧的转储文件。
    • Enable Immediate Reboot After Saving the Core:在转储文件保存后立即重启系统,否则系统不会重启。
    • Enable Copy Kernel into the Dump Directory:默认是不启用。如果启用了,会把内核和调试信息一起拷贝到转储目录下。

你可能感兴趣的:(dump)