运维老手的每日检查清单:10分钟搞定服务器巡检

运维老手的每日检查清单:10分钟搞定服务器巡检

你每天登录服务器,第一件事做什么?

大部分人什么都不做。等出问题了,才上去看。那时候看已经晚了。磁盘快满了你不知道,证书要过期了你不知道,某个服务挂了半小时你才知道。

每天花10分钟巡检,能避免90%的突发故障。不是你有超能力,是你比故障早一步发现问题。

今天给你一份每日检查清单,照着做,10分钟搞定。


先看一个数据

某云厂商统计,超过60%的服务器故障在爆发前24-48小时就有征兆。磁盘使用率从60%涨到90%,用了两周。内存从50%涨到80%,用了一周。慢查询从每天100条涨到1000条,用了三天。

不看监控,就看不到这些曲线。每天都看,你就有了预警能力。


第1分钟:看负载和CPU

bash

uptime

输出:load average: 0.5, 0.8, 0.6

三个数字分别是1分钟、5分钟、15分钟的平均负载。负载不应该持续超过CPU核心数。4核CPU,负载持续大于4,说明忙不过来了。

bash

top -bn1 | head -5

看CPU使用率。%us是用户态,%sy是内核态,%id是空闲。如果%id经常低于20%,CPU紧张。如果%wa(I/O等待)持续超过10%,磁盘可能是瓶颈。

什么情况要警惕:负载比昨天同一时间高30%以上;CPU空闲低于20%且持续;某个陌生进程占满CPU(可能被挖矿了)。


第2分钟:看内存

bash

free -h

available那一列,这是真正可用的内存。available长期低于总内存的20%,说明内存紧张。Swap used长期大于0,说明内存不够用了,正在用磁盘当内存,速度会暴跌。

什么情况要警惕:可用内存低于20%;Swap used持续增长;某个进程内存泄漏(一天比一天高)。


第3分钟:看磁盘

bash

df -h

Use%列。超过80%要关注,超过90%要马上处理。哪个分区满了?

bash

du -sh /var/log/

日志目录通常是磁盘爆满的元凶。

什么情况要警惕:磁盘使用率一周涨了10%以上;某个分区突然满了;/var/log超过10GB。


第4分钟:看备份

bash

ls -lh /backup/ | tail -5

看最近的备份文件:昨天的备份有没有生成?文件大小是否正常?太小的备份可能失败了。

重点:至少一个月做一次恢复测试。只检查备份存在还不够,要确认备份能恢复。真出事的时候你不想赌。


第5分钟:看日志

bash

tail -50 /var/log/syslog | grep -i error
tail -50 /var/log/nginx/error.log | grep -i error
journalctl -xe -n 50 | grep -i error

不用看完整个日志,只看最后50行里的错误。新出现的错误要留意。一直存在的旧错误,如果没影响业务,可以暂时忽略。

什么情况要警惕:出现了没见过的错误;同一个错误每小时出现几十次。


第6-7分钟:看监控面板(如果有)

如果你装了Netdata、Uptime Kuma或其他监控,花2分钟扫一眼:

  • CPU、内存、磁盘的历史曲线
  • 过去24小时有没有异常峰值
  • 监控告警列表有没有未处理的

没有装监控,装一个。10分钟的事,能省每天10分钟的手工检查。


第8分钟:看定时任务

bash

crontab -l

昨天的定时任务执行了吗?检查日志:

bash

grep CRON /var/log/syslog | tail -20

什么情况要警惕:备份任务没执行;日志清理任务报错。


第9分钟:看安全更新

bash

# Ubuntu/Debian
apt list --upgradable | grep -i security

# CentOS/RHEL
yum check-update --security

有安全更新,安排今晚或明晚重启更新。不要在生产高峰期更新,也不要拖太久。


第10分钟:记录异常

把发现的问题记下来,分类处理:

  • 今天要修的:磁盘满了、服务挂了、备份失败
  • 这周要安排:安全更新、升级配置
  • 下个月再看:磁盘趋势、慢查询增长

记不住就建一个简单的文档或表格。每天记录,周末统一处理。


一份简化的每日检查脚本

把上面的命令写成一个脚本/root/daily_check.sh

bash

#!/bin/bash
echo "=== 系统负载 ==="
uptime

echo -e "\n=== CPU使用率 ==="
top -bn1 | head -5

echo -e "\n=== 内存使用 ==="
free -h

echo -e "\n=== 磁盘使用 ==="
df -h | grep -v tmpfs

echo -e "\n=== 最近错误日志 ==="
tail -20 /var/log/syslog | grep -i error

echo -e "\n=== 备份检查 ==="
ls -lh /backup/ | tail -3

echo -e "\n=== 定时任务 ==="
grep CRON /var/log/syslog | tail -5

每天执行一次./daily_check.sh,一键输出所有检查结果。把输出保存到文件或发给自己的邮箱。


真实案例

一个创业公司的运维,每天花15分钟执行这份清单。某天他发现磁盘使用率从65%跳到了82%,查了一下,是某个服务的日志级别被改成了DEBUG,一天写了50GB日志。改回INFO,磁盘恢复。

如果没有每天检查,再跑几天,磁盘就会满,网站就会挂。

他说:“每天10分钟,省了半夜爬起来救火。”


最后一句

巡检不是找事做,是提前排除隐患。

磁盘满了再清理,是救火。每天看它涨了多少,是防火。好运维不是会救火,是让火不会烧起来。

今天开始,每天花10分钟走一遍这份清单。一个月后,你会发现自己的服务器从来没出过大问题。

不是运气好,是你看到了它要生病之前的症状。

知识库

服务器突然关机?6个硬件故障排查步骤

2026-5-26 14:30:40

知识库

云厂商坑爹配置揭秘:带宽、IOPS、流量包里的猫腻

2026-5-27 17:32:15

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧