21.2. 使用内核转储记录应用程序崩溃
要记录应用程序崩溃,请设置核心转储保存并添加系统信息。
步骤
启用内核转储。编辑文件
/etc/systemd/system.conf,并将包含DefaultLimitCORE的行改为以下内容:DefaultLimitCORE=infinity
DefaultLimitCORE=infinityCopy to Clipboard Copied! Toggle word wrap Toggle overflow 重启系统:
shutdown -r now
# shutdown -r nowCopy to Clipboard Copied! Toggle word wrap Toggle overflow 删除内核转储大小的限制:
ulimit -c unlimited
# ulimit -c unlimitedCopy to Clipboard Copied! Toggle word wrap Toggle overflow 要反转这个更改,请运行值为 0 的命令,而不是 无限。
- 当应用程序崩溃时,会生成一个内核转储。内核转储的默认位置是应用在崩溃时的工作目录。
创建 SOS 报告以提供有关系统的更多信息:
sosreport
# sosreportCopy to Clipboard Copied! Toggle word wrap Toggle overflow 这将创建一个 tar 存档,其中包含系统的相关信息,如配置文件副本。
将核心转储和 SOS 报告传送到要进行调试的计算机。如果已知,也传输可执行文件。
重要如果可执行文件未知,则后续的对核心文件的分析将识别该文件。
- 可选:在传输内核转储和 SOS 报告来释放磁盘空间后,请删除它们。