常见的服务器故障可按 “硬件”“系统”“网络”“应用” 四大维度分类,每种故障都有典型现象和核心特征,便于快速识别:
-
电源与供电故障
- 现象:服务器突然断电、无法开机,电源指示灯不亮或闪烁橙色报警灯。
- 原因:电源模块损坏、机房 UPS 供电中断、电源线接触不良。
-
存储故障
- 现象:系统启动卡在磁盘检测阶段,日志频繁出现 “I/O error”,文件读写缓慢或失败。
- 细分:
- 硬盘物理损坏(有异响、坏道,可用
badblocks工具检测);
- RAID 阵列故障(阵列卡报错,需通过 RAID 管理工具查看降级状态)。
-
内存故障
- 现象:服务器频繁蓝屏 / 死机,启动时蜂鸣器报警(如连续短鸣),系统日志出现 “内存校验错误”。
- 验证:进入 BIOS 查看内存检测结果,或用
memtest86+工具扫描。
-
CPU 与散热故障
- 现象:服务器自动关机(过热保护),CPU 使用率异常飙升且降不下来,机箱风扇噪音突然变大。
- 原因:CPU 风扇损坏、散热硅脂老化、机房环境温度过高(超过 30℃)。
-
系统启动故障
- 现象:开机后停留在 GRUB/LILO 界面(Linux),或显示 “无法找到操作系统”(Windows)。
- 原因:引导扇区损坏(如误删
/boot目录)、分区表错误、系统文件被病毒篡改。
-
资源耗尽故障
- 现象:服务无响应、远程连接超时,基础命令(如
ls)执行缓慢。
- 细分:
- 磁盘满(
df -h显示使用率 100%,多因日志 / 临时文件未清理);
- 内存溢出(
free -h显示可用内存接近 0,多因进程内存泄漏);
- CPU 占满(
top显示某进程 CPU 使用率 100%,如死循环脚本)。
-
权限与配置错误
- 现象:服务启动失败(如
systemctl start nginx报错),日志提示 “Permission denied”。
- 原因:配置文件权限错误(如
nginx.conf被设为777)、服务运行用户(如www-data)无目录访问权。
-
物理连接故障
- 现象:本地能登录但远程无法连接,
ping服务器 IP 超时,网卡指示灯不亮。
- 原因:网线松动 / 断裂、交换机端口故障、网卡硬件损坏(用
ethtool eth0查看网卡状态)。
-
IP 与端口故障
- 现象:
ping通 IP 但服务端口不通(如telnet 192.168.1.1 80失败)。
- 原因:IP 地址冲突(
arp-scan可检测)、端口被防火墙拦截(如firewalld未开放 80 端口)、端口被其他进程占用。
-
DNS 与路由故障
- 现象:能访问 IP 但无法访问域名(如
ping baidu.com失败但ping 180.101.50.242成功)。
- 原因:DNS 服务器配置错误(
/etc/resolv.conf内容异常)、路由表错误(route -n查看默认网关是否正确)。
-
服务启动失败
- 现象:
systemctl status mysql显示 “failed”,日志有 “configuration syntax error”。
- 常见原因:配置文件语法错误(如 Nginx 的
nginx.conf少写分号)、依赖组件缺失(如 Python 库未安装)。
-
服务崩溃与内存泄漏
- 现象:服务运行一段时间后自动退出,重启后暂时恢复,日志无明确错误。
- 典型场景:Java 应用内存泄漏(
jmap查看堆内存)、PHP-FPM 进程数超限。
-
数据库故障
- 现象:连接数据库时报 “Access denied”“Can't connect to MySQL server”。
- 细分:密码错误、最大连接数耗尽(
show variables like 'max_connections')、表损坏(mysqlcheck修复)。
- 看指示灯(硬件故障);
- 查日志(系统 / 应用错误);
- 测资源(CPU / 内存 / 磁盘 / 端口)。