Pitanja
Kako da proverim šta znači cron izraz?
Nalepite ga u cron explainer; on ispisuje raspored rečima i sledećih deset vremena pokretanja u vašoj vremenskoj zoni.
Redosled polja, rasporedi koji ljudima zaista trebaju i tri zamke koje objašnjavaju većinu tiketa „moj cron posao se ne pokreće“.
┌─ minut (0–59) │ ┌─ sat (0–23) │ │ ┌─ dan u mesecu (1–31) │ │ │ ┌─ mesec (1–12, jan–dec) │ │ │ │ ┌─ dan u nedelji (0–7, sun–sat; 0 i 7 = nedelja) * * * * * komanda
| * | svaka vrednost |
| 5 | tačno 5 |
| 1-5 | opseg |
| */15 | svaki 15. |
| 1,15 | lista |
| 8-18/2 | korak unutar opsega |
| @reboot | jednom pri podizanju sistema |
| @hourly | 0 * * * * |
| @daily / @midnight | 0 0 * * * |
| @weekly | 0 0 * * 0 |
| @monthly | 0 0 1 * * |
| @yearly / @annually | 0 0 1 1 * |
| * * * * * | svakog minuta |
| */5 * * * * | svakih 5 minuta |
| */15 9-17 * * 1-5 | svakih 15 min, radno vreme, radnim danima |
| 0 * * * * | svakog sata, na pun sat |
| 30 * * * * | svakog sata u :30 |
| 0 */6 * * * | svakih 6 sati (0, 6, 12, 18) |
| 0 0 * * * | dnevno u ponoć |
| 0 3 * * * | dnevno u 03:00 |
| 30 6 * * 1-5 | radnim danima u 06:30 |
| 0 9,17 * * 1-5 | radnim danima u 09:00 i 17:00 |
| 0 0 * * 0 | nedeljom u ponoć |
| 0 0 * * 6,0 | vikendom |
| 0 0 1 * * | prvog u mesecu |
| 0 0 1,15 * * | 1. i 15. |
| 0 0 1 */3 * | kvartalno (1. jan, apr, jul, okt) |
| 0 0 1 1 * | godišnje |
| 0 0 * * 1#1 | prvi ponedeljak (nestandardno; koristite 0 0 1-7 * 1) |
| 0 0 1-7 * 1 | prvi ponedeljak — oprez: okida se 1–7. ILI svakog ponedeljka; dodajte test [ $(date +\%u) = 1 ] |
| 0 0 28-31 * * [ $(date -d tomorrow +\%d) = 01 ] && cmd | poslednji dan u mesecu |
| 0 2 * * * sleep $((RANDOM \% 1800)); cmd | 02:00 sa do 30 min nasumičnog kašnjenja |
/usr/bin:/bin). Koristite apsolutne putanje ili postavite PATH=… na vrhu crontab-a.\% (date +\%F).CRON_TZ=Europe/Belgrade radi u cronie-ju.MAILTO=.flock -n /tmp/job.lock cmd.| crontab -e | izmeni svoj crontab |
| crontab -l | izlistaj |
| crontab -r | ukloni sve (bez potvrde!) |
| crontab -u www-data -l | crontab drugog korisnika (root) |
| /etc/crontab, /etc/cron.d/* | sistemski crontab-ovi: imaju polje korisnika posle rasporeda |
| /etc/cron.{hourly,daily,weekly,monthly}/ | drop-in skripte, na desktopima ih pokreće anacron |
| grep CRON /var/log/syslog; journalctl -u cron | vidite šta se pokrenulo |
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin [email protected] SHELL=/bin/bash # m h dom mon dow komanda 30 6 * * 1-5 flock -n /run/backup.lock /usr/local/bin/backup.sh >> /var/log/backup.log 2>&1
Rezultati i poruke ovog alata prikazuju se na engleskom.
Nalepite ga u cron explainer; on ispisuje raspored rečima i sledećih deset vremena pokretanja u vašoj vremenskoj zoni.