FreeBSD 崩溃转储与社区贡献指南
1. 崩溃转储处理流程
当 FreeBSD 系统发生崩溃时,系统会运行 crashinfo(8) 从转储文件中收集信息,清除交换空间中的转储文件,然后继续重启。此时,你将获得一个可用于调试的内核核心文件。
savecore(8) 会自动将内核转储文件存放在 /var/crash 目录下。每次崩溃的转储文件名为 vmcore 加上一个句点和编号,例如第一次崩溃的文件是 vmcore.0 ,第二次是 vmcore.1 ,依此类推。FreeBSD 默认保留最近的 10 个崩溃转储文件, vmcore.last 文件始终指向最近的崩溃转储文件。
如果 /var 分区空间不足以存放转储文件,可以在 rc.conf 中使用 dumpdir 变量指定其他目录,示例如下:
dumpdir="/usr/crash"
FreeBSD 默认会对每个恢复的崩溃转储文件运行 crashinfo(8) 。该程序会运行一系列调试脚本,从崩溃信息中收集数据,并将其存储在一个方便的文本文件 core.txt.0 中,这些信息包括崩溃回溯、进程列表以及大量的虚拟内存统计信息。
超级会员免费看
订阅专栏 解锁全文
9

被折叠的 条评论
为什么被折叠?



