kdump配置

来源:互联网 发布:霍光为什么不篡位知乎 编辑:程序博客网 时间:2024/05/22 06:38

1、安装kexec-tool

首先安装kexec-tools工具包:

yum install kexec-tools
2、配置为kdump转存

kdump要求操作系统正常使用的时候,不能使用kdump kernel所占用的内存,配置这个需要修改grub文件:

使用bios安装:

default=0timeout=5splashimage=(hd0,0)/grub/splash.xpm.gzhiddenmenutitle Red Hat Enterprise Linux 6 (2.6.32-504.el6.x86_64)root (hd0,0)kernel /vmlinuz-2.6.32-504.el6.x86_64 ro root=UUID=2b3e41f8-1b09-407b-b876-e5db3ca4b25b rd_NO_LUKS  KEYBOARDTYPE=pc KEYTABLE=us rd_NO_MD crashkernel=128M LANG=zh_CN.UTF-8 rd_NO_LVM rd_NO_DM rhgb quietinitrd /initramfs-2.6.32-504.el6.x86_64.img
使用uefi安装:

load_videoset gfxpayload=keepinsmod gzioinsmod part_msdosinsmod xfsset root='hd0,msdos1'if [ x$feature_platform_search_hint = xy ]; then  search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1 --hint='hd0,msdos1'  71415a24-f9bf-4400-96e7-5ad44f1191c5else  search --no-floppy --fs-uuid --set=root 71415a24-f9bf-4400-96e7-5ad44f1191c5filinux16 /vmlinuz-3.10.0-123.el7.x86_64 root=UUID=e6f5e7c9-8928-414a-b937-3a0b7466e64d ro crashkernel=auto vconsole.font=latarcyrheb-sun16 vconsole.keymap=us rd.lvm.lv=rhel_node60/root  rd.lvm.lv=rhel_node60/swap rhgb quiet LANG=zh_CN.UTF-8 intel_pstate=disableinitrd16 /initramfs-3.10.0-123.el7.x86_64.img
3、配置转储路径

默认的vmcore文件存储在/var/crash目录下。

可以修改这个路径,配置文件是/etc/kdump.conf:

path /usr/local/cores            //这里必须要保证这个路径是存在的,否则启动kdump服务会失败
把core dump文件写入一个设备中,把配置文件中的#raw /dev/vg/lv_kdump这一行的#符号去掉然后把后面的改成自己的设备路径,如下:

raw  /dev/sdb1
要把dump文件存储在一个使用NFS协议的远程机器上,把配置文件中的#nfs my.server.com:/export/tmp这行前面的#符号删除,然后后面参数部分替换成自己的主机名和路径名。如下:
nfs penguin.example.com:/export/cores

4、配置kdump动作

当kdump在指定的位置创建core文件失败,root文件系统会被挂在,kdump会试图把dump文件保存在本地。可以通过修改/etc/kdump.conf配置文件修改这个默认操作。修改#default shell这行,然后把shell替换为自己想要的默认动作。例如:

default halt
5、启动kdump服务

在系统boot时候启动kdump服务

systemctl enable kdump.service
现在应该为多用户启用了kdump服务,相对的systemctl stop kdump可以禁用这个服务。在root权限下,使用下面的命令可以使kdump服务在当前会话可用
systemctl enable kdump.service
这里要注意的是当kdump服务启动时候,前面定义为内核转储目标目录必须存在, 否则服务将失败。此时kdump服务已经开启成功了,可以使用下面命令来查看是否开启成功。
systemctl status kdump.service








原创粉丝点击