百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术文章 > 正文

系统崩溃怎么办?教你开启麒麟系统崩溃日志功能

nanshan 2025-05-26 17:44 17 浏览 0 评论

原文链接:「链接」

Hello,大家好啊!今天给大家带来一篇麒麟终端操作系统上安装配置 Kdump 的文章。在日常使用过程中,系统如果发生崩溃(Kernel Panic),将可能导致工作中断甚至数据丢失。为了及时获取崩溃现场信息,分析故障根源,我们可以使用 Linux 内核自带的 Kdump 崩溃转储机制。本篇文章将手把手教大家如何在麒麟终端系统中正确安装、配置并启用 Kdump,让系统在关键时刻拥有“黑匣子”一样的应急记录能力!欢迎大家分享点赞,点个在看和关注吧!


什么是 Kdump?

Kdump 是 Linux 提供的一种内核崩溃转储机制。当系统发生致命错误(如内核崩溃)时,会自动重启到一个事先准备好的最小内核(crash kernel)环境,并将出错时的内存镜像(vmcore)保存下来,供日后排查分析使用。


1.安装软件

pdsyw@pdsyw1024:~/桌面$ sudo apt install linux-crashdump apport crash -y

linux-crashdump:提供开启和使用 kdump(内核崩溃转储)的支持。

apport:Ubuntu 的故障报告工具,可以收集并上报崩溃信息。

crash:内核转储分析工具,用于分析生成的 vmcore 文件。

-y:在安装过程中自动回答“是”,无需再次手动确认。


2.选择是


3.选择是


4.编辑日志文件存储位置

pdsyw@pdsyw1024:~/桌面$ sudo vim /etc/default/kdump-tools 

输入密码     

pdsyw@pdsyw1024:~/桌面$ grep KDUMP_CORE /etc/default/kdump-tools 

# KDUMP_COREDIR - local path to save the vmcore to.

KDUMP_COREDIR="/var/crash"

KDUMP_COREDIR="/var/crash"


/etc/default/kdump-tools 文件中包含了 kdump-tools 的默认配置,如转储保存路径、启动选项等。

KDUMP_COREDIR="/var/crash" 指定内核崩溃转储文件(vmcore)要保存到 /var/crash 目录下。

grep KDUMP_CORE 用于查看文件中的 KDUMP_COREDIR 行,确认其配置值。



5.编辑crashkernel大小

pdsyw@pdsyw1024:~/桌面$ sudo vim /etc/default/grub.d/kdump-tools.cfg 

pdsyw@pdsyw1024:~/桌面$ cat /etc/default/grub.d/kdump-tools.cfg 

GRUB_CMDLINE_LINUX_DEFAULT="$GRUB_CMDLINE_LINUX_DEFAULT crashkernel=512M"


这条配置会追加在系统的内核启动参数中。 在
/etc/default/grub.d/kdump-tools.cfg 文件中,设置了 crashkernel=512M。

这表示在内核启动时,预留 512MB 内存给 kdump 使用,一旦出现内核崩溃,kdump 会利用这部分预留的内存来生成转储文件。


常见的经验/参考值

小内存系统(少于 4GB):一般设置为 crashkernel=256M 或者 crashkernel=384M 即可。

中等内存系统(4GB~16GB 左右):可以设置为 crashkernel=512M,对于大部分场景足以完成转储操作。

大内存系统(16GB 以上):通常可适当增大到 crashkernel=1G 或更多,比如 crashkernel=2G。在非常高内存(上百 GB)场景中,如需完全转储所有内存,可能需要预留更多。

使用 auto 或 auto指定值(某些发行版支持):某些发行版(如 RHEL/CentOS 7+)支持在 grub 中配置 crashkernel=auto,系统会根据总内存自动计算预留大小。Ubuntu 默认并不一定启用这个功能,但可以查看发行版文档。



6.更新grub

pdsyw@pdsyw1024:~/桌面$ sudo update-grub


更新 grub 的配置文件使前一步的 crashkernel 参数生效。

update-grub 会读取 /etc/default/grub 及相关 grub.d 目录内容,生成最终的 /boot/grub/grub.cfg。


7.关机并且重启

需要重启系统,才能使新设置的内核启动参数(如 crashkernel=512M)真正生效。



8.查看cmdline

pdsyw@pdsyw1024:~/桌面$ cat /proc/cmdline 


cat /proc/cmdline 显示当前正在运行的内核所使用的启动参数。

如果您看到其中含有 crashkernel=512M,说明上面的配置和重启已生效。


9.查看kdump配置

pdsyw@pdsyw1024:~/桌面$ kdump-config show


kdump-config 是管理 kdump 的工具,可以查看或控制其运行状态、配置等。

show 子命令会列出当前的 kdump 设置,例如:

是否启用 kdump

内存保留大小

转储存放路径

内核启动参数等



10.查看kdump-tools状态

pdsyw@pdsyw1024:~/桌面$ systemctl status kdump-tools

检查 kdump-tools 服务是否处于激活状态,如果正常配置并运行,状态应该是 active 或类似状态。

如果未启动,可以使用 sudo systemctl start kdump-tools 来启动。


11.打开sysrq功能

pdsyw@pdsyw1024:~/桌面$ sudo sysctl -w kernel.sysrq=1

输入密码     

kernel.sysrq = 1

pdsyw@pdsyw1024:~/桌面$ sudo sysctl -a |grep kernel.sysrq

kernel.sysrq = 1


sysrq(Magic SysRq Key)是 Linux 内核提供的一种紧急控制机制,可以通过 /proc/sysrq-trigger 来触发某些内核操作。

sysctl -w kernel.sysrq=1 表示允许通过 sysrq 触发一系列特殊操作(包括模拟崩溃)。

sudo sysctl -a | grep kernel.sysrq 查看当前 sysrq 的设置值是否为 1(已启用)。


12.模拟内核崩溃

pdsyw@pdsyw1024:~/桌面$ sudo -i

root@pdsyw1024:~# echo c > /proc/sysrq-trigger


切换到 root(sudo -i),然后执行 echo c > /proc/sysrq-trigger,这是一个触发命令,会让内核“主动”崩溃。

当系统收到这个命令,kdump 会在您之前预留的内存空间中启动第二内核,并生成转储文件(vmcore)。

警告:这条命令会直接导致系统崩溃重启,不要在生产环境随意使用。



13.查看日志

pdsyw@pdsyw1024:~/桌面$ cd /var/crash/

重启后,可以在 /var/crash 目录中查看是否生成了崩溃转储文件以及相关的日志信息。

如果成功捕获内核转储,会在这里看到相应的文件或目录。



通过安装并配置 Kdump,麒麟终端操作系统在面对突发内核崩溃时,就能像飞机“黑匣子”一样记录“事故现场”,为后续分析故障提供第一手资料。对于企业级用户、开发者、测试人员来说,这无疑是提高系统可靠性的重要手段。如果您觉得这篇文章对您有帮助,欢迎分享点赞,记得点个在看和关注哦!

相关推荐

微软发布Win11/10 ISO镜像Defender更新,提升系统初始安全性

IT之家7月27日消息,除了Setup及WinRE更新外,NeoWin发现微软本周还针对Windows11/10/Server安装镜像发布了新的Defender安全智能...

微软革新Windows装机体验:内置应用全面升级,安全与便捷双提升

Windows内置应用迎来重大变革:更安全、更快速的初始体验如果您曾亲自安装过Windows11,或许注意到其内置应用并非开箱即用,而是一些占位程序,需要首次运行时从微软应用商店(Microsoft...

Hotpatch继续扩展 现在更多Windows PC在更新后无需重启

Windows11最近从其服务器版本中获得了一项非常重要的功能:Windows热补丁。该功能旨在通过允许操作系统在无需重启的情况下安装重要的安全更新来最大限度地减少停机时间和中断。最初,微软在...

微软承认Windows Server六月更新存在BUG:导致DHCP服务器故障

IT之家6月17日消息,科技媒体WindowsLatest今天(6月17日)发布博文,报道称微软承认6月WindowsServer更新存在BUG,可能导致DHCP服...

Windows Server2019安装Hyper-V的2个简单方法!

关于WindowsServer2019WindowsServer2019是微软发布的服务器操作系统,是WindowsServer2016的后续版本。它包含了许多新的特性和改进,适用于数据中心...

如何在不满足系统要求的旧计算机上安装 Windows 11 24H2

如果你想了解这个安装工具以及安装方法(老飞摄影微信公众号内提供安装包下载),请完整的看完后面的文字,以避免在安装过程当中出现问题。Windows11通常需要某些硬件功能,例如TPM和安全启动,...

第 137 期:微软表示 Windows 11 24H2 是迄今为止最稳定的版本

就在刚刚,微软“大言不惭”地声称,Windows1124H2是迄今为止最可靠的Windows版本。我们并不是说它很糟糕,因为我们每天的工作中也在使用它。上述言论只是一份微软的一份官方文件的一...

Windows 11 将推出带有“高级”选项的新设置页面

Windows11即将迎来一个包含一些高级功能的全新“设置”页面。严格来说,它并非全新功能。它更像是“开发者”栏目的重新设计,用户和开发者可以在其中调整各种附加功能。微软可能明白这些东西不仅对开发...

Windows server 2025 重复数据删除

一、概述windowsserver中的重复数据删除功能从windowsserver2012就开始支持了。Windowsserver中默认没有安装重复数据删除功能。在磁盘分区(卷)上启用重复...

Windows Server 2025预览版迎来更新,微软改善Insiders测试体验

在发布WindowsServer的build26040版本之际,微软公布了该产品的官方名称:WindowsServer2025。一同推出的,还有Windows11WindowsInsid...

升不升?Win11 24H2大范围推送了

微软在其官方支持文档中宣布,24H2版现在已经开始向运行Windows11原始版本、22H2和23H2版的合格设备推送。Windows11的24H2更新现已进入新的可用性阶段,这意味着更多符合条件...

微软发布Win11/10/Server安装镜像Defender更新

IT之家6月22日消息,继上个月为Lumma发布更新后,微软本月也为Windows11/10/Server安装镜像发布了新的Defender更新。此更新包很有必要,因为Wi...

第 81 期:微软最近的更新给 Windows Server 带来了 DHCP 问题

近日,微软确认,DHCP服务器服务可能会在WindowsServer安装2025年6月更新后停止响应或拒绝连接。DHCP问题会影响WindowsServer2025(KB50...

windws server 2012 R2 虚拟机windows server2019 经常断网事件

故障现象:在windowsserver2012R2的虚拟主机上面搭建一个Windowsserver2019的虚拟机系统用来做域控。安装完设置好防火墙和IP,经过测试是可以ping同正常访问...

微软扩展热补丁部署,现覆盖ARM架构Win11 24H2设备

IT之家7月9日消息,科技媒体NeoWin今天(7月9日)发布博文,报道称微软扩大热补丁(WindowsHotpatching)覆盖范围,在AMD和英特尔处理器设备外,现覆盖支...

取消回复欢迎 发表评论: