首页/系统/信创系统运维速查/Windows 计划任务迁移 cron / systemd timer
迁移适配65 条

Windows 计划任务迁移 cron / systemd timer

调度迁移分两步:重建触发规则(cron 或 timer)、核对执行账户与日志;任务动作脚本一并按 shell 重写(见 bat 转 shell 条目)。

信创系统运维速查系统更新于 2026-10-12

cron 对照

cron 对照
# Windows:每天 02:30 备份
30 2 * * * /opt/scripts/backup.sh >> /var/log/backup.log 2>&1
# 每周一 06:00:
0 6 * * 1 /opt/scripts/weekly.sh

systemd timer(需要补跑与统一日志时)

systemd timer(需要补跑与统一日志时)
cat > /etc/systemd/system/backup.timer <<'EOF'
[Unit]
Description=daily backup
[Timer]
OnCalendar=*-*-* 02:30:00
Persistent=true
[Install]
WantedBy=timers.target
EOF
systemctl enable --now backup.timer
systemctl list-timers | head
任务账户从 Windows 域账户换成 Linux 服务账户时,权限范围重新评估,不要直接沿用旧授权。

易错点

  • cron 不加载用户登录环境:脚本内显式设置 PATH 或写全路径
  • Persistent=true 只补跑一次错过的任务,业务要能接受补跑语义

数据来源与参考

  • man 5 crontab
  • systemd.timer 官方文档
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌