首页/系统/Linux 运维命令速查/systemd timer 单元结构
systemd 与服务42 条

systemd timer 单元结构

定时任务的 systemd 形态:.timer 定义时间表、配套 .service 定义动作;精度高、可看上次/下次触发,是 cron 的现代替代。

Linux 运维命令速查系统更新于 2026-10-12
用途用 systemd 定时器替代 cron
语法unit.timer + unit.service(OnCalendar/OnBootSec)
所属systemd

timer 单元示例

timer 单元示例
# /etc/systemd/system/backup.timer
[Unit]
Description=Daily backup
[Timer]
OnCalendar=daily
Persistent=true
RandomizedDelaySec=10m
[Install]
WantedBy=timers.target

配套 service

配套 service
# /etc/systemd/system/backup.service
[Unit]
Description=Run backup
[Service]
Type=oneshot
ExecStart=/usr/local/bin/backup.sh

启用与查看

启用与查看
systemctl daemon-reload
systemctl enable --now backup.timer
systemctl list-timers --all
systemctl status backup.timer
Persistent=true 让错过的触发(关机期间)在开机后补跑一次,服务器巡检类任务建议开启。

易错点

  • 只 enable timer 不 enable service 也可以(timer 拉起 service),但手动测试记得 systemctl start backup.service
  • timer 日志里 exec 失败是 service 单元的问题,排查要看对应 .service 的 journal

数据来源与参考

  • man 5 systemd.timer
  • man 7 systemd.time(OnCalendar 语法)

相关工具

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