FreeBSD 问题报告与系统崩溃处理指南
1. 问题报告的重要性与原则
在使用 FreeBSD 时,提交完整且有说服力的错误报告至关重要。开发者通常不喜欢处理混乱且难以应对的错误报告,他们甚至期望因处理这类问题而获得报酬。所以,我们的目标是提交一份详尽的错误报告,让开发者觉得与我们合作很轻松。
1.1 避免糟糕的报告
有个笑话提到,更换灯泡时提交错误报告的情况,其中一个错误报告只写了 “太黑了”,这显然是糟糕的问题报告。如果我们的错误报告也如此含糊,就无法有效传达问题。
1.2 报告中修复方案的价值
错误报告中最重要的部分是修复方案。即便我们只有一个临时解决办法,如 “程序在执行此操作时会崩溃,但我可以通过将输出管道传输到某个程序来正常运行”,这也能帮助下一个遇到相同问题的人。如果我们是程序员,查看源代码或许能发现问题。即便无法解决问题,了解系统为何出现这种状况也能提升我们的编程和调试能力。包含修复方案的错误报告不再仅仅是报告,更是对社区的贡献。
1.3 区分推测与证据
提交错误报告时,要将证据和自己的推测分开。证据是可操作的,而推测则不然。虽然包含推测并无坏处,但必须与证据清晰区分。例如,有些用户声称遇到特定问题,但深入调查后发现他们所说的都是错误的,实际情况完全不同。所以,我们不要成为这样的用户。
2. 错误报告的提交流程
所有错误报告都在 https://bugs.FreeBSD.org/ 提交和处理。FreeBSD 的错误分为三类:ports(附加