kexec-tools/kdump.conf
Baoquan 4b850d2f3a Check if block device as dump target is resettable
Some Smart Array (hpsa/cciss) adapters don't support reset, we need
to disable kdump on those devices, like rhel6 did.

In this patch, the dump target  is checked according to below
criteria if it's a block device.
If it's cciss disk but is resettbale, can be used as dump target.
If it's cciss disk but is not resettable, can not be used as dump
target.
If it's cciss disk and not resettable, but user set OVERRIDE_RESETTABLE
to 1 in /etc/sysconfig/kdump, can be taken as dump target. Because
user know the situation and want to have a try.

In this patch, added codes include 4 parts:
1)Add an option "override_resettable <0 | 1>" into kdump.conf, and
add related section into kdump.conf man page. In mkdumprd, will check
whether user has set a value, get that value if yes. By default, the
value is 0.

2)port utility functions from dracut-functions.sh.

3)The check_resettable function checks if dump target is a resettable
block device. This includes the case where default action dump_to_rootfs
is set.

Signed-off-by: Baoquan He <bhe@redhat.com>
Acked-by: Vivek Goyal <vgoyal@redhat.com>
2013-04-02 10:38:35 +08:00

139 lines
5.8 KiB
Plaintext

# Configures where to put the kdump /proc/vmcore files
#
# This file contains a series of commands to perform (in order) when a
# kernel crash has happened and the kdump kernel has been loaded. Directives in
# this file are only applicable to the kdump initramfs, and have no effect if
# the root filesystem is mounted and the normal init scripts are processed
#
# Currently only one dump target and path may be configured at once
# if the configured dump target fails, the default action will be preformed
# the default action may be configured with the default directive below. If the
# configured dump target succedes
#
# Basics commands supported are:
# raw <partition> - Will dd /proc/vmcore into <partition>.
# Use persistent device names for partition devices,
# such as /dev/vg/<devname>.
#
# nfs <nfs mount> - Will mount fs and copy /proc/vmcore to
# <mnt>/var/crash/%HOST-%DATE/, supports DNS.
#
# ssh <user@server> - Will scp /proc/vmcore to
# <user@server>:/var/crash/%HOST-%DATE/, supports DNS
# NOTE: make sure user has necessary write
# permissions on server
#
# sshkey <path> - Will use the sshkey to do ssh dump
# Specifies the path of the ssh key you want to use
# when do ssh dump, the default value is
# /root/.ssh/kdump_id_rsa.
#
# <fs type> <partition> - Will mount -t <fs type> <partition> /mnt and copy
# /proc/vmcore to /mnt/var/crash/%DATE/.
# NOTE: <partition> can be a device node, label or uuid.
# It's recommended to use persistent device names
# such as /dev/vg/<devname>.
# Otherwise it's suggested to use label or uuid.
#
# path <path> - Append path to the filesystem device which you are
# dumping to. Ignored for raw device dumps.
# If unset, will default to /var/crash.
#
# core_collector <command> <options>
# - This allows you to specify the command to copy
# the vmcore. You could use the dump filtering
# program makedumpfile, the default one, to retrieve
# your core, which on some arches can drastically
# reduce core file size. See /sbin/makedumpfile --help
# for a list of options. Note that the -i and -g
# options are not needed here, as the initrd will
# automatically be populated with a config file
# appropriate for the running kernel.
# Default core_collector for raw/ssh dump is:
# "makedumpfile -F -c --message-level 1 -d 31".
# Default core_collector for other targets is:
# "makedumpfile -c --message-level 1 -d 31".
# For core_collector format details please refer to
# kexec-kdump-howto.txt or kdump.conf manpage.
#
# kdump_post <binary | script>
# - This directive allows you to run a specified
# executable just after the memory dump process
# terminates. The exit status from the dump process
# is fed to the kdump_post executable, which can be
# used to trigger different actions for success or
# failure.
#
# kdump_pre <binary | script>
# - works just like the kdump_post directive, but instead
# of running after the dump process, runs immediately
# before. Exit status of this binary is interpreted
# as follows:
# 0 - continue with dump process as usual
# non 0 - reboot the system
#
# extra_bins <binaries | shell scripts>
# - This directive allows you to specify additional
# binaries or shell scripts you'd like to include in
# your kdump initrd. Generally only useful in
# conjunction with a kdump_post binary or script that
# relies on other binaries or scripts.
#
# extra_modules <module(s)>
# - This directive allows you to specify extra kernel
# modules that you want to be loaded in the kdump
# initrd, typically used to set up access to
# non-boot-path dump targets that might otherwise
# not be accessible in the kdump environment. Multiple
# modules can be listed, separated by a space, and any
# dependent modules will automatically be included.
#
# default <reboot | halt | poweroff | shell | dump_to_rootfs>
# - Action to preform in case dumping to intended target
# fails. If no default action is specified, "reboot"
# is assumed default.
# reboot: If the default action is reboot simply reboot
# the system and loose the core that you are
# trying to retrieve.
# halt: If the default action is halt, then simply
# halt the system after attempting to capture
# a vmcore, regardless of success or failure.
# poweroff: The system will be powered down
# shell: If the default action is shell, then drop to
# an shell session inside the initramfs from
# where you can try to record the core manually.
# Exiting this shell reboots the system.
# Note: kdump uses bash as the default shell.
# dump_to_rootfs: If non-root dump target is specified,
# the default action can be set as dump_to_rootfs.
# That means when dump to target fails, dump vmcore
# to rootfs from initramfs context and reboot.
#
# force_rebuild <0 | 1>
# - By default, kdump initrd only will be rebuilt when
# necessary. Specify 1 to force rebuilding kdump
# initrd every time when kdump service starts.
#
#override_resettable <0 | 1>
# - Usually a unresettable block device can't be dump target.
# Specifying 1 means though block target is unresettable, user
# understand this situation and want to try dumping. By default,
# it's set to 0, means not to try a destined failure.
#raw /dev/vg/lv_kdump
#ext4 /dev/vg/lv_kdump
#ext4 LABEL=/boot
#ext4 UUID=03138356-5e61-4ab3-b58e-27507ac41937
#nfs my.server.com:/export/tmp
#ssh user@my.server.com
#sshkey /root/.ssh/kdump_id_rsa
path /var/crash
#core_collector makedumpfile -c --message-level 1 -d 31
#core_collector scp
#kdump_post /var/crash/scripts/kdump-post.sh
#kdump_pre /var/crash/scripts/kdump-pre.sh
#extra_bins /usr/bin/lftp
#extra_modules gfs2
#default shell
#force_rebuild 1