linux 宕机日志在哪

linux宕机日志在“/var/log/”中;linux下的“/var/log/”的log日志,包括message、内核报错日志demsg等;其中sa记录是记录cpu、内存等运行的性能文件;利用sa文件可以查看宕机时CPU和内存情况。

linux 宕机日志在哪

本教程操作环境:linux5.9.8系统、Dell G3电脑。

linux 宕机日志在哪?

linux主机宕机排查思路

原因分析

服务器分类,web服务器,数据库服务器,文件服务器,中间件,其它服务器。

web服务器分析:常见的web应用apache,nginx,IIS等。

宕机原因很多,cpu,内存,IO磁盘,应用BUG,内核BUG,硬件等

系统和内核版本

linux 宕机日志在哪

流程

1.查看宕机的时间记录和历史登陆还有重启时间

last reboot

linux 宕机日志在哪

last -F |grep crash

linux 宕机日志在哪

查看历史登陆有没有异常的用户

last

linux 宕机日志在哪

2.首先查看系统日志。如linux下的/var/log/下的log日志,包括message,内核报错日志demsg等等,sa记录,是记录cpu,内存等运行的性能文件,记录着运行时的cpu的运行状态如图所示。

利用sa文件查看宕机时CPU情况

linux 宕机日志在哪

利用sa文件查看宕机时内存情况

linux 宕机日志在哪

日志量往往很大

还可以进行模糊查询,如

查看报错

tail -200 /var/log/messages |grep "Error" cat /var/log/dmesg |grep "Error"
登录后复制

查看内核崩溃日志

tail -200 /car/log/messages |grep "crash"
登录后复制

查看是否出现OOM,一般会出现kill杀死进程的情况

cat /var/log/messages |grep -i "kill"
登录后复制

还可以查看宕机时间段的日志,查看12月11日15点的日志

cat /vat/log/messages |grep "Feb 11 15*"
登录后复制

3.查看内存使用

free -m,查看swap的使用和内存剩余情况和缓存。如果swap用了,且available也不够了,具体还要查看参数cat /proc/sys/vm/swappiness,如果设置为0,说明内存不够了。

linux 宕机日志在哪

4.查看io和文件系统使用

观察idle和iowait。磁盘读写时会用到缓存,一般为系统内存的40%,但是中间有一个缓冲时间120秒,将要用完这个缓存时,且会等待120秒,才会写入磁盘,在读写频繁的时候容易造成hang住的情况。

linux 宕机日志在哪

查看IO的读写速度,如果很慢说明磁盘性能出现瓶颈。

linux 宕机日志在哪

文件系统使用

linux 宕机日志在哪

5.查看安全日志

安全日志为/var/log/secure,查看history记录,查看是否有人登陆主机并做了恶意动作,例如关机。

linux 宕机日志在哪

6.利用kdump和crash工具分析内核

检查服务器开启了kdump服务,并在/var/crash目录找到了当天生成的vmcore文件,使用crash工具分析vmcore文件。

Kdump 用于对内存镜像的转储,它不但可以转储内存镜像到本地硬盘,还可以将内存镜像通过NFS,SSH 等协议转储到不同机器的设备上。

Kdump 分为两个组件:Kexec 和Kdump。

Kexec 是一种内核的快速启动工具,可以使新的内核在正在运行的内核(生产内核)的上下文中启动,而不需要通过耗时的BIOS 检测,方便内核开发人员对内核进行调试。

Kdump 是一种有效的内存转储工具,启用 Kdump 后,生产内核将会保留一部分内存空间,用于在内核崩溃时通过 Kexec 快速启动到新的内核,这个过程不需要重启系统,因此可以转储崩溃的生产内核的内存镜像。

7.查看服务日志和监控软件

如果在能找到宕机时进程的占用情况,可以根据占用异常的服务查看其日志。

服务日志一般有数据库和web服务,中间件,框架等。

还可以查看监控软件的历史记录图像,找到峰值点和宕机时间点的图像分析如下图。

linux 宕机日志在哪

8.总结

系统宕机的原因很多,需要我们细心的按照流程分析,

linux 宕机日志在哪

linux 宕机日志在哪

© 版权声明
THE END
喜欢就支持一下吧
点赞13 分享
评论 抢沙发