本文目录导读:

服务器重启(非计划内)是一个非常严重的故障信号,要排查原因,核心思路是先救火(恢复服务),后验尸(分析根因)。
如果服务器正在发生重启(或已经停机),请按照以下顺序进行排查:
第一阶段:紧急处置与现场保全
目的:尽快恢复业务,同时保留用于分析问题的事实证据。
-
切断自动拉起机制:如果服务器是容器或虚拟机,并且设置了自动重启或高可用(HA,High Availability)策略(如 Kubernetes、vSphere),在查明原因前,先暂停自动恢复,防止服务器“反复去世”导致日志被覆盖或引发二次故障。
-
收集最后一次启动前的现场信息(最关键的证据):
- 操作系统日志:这是最重要的证据,在 Linux 中,查看核心日志:
# 查看上次关机或重启前几分钟的日志(建议使用 journalctl) journalctl -xe | grep -i -E "error|crash|kernel|oom|shutdown|reboot|panic" # 或者查看 last 命令记录的重启时间点 last reboot # 如果是硬件/内核问题,看 dmesg 输出 dmesg | grep -i -E "error|panic|critical" # 老系统可能是 /var/log/messages tail -100 /var/log/messages
- 硬件健康日志:如果服务器未完全死机,立即查看硬件状态:
# 查看硬件故障 (IPMI/BMC 工具) ipmitool sel list # 查看硬盘 SMART 信息 smartctl -a /dev/sda # 查看内存错误 (mcelog) cat /var/log/mcelog # 如果启用
- 应用日志:在日志被覆盖前,备份最近的 Web 服务器(Nginx/Apache)、数据库(MySQL/PostgreSQL)、Java 应用日志等。
- 操作系统日志:这是最重要的证据,在 Linux 中,查看核心日志:
第二阶段:分类排查(按可能性从高到低)
根据经验,服务器重启的根因通常集中在以下几类:
硬件故障(最常见原因之一)
- 电源问题:电源模块(PSU,Power Supply Unit)故障、功率不足、线缆松动,表现为瞬间掉电重启。
- 内存故障:不可纠正的内存错误(Uncorrectable Memory Error)。
dmesg或mcelog中会看到大量corrected/uncorrected error,这是导致随机、无规律重启的头号元凶。 - CPU过热:散热器堵塞、风扇停转、硅脂干透。
dmesg中会有thermal相关警告,或sensors命令显示温度过高。 - 主板/芯片组:电容爆浆、供电模块损坏,通常需要查看 BMC/IPMI(基板管理控制器,智能平台管理接口)日志。
操作系统/内核问题
- 内核恐慌:
Kernel Panic,日志中会有panic字样,通常由驱动程序冲突、文件系统损坏或根因在硬件。 - 系统配置错误:如
/etc/fstab配置错误导致挂载失败,系统无法启动(循环重启),通常可以通过单用户模式修复。 - 关键服务冲突:
systemd配置死循环,或者某个服务疯狂申请资源导致系统僵死。
资源耗尽(OOM,Out-Of-Memory,内存溢出)
- Out of Memory Killer:物理内存和 Swap 都耗尽时,系统会杀掉进程,但如果杀不掉关键进程(如 systemd),或者杀进程的速度赶不上内存泄露的速度,系统会直接重启。
# 检查是否有 OOM Killer journalctl -xe | grep -i "oom" journalctl -xe | grep -i "out of memory"
- 磁盘空间满:特别是
/var、/tmp、 目录,系统某些核心服务(如 cron、 syslog)无法写入日志可能导致异常。
应用/人为因素
- 定时任务(Cron)或脚本:检查
/etc/cron*和crontab -l,是否有运维脚本、监控脚本或调皮同事写的shutdown -r或reboot命令? - 系统更新:近期是否安装了新的内核或驱动?有些补丁可能需要重启,但如果是自动安装的,可能触发了重启。
- SSH/远程指令:检查
/var/log/auth.log或secure日志,看是否有可疑的su、ssh登录后执行了关机/重启命令。 - Web控制台误操作:云厂商(AWS、阿里云、腾讯云)或机房 IPMI 控制台上,是否有误点击了重启?
第三阶段:针对不同重启情况的专项排查
情况 A:无规律、间隔不定的随机重启
- 核心嫌疑:硬件(内存、CPU 过热、电源)、内核 Bug。
- 动作:
- 运行
memtest86+(内存诊断工具) 24 小时以上,检测内存错误。 - 查看 BMC/IPMI 事件日志(SEL,System Event Log,系统事件日志),看是否有
Power Supply Failure、Hardware Monitor、FAN failure等记录。 - 检查
/var/log/中是否有mcelog记录。
- 运行
情况 B:固定时间点重启(如每天凌晨 2:00、每周三 3:00)
- 核心嫌疑:定时任务、系统备份脚本、杀毒软件扫描。
- 动作:
crontab -l查看所有用户的定时任务。- 检查
/etc/cron.d/、/etc/cron.daily/、/etc/cron.hourly/。 - 查看该时间点的系统日志,看是否有备份服务(如
rsync)、重启脚本或yum-cron等自动更新工具在运行。
情况 C:负载飙升后重启(如流量高峰时)
- 核心嫌疑:内存溢出(OOM,Out-Of-Memory)、CPU 过载导致温度升高。
- 动作:
- 检查
dmesg日志看是否有oom-killer记录。 - 检查系统指标监控(如 Prometheus + Grafana)在重启前的 CPU、内存、磁盘 IO、网络连接数曲线,是否是程序出现死循环或内存泄露。
- 检查
第四阶段:无法启动到系统(系统盘损坏)的处理
如果服务器直接启动不了,会进入 GRUB Rescue 或者挂载失败:
- 进入救援模式:
- 物理机/虚拟机:使用系统安装盘 Live CD 启动。
- 云服务器:控制台通常有“救援模式”或“VNC 登录”。
- 挂载根分区:挂载系统盘到
/mnt。 - 查看日志:在
/mnt/var/log/或/mnt/var/log/messages查看最后的日志。
排查 Checklist(按顺序)
- 立即备份日志:
/var/log/messages、/var/log/syslog、/var/log/kern.log、dmesg。 - 查询硬件事件:
ipmitool sel list(有 BMC 的话)。 - 定位重启命令来源:
last reboot|last -x(查看 runlevel 变化)。 - 排除内存问题:检查
mcelog或dmesg。 - 排除 OOM:检查
dmesg或journalctl中是否有oom-killer。 - 排除定时任务:
crontab -l各用户及/etc/crontab。 - 检查应用日志:查看重启前 5-10 分钟的应用错误记录(通常是 Java OOM、数据库死锁、Nginx worker 崩溃等)。
- 检查硬件温度(如果还能启动):
sensors命令。
最终建议:如果多次出现不明原因重启,且日志中只有模糊的 Kernel panic - not syncing 而没有明确驱动报错,优先考虑更换内存条(内存错误症状最像“随机重启”)。
版权声明:NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
足球直播
足球直播
足球直播
篮球直播
篮球直播
篮球直播
NBA直播
NBA直播
NBA直播
CBA直播
CBA直播
CBA直播
亚冠直播
亚冠直播
亚冠直播
欧冠直播
欧冠直播
欧冠直播
英超直播
英超直播
英超直播
西甲直播
西甲直播
西甲直播
中超直播
中超直播
中超直播
足球直播
足球直播
足球直播
篮球直播
篮球直播
篮球直播
NBA直播
NBA直播
NBA直播
CBA直播
CBA直播
CBA直播
亚冠直播
亚冠直播
亚冠直播
欧冠直播
欧冠直播
欧冠直播
英超直播
英超直播
英超直播
西甲直播
西甲直播
西甲直播
中超直播
中超直播
中超直播
足球直播
足球直播
足球直播
篮球直播
篮球直播
篮球直播
NBA直播
NBA直播
NBA直播
CBA直播
CBA直播
CBA直播
亚冠直播
亚冠直播
亚冠直播
欧冠直播
欧冠直播
欧冠直播
英超直播
英超直播
英超直播
西甲直播
西甲直播
西甲直播
中超直播
中超直播
中超直播
足球直播
足球直播
足球直播
篮球直播
篮球直播
篮球直播
NBA直播
NBA直播
NBA直播
CBA直播
CBA直播
CBA直播
亚冠直播
亚冠直播
亚冠直播
欧冠直播
欧冠直播
欧冠直播
英超直播
英超直播
英超直播
西甲直播
西甲直播
西甲直播
中超直播
中超直播
中超直播
曼联直播
曼联直播
曼联直播
日职联直播
日职联直播
日职联直播
澳超直播
澳超直播
澳超直播
阿森纳直播
阿森纳直播
阿森纳直播
足球直播
足球直播
足球直播
NBA直播
NBA直播
NBA直播
曼联直播
曼联直播
曼联直播
日职联直播
日职联直播
日职联直播
澳超直播
澳超直播
澳超直播
阿森纳直播
阿森纳直播
阿森纳直播
足球直播
足球直播
足球直播
NBA直播
NBA直播
NBA直播
曼联直播
曼联直播
曼联直播
日职联直播
日职联直播
日职联直播
澳超直播
澳超直播
澳超直播
阿森纳直播
阿森纳直播
阿森纳直播
足球直播
足球直播
足球直播
NBA直播
NBA直播
NBA直播
曼联直播
曼联直播
曼联直播
日职联直播
日职联直播
日职联直播
澳超直播
澳超直播
澳超直播
阿森纳直播
阿森纳直播
阿森纳直播
足球直播
足球直播
足球直播
NBA直播
NBA直播
NBA直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
足球直播
足球直播
足球直播
足球直播
足球直播
英超直播
英超直播
英超直播
英超直播
英超直播
篮球直播
篮球直播
篮球直播
篮球直播
篮球直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
中超直播
中超直播
中超直播
中超直播
中超直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
足球直播
足球直播
足球直播
足球直播
足球直播
英超直播
英超直播
英超直播
英超直播
英超直播
篮球直播
篮球直播
篮球直播
篮球直播
篮球直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
中超直播
中超直播
中超直播
中超直播
中超直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播