table of contents
KDUMP.CONF(5) | File Formats Manual | KDUMP.CONF(5) |
NAME¶
kdump.conf - configuration file for kdump kernel.
DESCRIPTION¶
kdump.conf is a configuration file for the kdump kernel crash collection service.
kdump.conf provides post-kexec instructions to the kdump kernel. It is stored in the initrd file managed by the kdump service. If you change this file and do not want to reboot in order for the changes to take effect, restart the kdump service to rebuild the initrd.
For most configurations, you can simply review the examples provided in the stock /etc/kdump.conf.
NOTE: For filesystem dumps the dump target must be mounted before building kdump initramfs.
kdump.conf only affects the behavior of the initramfs. Please read the kdump operational flow section of kexec-kdump-howto.txt in the docs to better understand how this configuration file affects the behavior of kdump.
OPTIONS¶
raw <partition>
nfs <nfs mount>
ssh <user@server>
sshkey <path>
<fs type> <partition>
path <path>
Interpretation of "path" changes a bit if the user didn't specify any dump target explicitly in kdump.conf. In this case, "path" represents the absolute path from root. The dump target and adjusted path are arrived at automatically depending on what's mounted in the current system.
Ignored for raw device dumps. If unset, will use the default "/var/crash".
core_collector <command> <options>
Note 1: About default core collector: The default core_collector for raw/ssh dump is: "makedumpfile -F -l --message-level 1 -d 31". The default core_collector for other targets is: "makedumpfile -l --message-level 1 -d 31". Even if core_collector option is commented out in kdump.conf, makedumpfile is the default core collector and kdump uses it internally. If one does not want makedumpfile as default core_collector, then they need to specify one using core_collector option to change the behavior.
Note 2: If "makedumpfile -F" is used then you will get a flattened format vmcore.flat, you will need to use "makedumpfile -R" to rearrange the dump data from standard input to a normal dumpfile (readable with analysis tools). ie. "makedumpfile -R vmcore < vmcore.flat"
kdump_post <binary | script>
Note that scripts written for use with this directive must use the /bin/bash interpreter.
kdump_pre <binary | script>
0 - continue with dump process as usual
non 0 - reboot the system
Note that scripts written for this directive must use the /bin/bash interpreter.
extra_bins <binaries | shell scripts>
extra_modules <module(s)>
default <reboot | halt | poweroff | shell | dump_to_rootfs>
force_rebuild <0 | 1>
force_no_rebuild <0 | 1>
force_no_rebuild and force_rebuild options are mutually exclusive and they should not be set to 1 simultaneously.
override_resettable <0 | 1>
dracut_args <arg(s)>
fence_kdump_args <arg(s)>
fence_kdump_nodes <node(s)>
DEPRECATED OPTIONS¶
net <nfs mount>|<user@server>
options <module> <option list>
link_delay <seconds>
disk_timeout <seconds>
debug_mem_level <0-3>
Higher level means more debugging output.
0 - no output
1 - partial /proc/meminfo
2 - /proc/meminfo
3 - /proc/meminfo + /proc/slabinfo
blacklist <list of kernel modules>
Instead, use rd.driver.blacklist option on second kernel to blacklist a certain module. One can edit /etc/sysconfig/kdump and edit KDUMP_COMMANDLINE_APPEND to pass kernel command line options. Refer to dracut.cmdline man page for more details on module blacklist option.
EXAMPLES¶
Here are some examples for core_collector option:
Core collector command format depends on dump target type. Typically for filesystem (local/remote), core_collector should accept two arguments. First one is source file and second one is target file. For ex.
- ex1.
- core_collector "cp --sparse=always"
Above will effectively be translated to:
cp --sparse=always /proc/vmcore <dest-path>/vmcore
- ex2.
- core_collector "makedumpfile -l --message-level 1 -d 31"
Above will effectively be translated to:
makedumpfile -l --message-level 1 -d 31 /proc/vmcore <dest-path>/vmcore
For dump targets like raw and ssh, in general, core collector should expect one argument (source file) and should output the processed core on standard output (There is one exception of "scp", discussed later). This standard output will be saved to destination using appropriate commands.
raw dumps examples:
- ex3.
- core_collector "cat"
Above will effectively be translated to.
cat /proc/vmcore | dd of=<target-device>
- ex4.
- core_collector "makedumpfile -F -l --message-level 1 -d 31"
Above will effectively be translated to.
makedumpfile -F -l --message-level 1 -d 31 | dd of=<target-device>
ssh dumps examples
- ex5.
- core_collector "cat"
Above will effectively be translated to.
cat /proc/vmcore | ssh <options> <remote-location> "dd of=path/vmcore"
- ex6.
- core_collector "makedumpfile -F -l --message-level 1 -d 31"
Above will effectively be translated to.
makedumpfile -F -l --message-level 1 -d 31 | ssh <options> <remote-location> "dd of=path/vmcore"
There is one exception to standard output rule for ssh dumps. And that is scp. As scp can handle ssh destinations for file transfers, one can specify "scp" as core collector for ssh targets (no output on stdout).
- ex7.
- core_collector "scp"
Above will effectively be translated to.
scp /proc/vmcore <user@host>:path/vmcore
examples for other options please see /etc/kdump.conf
SEE ALSO¶
07/23/2008 | kexec-tools |