systemd-coredump

简介: systemd-coredump

systemd-coredump@.service 是一个系统服务, 它能从操作系统内核中获取内存转储,并能对获取到的数据进行各种处理。该服务的功能实际由 systemd-coredump 可执行程序实现,该程序被先后调用两次:第一次被操作系统内核作为内存转储处理器调用; 第二次被 systemd-coredump@.service 服务调用, 用于将获取到的数据写入文件或日志中。

当操作系统内核调用 systemd-coredump 来处理内存转储时, 它将以特权模式运行,并连接到 systemd-coredump.socket 单元创建的套接字上,接着再派生一个非特权模式的 systemd-coredump@.service 实例来处理所获取的内存转储。可见, systemd-coredump.socket 与 systemd-coredump@.service 是为了实现对内存转储进行统一管理而 专门设置的辅助单元。

内存转储既可以保存到日志中,也可以保存到单独的文件中, 以便于将来被例如 gdb(1) 这样的工具做进一步的分析和处理。

默认情况下,systemd-coredump 会把内存转储事件以及可能存在的回溯(backtrace)保存到日志中, 同时把内存转储自身的数据(内存镜像)保存到外部的 /var/lib/systemd/coredump/ 目录中。

进程在接收到信号后的行为 取决于某些特定的因素, 特别需要注意的是,仅在相关系统资源充足且未超出资源限制的前提下,才会进行内存转储操作。

如果在调用 systemd-coredump 时使用了 --backtrace 选项,那么在 systemd-coredump 的标准输入(STDIN)上必须存在一条符合 Journal Export Format 格式的日志,这条日志必须包含一个 MESSAGE= 字段, 并且任何其他元数据字段在调用者看来都必须是合情合理的。 systemd-coredump 将会按照它自己从内核中接收内存转储的方式,在这条日志中添加额外的元数据字段。 注意,在这种模式下,内存转储将不会保存在日志中。


相关实践学习
【涂鸦即艺术】基于云应用开发平台CAP部署AI实时生图绘板
【涂鸦即艺术】基于云应用开发平台CAP部署AI实时生图绘板
相关文章
|
NoSQL 安全 Linux
Linux 中 core dump 文件的作用和使用方法
Linux 中 core dump 文件的作用和使用方法
3066 1
|
JavaScript 前端开发 Java
正则表达式深度解析:匹配任意字符串
【4月更文挑战第1天】
8233 0
|
程序员 Linux Docker
使用Docker本地安装部署Draw.io绘图工具并实现远程访问协作办公
使用Docker本地安装部署Draw.io绘图工具并实现远程访问协作办公
|
存储 NoSQL Linux
《探索 Linux 命令:systemd-coredumpctl》
**《systemd-coredumpctl概览》** `systemd-coredumpctl`, Linux中管理&分析core dump的利器。集中管控systemd生成的转储,详述crash细节。用`--list`查看所有转储,`--info <ID>`深入单一转储。需注意权限、存储管理,配gdb深化分析。精通此命令,加速问题诊断。#LinuxTips #CoreDumpAnalysis
|
监控 Shell Linux
清理旧的 core dump 文件
【10月更文挑战第1天】
1402 2
|
存储 安全 Linux
调整 core dump 的存储位置或限制
【10月更文挑战第1天】
1722 2
|
运维 NoSQL Ubuntu
深入理解Linux中的"crash"命令:内核崩溃的调试利器
`crash`是Linux内核崩溃调试工具,用于分析内核崩溃转储文件,提供GDB-like的交互式CLI。通过加载`vmcore`文件和内核映像,管理员可以查看系统状态、调用栈、内存布局等。安装`crash`可使用包管理器,如`apt-get`或`yum/dnf`。尽管有学习曲线且依赖转储文件,但`crash`在系统故障排查中极其重要。
|
SQL 运维 关系型数据库
阿里云DTS踩坑经验分享系列|数据不一致修复大法
阿里云数据传输服务DTS在帮助用户迁移数据、同步数据时,在某些复杂场景下会出现源库与目标库数据不一致的问题,造成数据错误,给用户带来困扰。由于数据不一致的问题很难完全避免,为了及时修复不一致的数据,DTS产品推出数据订正功能,保障用户在同步\迁移数据时的数据一致性。本文介绍了产生数据不一致的一些典型场景,并重点阐述了如何使用DTS数据订正功能来修复不一致的数据。
1564 4
|
运维 Linux Apache
Docker详解(八)——Docker镜像制作
Docker详解(八)——Docker镜像制作
672 1