Tillbaka till bloggen
Maj 23, 2026Guider

Hur man ställer in cron-jobb på Linux-server

Cron-syntax, crontab-redigering, vanliga exempel och loggning för automatiserade uppgifter på VPS.

Hur man ställer in cron-jobb på Linux-server

Cron är Linux standard schemaläggare för att köra skript och kommandon vid fasta tider — säkerhetskopior, cache-rensning, certifikatkontroller med mera.

Cron-syntax

Varje rad har fem tidsfält följt av kommandot:

bash
# ┌──────── minute (0-59)
# │ ┌────── hour (0-23)
# │ │ ┌──── day of month (1-31)
# │ │ │ ┌── month (1-12)
# │ │ │ │ ┌─ day of week (0-7, 0 and 7 = Sunday)
# │ │ │ │ │
# * * * * * command

# Every day at 3:00 AM:
0 3 * * * /usr/local/bin/backup.sh

# Every 15 minutes:
*/15 * * * * /usr/local/bin/check.sh

Redigera crontab

Använd crontab -e för aktuell användare. För systemuppgifter med root:

bash
# Edit your user crontab
crontab -e

# Edit root crontab
sudo crontab -e

# List current jobs
crontab -l
sudo crontab -l

Vanliga exempel

  • 0 2 * * * — daglig säkerhetskopia kl. 2:00
  • 0 */6 * * * — var 6:e timme
  • 0 0 * * 0 — varje söndag vid midnatt
  • */5 * * * * — var 5:e minut (använd försiktigt)
  • @reboot /path/script.sh — efter serveromstart
  • @daily /usr/bin/certbot renew --quiet — daglig Certbot-kontroll

Loggning och felsökning

Omdirigera utdata till loggfil så du ser om jobbet misslyckades:

bash
0 3 * * * /usr/local/bin/backup.sh >> /var/log/backup-cron.log 2>&1

# View cron execution in system log:
grep CRON /var/log/syslog   # Ubuntu
grep CRON /var/log/cron      # CentOS

Tips

  • Använd absoluta sökvägar i cron-kommandon
  • Testa skript manuellt innan du lägger till i crontab
  • Sätt MAILTO=your@email.com i crontab för felmail (om e-post är konfigurerad)
  • Överväg systemd timers för komplexa beroenden
  • Kör inte tunga uppgifter varje minut — kan överbelasta VPS