BUG:使用/var/log/messages初步定位软件莫名退出问题

BUG:使用/var/log/messages定位问题

1、/var/log/目录下文件和目录简介

/var/log/messages    # 包括整体系统信息,也包含系统启动期间的日志。此外,mail,cron,daemon,kern和auth等内容也记录在此日志中;
/var/log/dmesg    #包含内核缓冲信息(kernel ring buffer)。在系统启动时,会在屏幕上显示许多与硬件有关的信息。可以用dmesg查看它们;
/var/log/auth.log    # 包含系统授权信息,包括用户登录和使用的权限机制等;
/var/log/boot.log    # 包含系统启动时的日志;
/var/log/daemon.log    # 包含各种系统后台守护进程日志信息;
/var/log/dpkg.log    # 包括安装或dpkg命令清除软件包的日志;
/var/log/kern.log    # 包含内核产生的日志,有助于在定制内核时解决问题;
/var/log/lastlog    # 记录所有用户的最近信息。这不是一个ASCII文件,因此需要用lastlog命令查看内容;
/var/log/maillog /var/log/mail.log    # 包含来着系统运行电子邮件服务器的日志信息。例如,sendmail日志信息就全部送到这个文件中;
/var/log/user.log    # 记录所有等级用户信息的日志;
/var/log/Xorg.x.log    # 来自X的日志信息;
/var/log/alternatives.log    # 更新替代信息都记录在这个文件中;
/var/log/btmp    # 记录所有失败登录信息。使用last命令可以查看btmp文件。例如,”last -f /var/log/btmp | more“
/var/log/cups    # 涉及所有打印信息的日志;
/var/log/anaconda.log    # 在安装Linux时,所有安装信息都储存在这个文件中;
/var/log/yum.log    # 包含使用yum安装的软件包信息;
/var/log/cron    # 每当cron进程开始一个工作时,就会将相关信息记录在这个文件中;
/var/log/secure    # 包含验证和授权方面信息。例如,sshd会将所有信息记录(其中包括失败登录)在这里;
/var/log/wtmp 或 /var/log/utmp    # 包含登录信息。使用wtmp可以找出谁正在登陆进入系统,谁使用命令显示这个文件或信息等;
/var/log/faillog    # 包含用户登录失败信息。此外,错误登录命令也会记录在本文件中;

有很多文件和目录因不同机器而不同,望知晓。

2、遇到的问题,linux软件异常退出,日志中没有显示出异常问题

找到/var/log/messages文件,找到意外退出的大概时间点

在这里插入图片描述

messages中详细的显示了dump的ip和sp位置和应用退出的原因:收到了SIGSEGV信号而导致的退出

下面我们只需要定位libc.so.6这个包的问题

3、定位libc.so.6异常问题

segfault at 13 ip 00007f8f04b25ff4 sp 00007f8e2afc3920 error 4 in libc.so.6[7f8f04aa4000+1c4000]

其中7f8f04aa4000为libc.so.6库加载在内存中的初始位置,ip表示指令寄存器,sp表示栈寄存器

我们使用ip的地址 - 初始地址 = 0x00007f8f04b25ff4 - 0x7f8f04aa4000 = 0x81ff4获取到相对位置

[root@localhost home]# objdump -tT libc.so.6  | grep 081f
0000000000081f80 l     F .text  0000000000000f2c              _int_malloc

这里grep使用的是81f,找到对应的函数为_int_malloc函数导致的问题,但是还是不清楚到底是代码的哪里调用了这个函数,我们需要开启dump来再次捕获问题。

4、问题解决

没有用到dump而是由于我们机器的内核升级导致的libc.so.6指向的是旧版本的内核,新版本为libc-2.17.so,重新软连接就解决了。当然具体问题具体分析啊。

参考blog:

https://blog.csdn.net/xp178171640/article/details/124598568

https://blog.csdn.net/xiejianjun417/article/details/115624163

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值