uptime
命令直接显示系统运行时长及负载;或查看/proc/uptime
第一列获取精确秒数;也可执行who -b
查看启动时间后手动计算差值。如何查看Linux系统运行时间差
在Linux系统管理中,查看系统运行时间差(即自上次启动以来持续运行的时间)是监控系统稳定性、排查故障和维护服务器健康的关键操作,无论是检查服务器是否意外重启,还是评估系统可靠性,掌握以下方法将帮助您快速获取准确信息,以下是5种专业且高效的方法,适用于所有主流Linux发行版。
方法1:使用 uptime
命令(最简方式)
命令示例:
uptime
输出解析:
12:30:45 up 15 days, 3:22, 2 users, load average: 0.08, 0.03, 0.01
up 15 days, 3:22
表示系统已运行 15天3小时22分钟。- 附加信息:当前时间、登录用户数和系统负载(1/5/15分钟平均值)。
适用场景:快速检查运行时间,无需额外参数。
方法2:解析 /proc/uptime
文件(内核级数据)
操作步骤:
cat /proc/uptime
输出示例:
75 1295500.12
- 第一个数值
75
是系统运行的总秒数。 - 转换为可读格式:
awk '{printf "Uptime: %d days, %02d:%02d:%02dn", $1/86400, ($1%86400)/3600, ($1%3600)/60, $1%60}' /proc/uptime
输出结果:
Uptime: 15 days, 03:22:04
优势:直接读取内核数据,精度达毫秒级,适合脚本调用。
方法3:通过 systemd
工具(现代发行版专用)
命令示例:
systemd-analyze time
输出解析:
Startup finished in 5.312s (kernel) + 1min 12.345s (userspace) = 1min 17.657s
Graphical interface reached after 1min 18.002s in userspace
- 第一行显示内核和用户空间启动耗时。
- 总运行时间需结合
uptime
使用,但可精确分析启动阶段耗时。
适用系统:Ubuntu 16.04+、CentOS 7+ 等使用 systemd 的发行版。
方法4:组合 who
与 awk
(历史启动记录)
命令示例:
who -b && awk '{print "Uptime:", $1/86400 " days"}' /proc/uptime
输出结果:
system boot 2025-06-01 09:08
Uptime: 15.25 days
who -b
显示最后一次启动时间(2025-06-01 09:08)。- 结合
/proc/uptime
计算总运行天数。
用途:同时获取启动时间点与运行时长。
方法5:利用 tuned-adm
(优化系统监控)
操作步骤:
tuned-adm profile latency-performance # 启用性能模式(可选) tuned-adm report | grep -A1 'System uptime'
输出示例:
System uptime: 15 days, 3 hours, 22 minutes
适用场景:已安装 Tuned 工具的系统(如 RHEL/CentOS),提供格式化输出。
关键应用场景与建议
- 故障排查:
- 若运行时间远低于预期,检查
journalctl -b -1
查看上次启动日志。
- 若运行时间远低于预期,检查
- 自动化监控:
- 在脚本中使用
/proc/uptime
,避免解析文本格式。
- 在脚本中使用
- 高可用系统:
- 结合
cron
定期记录 uptime,echo "$(date) Uptime: $(uptime -p)" >> /var/log/uptime.log
- 结合
专业提示:
- 物理服务器运行时间过长(如数年)可能意味未安装内核安全更新,建议定期重启。
- 云服务器频繁重启(如几天)可能触发资源回收机制,需检查服务配置。
方法 | 命令示例 | 精度 | 适用场景 |
---|---|---|---|
uptime |
uptime |
分钟级 | 快速交互式检查 |
/proc/uptime |
cat /proc/uptime + 脚本转换 |
毫秒级 | 脚本调用/精确计算 |
systemd-analyze |
systemd-analyze time |
微秒级 | 分析启动阶段耗时 |
who + awk |
who -b + /proc/uptime 处理 |
秒级 | 同时获取启动时间点 |
tuned-adm |
tuned-adm report |
分钟级 | RHEL/CentOS 优化环境 |
掌握这些方法,您将能高效诊断系统稳定性,确保服务持续可靠运行。
引用说明:
- Linux 内核文档:/proc/uptime 文件格式
- GNU Coreutils 手册:uptime 命令规范
- systemd 官方文档:systemd-analyze 使用指南
原创文章,发布者:酷盾叔,转转请注明出处:https://www.kd.cn/ask/19294.html