systemd 定时任务
systemd的定时任务,分为两个文件一个是service服务文件,一个是timer文件。
service文件是主要是确定执行的时间,timer文件是指定执行的命令或脚本。
periodic-task.service文件
[Unit]
Description=Run periodic-task every 5 minutes
Requires=periodic-task.service
[Timer]
# 每5分钟执行一次
OnCalendar=*:0/5
# 其他常用时间设置示例(注释掉,需要时取消注释):
# OnCalendar=*:0/1 # 每1分钟
# OnCalendar=*:0/10 # 每10分钟
# OnCalendar=hourly # 每小时
# OnCalendar=daily # 每天午夜
# OnCalendar=08:30 # 每天8:30
# OnCalendar=Mon..Fri 09:00 # 工作日9点
# OnCalendar=0/2:00 # 每2小时
# 系统启动后多久开始第一次执行(可选)
OnBootSec=5min
# 如果错过了执行时间,是否立即执行(可选)
Persistent=true
# 随机延迟,避免所有任务同时执行(可选)
RandomizedDelaySec=30
[Install]
WantedBy=timers.target
periodic-task.timer文件
[Unit]
Description=Periodic Task - runs every 5 minutes
Wants=periodic-task.timer
[Service]
Type=oneshot
# 这里替换为你要执行的命令
ExecStart=/bin/bash -c "echo '$(date): Periodic task executed' >> /var/log/periodic-task.log"
# 可以添加更多命令
# ExecStart=/usr/local/bin/your-script.sh
# 设置工作目录
WorkingDirectory=/tmp
# 设置用户(可选,默认root)
User=root
Group=root
# 环境变量(可选)
Environment=PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
# 超时设置(可选)
TimeoutStartSec=300
[Install]
WantedBy=multi-user.target
作者:SteveChen 创建时间:2025-08-17 21:39
最后编辑:SteveChen 更新时间:2025-08-17 21:41
最后编辑:SteveChen 更新时间:2025-08-17 21:41