0

0

linux怎么查看运行时间_linux获取系统时长【指南】

裘德小鎮的故事

裘德小鎮的故事

发布时间:2026-03-14 17:05:03

|

768人浏览过

|

来源于php中文网

原创

uptime命令最直接查看系统运行时长,其输出中“up X days, Y:Z”字段表示连续运行时间,而非当前时间;加-p参数可提升可读性,-s参数返回启动时间戳。

linux怎么查看运行时间_linux获取系统时长【指南】

uptime 命令直接看系统运行时长

Linux 下最直接、最轻量的方式就是 uptime。它不依赖额外工具,所有主流发行版都自带,输出里第一段数字就是系统连续运行了多久。

常见错误是只扫一眼就以为“12:34”是时间——其实那是当前时间;真正要看的是 up 5 days, 3:22 这类字段。如果显示 up 0 min,大概率刚重启过,或者系统被意外中断过(比如断电后自动恢复但内核重载)。

  • uptime 默认只显示总时长和平均负载,加 -p 参数可读性更强(如 up 5 days, 3 hours, 22 minutes
  • -s 可查启动时间戳:uptime -s 输出类似 2024-03-15 08:22:11,适合脚本取值
  • 注意:容器环境里 uptime 显示的是容器启动时间,不是宿主机——别在 Docker 里跑完就误判宿主机 uptime

/proc/uptime 文件提供高精度原始数据

/proc/uptime 是内核暴露的只读文件,内容是两个空格分隔的浮点数:123456.78 98765.43。前者是系统开机至今的秒数(含小数),后者是系统处于空闲状态的秒数。

它比 uptime 更底层、更精确,适合写监控脚本或需要毫秒级对齐的场景。但直接读出来是秒,得自己换算成天/小时/分钟。

  • awk '{print int($1/86400) " days, " int($1%86400/3600) " hours"}' /proc/uptime 快速粗算
  • 脚本中建议用 bcprintf 处理小数部分,避免 shell 整数截断出错
  • 该文件在 WSL、某些嵌入式 Linux 或低权限容器中可能不可读(Permission denied),此时 fallback 到 uptime -s 更稳妥

systemctl show --property=UserspaceTimestamp 拿不到开机时间

有人试过 systemctl show --property=UserspaceTimestamp,发现返回空或报错,是因为这个属性只在 systemd 启动后才记录,且依赖 systemd-tmpfiles-setup 等早期服务正常运行。一旦启动流程卡在 initramfs 阶段(比如磁盘检测慢),它就不可靠。

BiLin AI
BiLin AI

免费的多语言AI搜索引擎

下载

更关键的是:它反映的是 userspace 初始化完成的时间,不是内核启动时刻。两者可能差几秒到几十秒——对日志溯源或故障定界来说,这个偏差不能忽略。

  • 真正想查内核启动时间,优先用 dmesg -T | head -1(带时间戳的第一条内核日志)
  • dmesg 时间不准(比如没配置 NTP 或日志缓冲区被刷掉),/proc/sys/kernel/osrelease 配合 uptime -s 是更稳的组合
  • 不要在 CI/CD 流水线里硬依赖 systemctl show 的时间字段做超时判断——环境差异太大

Python 脚本里别用 time.time() - boot_time

有人写 Python 监控脚本,想用 time.time() - boot_time 计算运行时长,结果发现值偏小甚至为负。问题出在:Python 的 time.time() 返回的是 wall clock 时间,受系统时钟调整(NTP、手动改时间)影响;而 boot time 是固定瞬间,两者不在同一时间轴上对齐。

正确做法是读 /proc/uptime,再用 time.time() 减去当前 uptime,倒推出启动时间——这样即使系统时间被调过,结果依然准确。

  • 示例:用 with open('/proc/uptime') as f: uptime_sec = float(f.readline().split()[0])
  • 然后 boot_time = time.time() - uptime_sec,这才是可靠的启动时间戳
  • 注意 Python 进程启动晚于系统启动,所以这个 boot_time 是估算值,误差在毫秒级,够用但别当纳秒级精度用

真正麻烦的是虚拟机或云主机——hypervisor 可能暂停过 guest,/proc/uptime 却不会跳变。这时候“运行时间”本身语义就模糊了:你到底要物理连续运行时长,还是 guest 感知到的 CPU 时间?得先想清楚这个问题,再选工具。

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

WorkBuddy
WorkBuddy

腾讯云推出的AI原生桌面智能体工作台

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
python中print函数的用法
python中print函数的用法

python中print函数的语法是“print(value1, value2, ..., sep=' ', end=' ', file=sys.stdout, flush=False)”。本专题为大家提供print相关的文章、下载、课程内容,供大家免费下载体验。

193

2023.09.27

python print用法与作用
python print用法与作用

本专题整合了python print的用法、作用、函数功能相关内容,阅读专题下面的文章了解更多详细教程。

19

2026.02.03

css中float用法
css中float用法

css中float属性允许元素脱离文档流并沿其父元素边缘排列,用于创建并排列、对齐文本图像、浮动菜单边栏和重叠元素。想了解更多float的相关内容,可以阅读本专题下面的文章。

595

2024.04.28

C++中int、float和double的区别
C++中int、float和double的区别

本专题整合了c++中int和double的区别,阅读专题下面的文章了解更多详细内容。

108

2025.10.23

printf用法大全
printf用法大全

php中文网为大家提供printf用法大全,以及其他printf函数的相关文章、相关下载资源以及各种相关课程,供大家免费下载体验。

76

2023.06.20

fprintf和printf的区别
fprintf和printf的区别

fprintf和printf的区别在于输出的目标不同,printf输出到标准输出流,而fprintf输出到指定的文件流。根据需要选择合适的函数来进行输出操作。更多关于fprintf和printf的相关文章详情请看本专题下面的文章。php中文网欢迎大家前来学习。

309

2023.11.28

string转int
string转int

在编程中,我们经常会遇到需要将字符串(str)转换为整数(int)的情况。这可能是因为我们需要对字符串进行数值计算,或者需要将用户输入的字符串转换为整数进行处理。php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

1051

2023.08.02

int占多少字节
int占多少字节

int占4个字节,意味着一个int变量可以存储范围在-2,147,483,648到2,147,483,647之间的整数值,在某些情况下也可能是2个字节或8个字节,int是一种常用的数据类型,用于表示整数,需要根据具体情况选择合适的数据类型,以确保程序的正确性和性能。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

615

2024.08.29

TypeScript类型系统进阶与大型前端项目实践
TypeScript类型系统进阶与大型前端项目实践

本专题围绕 TypeScript 在大型前端项目中的应用展开,深入讲解类型系统设计与工程化开发方法。内容包括泛型与高级类型、类型推断机制、声明文件编写、模块化结构设计以及代码规范管理。通过真实项目案例分析,帮助开发者构建类型安全、结构清晰、易维护的前端工程体系,提高团队协作效率与代码质量。

49

2026.03.13

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号