首页/系统/Linux 运维命令速查/timer 相对计时:OnBootSec/OnUnitActiveSec
本包目录(613 条)
文件与目录76 条文本处理77 条网络命令82 条进程与作业69 条磁盘与文件系统51 条用户与权限44 条日志与排查40 条systemd 与服务42 条包管理34 条性能与监控48 条
定时任务与计划50 条

timer 相对计时:OnBootSec/OnUnitActiveSec

相对时间触发:开机后多久(OnBootSec)、上次激活后多久(OnUnitActiveSec);适合「开机后 10 分钟自检」「每 5 秒轮询」这类周期。

Linux 运维命令速查系统更新于 2026-10-12
用途按相对时间周期调度
指令OnBootSec / OnUnitActiveSec / OnStartupSec
精度加 AccuracySec=1s 提高准确性

完整示例

完整示例
# /etc/systemd/system/check.timer
[Unit]
Description=periodic app check

[Timer]
OnBootSec=10min
OnUnitActiveSec=5min
AccuracySec=1s

[Install]
WantedBy=timers.target

启用

启用
sudo systemctl daemon-reload
sudo systemctl enable --now check.timer
systemctl list-timers check.timer --no-pager
OnUnitActiveSec 从「上次启动对应 service」开始计;service 执行时间长于间隔时,下一次顺延,不会堆积并发。

易错点

  • timer 的 [Timer] 与 service 的 [Install] 别写反文件;两个 unit 同名才配对(check.timer ↔ check.service)
  • 改完 unit 必须 daemon-reload,否则旧定义继续生效

数据来源与参考

  • man 5 systemd.timer
  • systemd.time(7)

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌