Cron ist traditionell, systemd Timer sind die moderne Alternative mit besserer Integration.
Cron¶
crontab -e
m h dom mon dow command¶
0 2 * * * /opt/backup.sh */5 * * * * /opt/check.sh 0 2 * * * /opt/backup.sh >> /var/log/backup.log 2>&1 * * * * * flock -n /tmp/task.lock /opt/task.sh
Systemd Timer¶
backup.timer¶
[Timer] OnCalendar=*-*-* 02:00:00 Persistent=true [Install] WantedBy=timers.target
backup.service¶
[Service] Type=oneshot ExecStart=/opt/backup.sh systemctl enable –now backup.timer systemctl list-timers
Vergleich¶
- Logs: Cron -> syslog, Timer -> journalctl
- Abhaengigkeiten: Timer -> After=, Requires=
- Ressourcenlimits: Timer -> ueber Service
- Persistent: Timer holt versaeumte Ausfuehrungen nach
Timer fuer neue Projekte¶
Fuer neue Projekte systemd Timer. Cron fuer einfache Legacy-Aufgaben.