崩溃的错误可能是最烦人的,导致数据丢失、停机和用户沮丧。如果应用程序崩溃更少,那就太好了。
由于机器上下文的复杂性,对于普通用户来说,通常无法在合理的时间内重现崩溃。这并不意味着该错误很少见——它可能只是意味着触发它的事情对于每个用户很少发生(例如 DST 更改)。除非很多用户报告这些错误,否则不太可能修复这些错误。如果报告更多的崩溃会很好。
为了调试崩溃,开发人员需要尽可能多的明确上下文。生成的崩溃报告很好,因为它们通常是详细而准确的。不能期望用户热情地手动观察和报告所有上下文,因此他们经常提交稀疏和错误的信息。
许多应用程序的目标受众不是开发人员或系统管理员,而是普通大众,在家中或工作中。不能期望此类用户知道如何手动收集崩溃信息或安装-dbg软件包,但此类用户生成的报告仍然可用。一些应用程序有自己的崩溃报告工具,但根据我的经验,这些工具很少起作用,当他们报告未能报告错误时,似乎没有任何关于如何手动执行此操作的信息(我已经观察到了这一点) Firefox 和 Flash 的最新版本)。系统范围内生成崩溃报告会很好。
是否有任何类型的崩溃报告生成* 可以全局启用**,而无需安装大量-dbg软件包、阅读每个应用程序的文档或将普通机器减慢到爬行速度?
* 日志、核心转储、堆栈跟踪等
** 不一定适用于init,但至少适用于在典型桌面 Linux 安装上运行的应用程序的重要子集。根据我的经验,GUI 应用程序崩溃的频率是 shell 应用程序的 100 多倍,因此 GUI 应用程序自然会成为焦点。
把这个:
ulimit -c unlimited
Run Code Online (Sandbox Code Playgroud)
进入文件
/etc/配置文件
这可能不适用于所有发行版。
另请阅读这篇文章:
http://en.linuxreviews.org/HOWTO_enable_core-dumps
http://www.akadia.com/services/ora_enable_core.html