请教如何分析 Linux 系统意外重启

2020-01-12 19:55:56 +08:00
 king1688888888
单位很偶尔会有服务器无故重启,操作系统为 RHEL6,自己总结了一些经验,想请大家补充和分享更好的思路,谢谢。

1.输入 last reboot 看重启时间,之后翻查 /var/log/messages,看重启时间之前有什么致命报错;
2.使用 sosreport、xsos 相关工具,查看 CPU、内存等资源是否不足,排查计划任务等。
9718 次点击
所在节点    Linux
19 条回复
mikeguan
2020-01-12 23:23:28 +08:00
需要排查下硬件情况,特别是内存 /硬盘是否报错,有条件还是去机房看下具体情况比较好
king1688888888
2020-01-12 23:29:17 +08:00
@mikeguan 嗯假设是硬件没有任何告警的情况下,单纯从操作系统上分析。
sean10
2020-01-12 23:48:27 +08:00
抓内核日志,看是不是内存页访问报错
flowercoder
2020-01-13 00:09:56 +08:00
我能想到的是不知道你那服务器有没有管理口,进入设置的地方把日志打开,把日志记录打开,等着问题再度复现咯。
还有就是看看 corntab 有没有什么自动重启的设定咯 /有没有人远程操作关机呢?还有能想到的就是电源问题了,双电还是单电?电源是做冗余的吗?有条件的换个电源看看。另外系统有条件用 vcenter 管理,重要的服务器可以在做好服务器群组后做 HA
ysc3839
2020-01-13 00:26:23 +08:00
把 Linux 的 console 改成串口,然后外接一个设备记录串口输出内容?假如是 kernel panic 导致的重启,重启后也许不会留下任何信息。这种情况可能没什么好办法。
Enya
2020-01-13 01:03:35 +08:00
配 kdump 服务,抓 vmcore,用 crash 分析。这才是标准操作啊。

搞 linux 的为什么不上 docs.redhat.com 看专业文档,中文版的都有了。
nevin47
2020-01-13 08:00:23 +08:00
开 crash 看临终遗言和 vmcore,只要能复现的问题分分钟找到原因
xsen
2020-01-13 09:10:16 +08:00
1.若是系统原因导致的重启(包括不限于应用、内核模块或驱动等,及内存泄露或溢出)
基本是可以通过系统日志可以看到端倪。系统或内核日志一般都在 /var/log 下

2.对于可能的内核 crash,建议开启 kdump
其实对于这个,#1 中的日志是可以获取到蛛丝马迹的

通过系统的 uptime 可以初步确定系统重启的时间点,然后结合系统日志,可以初步确定是软件原因(上述的#1/2 )导致的重启

若日志都很正常,那基本是可以确定是硬件的原因,比如电源或别的
MeteorCat
2020-01-13 09:43:35 +08:00
kdump+1
zydrsnuo
2020-01-13 11:06:25 +08:00
除了看日志和 vmcore,还要考虑硬件的问题。
我遇到过两次硬件问题,一次是机柜送风口被遮住了导致温度过高,一次是内存条有问题。
温度监控可以提前添加到 zabbix 之类的监控平台,也可以看 IPMI。
内存检测可以用 memtest 做个可启动优盘。也可以往 /dev/shm 里写数据,同时查看内存错误计数。
查看内存错误计数: grep "[0-9]" /sys/devices/system/edac/mc/mc*/csrow*/ch*ce_count ​
zhao305149619
2020-01-13 11:27:55 +08:00
@Enya 你这,这个要是 kernel panic 才会有 vmcore 啊,并不是标准操作,很多系统 hang 住的情况 kdump 不一定工作.
zhao305149619
2020-01-13 11:29:18 +08:00
IPMI 是直接入口,先排除 messages 有无明显的错误,甚至直接到 /var/crash 看有没有日志,第二看一下 IPMI 是否是硬件错误,最后查看一下是不是 watchdog 导致问题重启.
dorothyREN
2020-01-13 12:20:56 +08:00
rhel 还折腾啥啊,直接 call 技术支持。
lvzhiqiang
2020-01-13 16:16:12 +08:00
服务器型号? 如果在保,直接找厂家帮忙分析下,排除人为设置,一般 Linux 运行都是非常非常稳定的。
lvzhiqiang
2020-01-13 16:16:57 +08:00
@dorothyREN rhel 除非业务非常非常重要,一般很少买技术支持的。
dorothyREN
2020-01-13 17:54:11 +08:00
@lvzhiqiang #15 不买技术支持为什么要用 rhel 呢,centos,ubuntu,suse 不香吗
lvzhiqiang
2020-01-14 08:13:24 +08:00
@dorothyREN 有些只买了一年,后续不买的。 不买的话,但是用 centos 和用 rhel 其实没有区别,一样没有技术支持。只是 rhel 发行版 ,系统相对更成熟的更稳定的。
iceecream
2020-01-20 17:36:21 +08:00
软件:Kdump+crash
硬件直接看 BMC 咯。
mikejson
156 天前
考虑一下电压不稳的情况,或者电源适配器有问题。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/637299

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX