首页/安全/取证与溯源速查/进程启动时刻计算(starttime 字段)
Linux 取证135 条

进程启动时刻计算(starttime 字段)

进程启动时间可从 /proc/<pid>/stat 的 starttime 字段换算:以系统启动时刻为基准加时钟节拍折算的秒数,得到精确到秒的 UTC 时刻。

取证与溯源速查安全更新于 2026-10-12
字段第 22 列为 starttime(自启动起的时钟节拍数)
基准/proc/stat 的 btime(启动时刻 Unix 秒)

换算

换算
btime=$(awk '/^btime/{print $2}' /proc/stat)
st=$(awk '{print $22}' /proc/1234/stat)
hz=$(getconf CLK_TCK)
date -u -d "@$((btime + st / hz))" +"%Y-%m-%dT%H:%M:%SZ"
ps -o lstart= -p 1234 可直接给出本地时间格式的启动时刻,交叉核对两者。

易错点

  • 字段序号随内核版本有历史变化,先比对 proc(5)
  • 重启后 starttime 相对新启动时刻重算

数据来源与参考

  • proc(5) man 手册(stat、btime 字段)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌