linux设置内存转储,CentOS7配置kdump内存转储

kdump是一种基于kexec的内核崩溃转储技术。kdump需要两个内核,分别是生产内核和捕获内核,生产内核是捕获内核服务的对象,且保留了内存的一部分给捕获内核启动使用。当系统崩溃时,kdump使用kexec启动捕获内核,以相应的ramdisk一起组建一个微环境,用以对生产内核下的内存进行收集和转存。

配置kdump

实验环境:CentOS7

实验内核:linux-3.10.0-514.el7.x86_64

安装kexec-tools

使用kdump服务,必须要用到kexec-tools工具包。1

2sudo yum update

sudo yum install kexec-tools

安装完成之后可以通过kexec -version查看kexec的版本。

配置kdump kernel

需要为kdump kernel配置内存区域,kdump要求系统正常使用时,不能使用kdump kernel所占用的内存。

修改grub文件1vim /etc/default/grub

需要将GRUB_CMDLINE_LINUX=”crashkernel=auto…”中的auto修改为128M。一般设为128M或256M。

更新grub配置

只要更改了grub文件,都需要更改grub配置1sudo grub2-mkconfig -o /boot/grub2/grub.cfg

重启系统1reboot

修改kdump默认配置1vim /etc/kdump.conf

其中,需要注意的三行内容是1

2

3path /var/crash #指定coredump文件放在/var/crash文件夹中

core_collector makedumpfile -c -l -message-level 1 -d 31 #加上-c表示压缩,原文件中没有

default reboot #生成coredump后,重启系统

开启kdump服务1

2systemctl start kdump.service //启动kdump

systemctl enable kdump.service //设置开机启动

测试kdump是否开启

检查kdump开启成功1service kdump status

如下所示,表示开启成功

0ca620eed69b4146e2043afe9b9a1ea1.png

kdump开启成功

手动触发crash1

2#echo 1 > /proc/sys/kernel/sysrq

#echo c > /proc/sysrq-trigger

如果配置成功,系统将自动重启,重新进入系统,可以看到/var/crash文件夹下生成了相应文件,是一个以生成coredump日期为文件名的文件,如图所示:

f2bcac0074cb71863d53a85a560cccff.png

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值