首页/系统/Linux 运维命令速查/需要秒级定时的三种方案
定时任务与计划50 条

需要秒级定时的三种方案

cron 最小粒度是分钟:秒级调度用 systemd timer(OnUnitActiveSec=5s)、sleep 循环脚本,或程序内调度器(quartz等)实现。

Linux 运维命令速查系统更新于 2026-10-12
用途实现小于 1 分钟的周期任务
方案systemd timer / 循环脚本 / 应用内调度

systemd 秒级

systemd 秒级
# /etc/systemd/system/check.timer
[Timer]
OnBootSec=10
OnUnitActiveSec=5s
AccuracySec=1s

# 启用
systemctl daemon-reload && systemctl enable --now check.timer

循环脚本(简单场景)

循环脚本(简单场景)
while true; do
  /opt/app/check.sh >> /var/log/check.log 2>&1
  sleep 5
done
分钟级能用 cron 就别上秒级:秒级频率会放大日志量、锁竞争与告警噪音,先确认真有 5 秒级业务价值。

易错点

  • sleep 5 + 任务耗时 3s 实际间隔是 8s;要求固定节拍用 OnCalendar 反而更准(合并触发)
  • 循环脚本无人看护,崩溃后不再恢复,交给 systemd unit 管理更稳

数据来源与参考

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

相关工具

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