centos 配置kdump crash 之后卡住不重启

本文详细记录了解决kdump重启失败的问题过程,通过重新安装kexec-tools和system-config-kdump包,调整crashkernel配置,并确保正确的.img文件生成,最终实现系统正常重启。

问题描述: 

service kdump status 显示正常

greab 文件也配置了crashkernel=128M

就是 echo c > /proc/sysrq-trigger 系统不重启卡住不动键盘灯闪烁

解决

1、卸载rpm包重新安装 kexec-tools-2.0.0-273.el6.x86_64  和 system-config-kdump-2.0.5-15.el6.noarch两个包,

2、之后 执行service kdump start   这个会看到重新rebuild  initrd-2.6.32-431.el6.x86_64kdump.img  

3、之后设置为开机自启动 chkconfig kdump on

4、之后root

5、启动之后强制宕机 echo c > /proc/sysrq-trigger   可爱的重启界面出现了,在也不是那可恶的两个键盘的灯一直闪烁了哈哈

分析

可能是装系统的时候没有配置为128M和不知道什么原因导致的.img 文件生成的不对所以就不能产生奔溃

 

后来有一次重装了也没有生效之后吧上面的两个包卸载之后执行了 第六条的命令之后成功了,分析可能和yum kernel 有关

也可能之前没有直接重启二十执行了service kdump start 。这次是配置了config之后直接重启的。具体什么原因不清楚。可以依次试试 

  1. kexec-tools
  2. kexec package
  3. kernel-debuginfo //需单独另外安装,yum源里没有
  4. crash analysis package
  5. 安装命令如下
  6. # yum -y install kernel kexec-tools
  7. 最近结果是能用了
### CentOS 7中kdump配置成功后,使用`echo c`测试时系统卡住且无法自动重启的解决方案 在CentOS 7中,如果配置kdump服务并使用`echo c > /proc/sysrq-trigger`进行测试时,系统可能会出现卡住且无法自动重启的问题。以下是一些可能的原因及解决方法: #### 1. 检查内核参数配置 确保内核启动参数中包含正确的kdump相关配置。需要编辑`/etc/default/grub`文件,并在`GRUB_CMDLINE_LINUX`中添加以下参数[^1]: ```bash crashkernel=auto ``` 保存后,重新生成GRUB配置文件并更新引导加载器: ```bash grub2-mkconfig -o /boot/grub2/grub.cfg ``` #### 2. 确认kdump服务状态 检查kdump服务是否正常运行,可以使用以下命令验证其状态并重新加载配置: ```bash systemctl status kdump kdumpctl status ``` 如果服务未启动或配置正确,可以尝试重启kdump服务: ```bash systemctl restart kdump ``` #### 3. 调整crashkernel分配大小 有时默认的crashkernel分配大小可能足以支持当前系统的内存需求。可以通过调整`crashkernel`参数来解决问题。例如,将`crashkernel=auto`替换为显式的内存分配值: ```bash crashkernel=256M ``` 然后重新生成GRUB配置文件并更新引导加载器。 #### 4. 检查存储设备挂载问题 如果kdump目标存储设备(如NFS、本地磁盘等)挂载失败,可能导致系统在触发崩溃卡住。确保目标存储设备已正确挂载并设置为自动挂载[^2]。可以在`/etc/fstab`中添加类似以下的条目: ```plaintext <挂载地址> /var/crash nfs vers=3,timeo=600,nolock 0 0 ``` #### 5. 强制重启机制 如果上述方法均无效,可以考虑通过强制重启机制恢复系统。登录到管理控制台并执行强制重启操作[^3]。需要注意的是,强制重启可能会导致数据丢失或文件系统损坏,因此建议在操作前备份重要数据。 #### 6. 密码重置与插件安装 如果因密码问题无法登录系统以排查故障,可以参考密码重置流程[^4]。对于运行中的云服务器,勾选“自动重启”选项以确保新密码生效后系统能够正常启动。 #### 7. 图形界面排查 对于需要更直观地排查问题的情况,可以安装VNC Server并通过图形界面进行操作[^5]。这有助于快速定位和解决系统卡住的问题。 ```bash sudo apt update sudo apt install tightvncserver ``` ### 示例代码:检查kdump配置 以下是一个简单的脚本,用于检查kdump配置是否正确: ```bash #!/bin/bash # 检查kdump服务状态 status=$(systemctl is-active kdump) if [ "$status" != "active" ]; then echo "kdump服务未启动,请检查配置。" exit 1 fi # 检查crashkernel参数 if ! grep -q "crashkernel=" /proc/cmdline; then echo "内核参数中缺少crashkernel配置,请手动添加。" exit 1 fi echo "kdump配置正常。" ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值