# 安装abrt图形用户界面
yum install abrt-desktop
# 安装abrt客户端
yum -y install abrt-cli
# 接收关于 ABRT 检测到的崩溃的电子邮件通知(默认情况下,它会在本地计算机上向 root 用户发送通知。电子邮件目标可以在 /etc/libreport/plugins/mailx.conf 文件中配置)
yum install libreport-plugin-mailx
# 使用 Java 语言编写的应用程序中检测异常
yum install abrt-java-connector
# 启动abrt服务
service abrtd start
# 停止abrt服务
service abrtd stop
# 查看abrt服务状态
service abrtd status
配置文件路径为/etc/abrt/abrt-action-save-package-data.conf,如果想生成core dump文件,修改内容如下:
# 修改1
"OpenGPGCheck = yes" 修改为 "OpenGPGCheck = no"
# 修改2
"ProcessUnpackaged = no" 修改为 "ProcessUnpackaged = yes"
重启abrtd服务
service abrtd restart
全称automatically bug report daemon,自动bug报告守护进程,用于监控应用程序崩溃。当程序发生崩溃时,它将收集的崩溃信息,将信息存于**/var/spool/abrt**路径下。如下所示:
[root@localhost abrt]# pwd
/var/spool/abrt
[root@localhost abrt]# ls
ccpp-2023-10-09-19:54:10-16014 last-ccpp oops-2023-02-24-19:47:25-22800-0
文件及目录说明:
abrt-cli list
abrt-cli rm [文件包]
程序崩溃时产生core dump等文件,方便问题排查与定位。
可能产生大量崩溃报告,占满磁盘空间。
#include
void Func(int *p)
{
*p = 6;
}
int main()
{
int *p = NULL;
Func(p);
return 0;
}
[root@localhost ccpp-2023-10-09-20:05:52-22585]# gdb --core=./coredump --exec=/mnt/hgfs/test/abrtd-test/debug/testAbrtd -q
[New LWP 22585]
Missing separate debuginfo for the main executable file
Try: yum --enablerepo='*debug*' install /usr/lib/debug/.build-id/d1/20328a67
Core was generated by `./testAbrtd'.
Program terminated with signal 11, Segmentation fault.
#0 0x00000000004006be in ?? ()
(gdb) bt
// ...
(gdb)