Hvordan kan jeg få en liste over alle planlagte cron-jobber på maskinen min?
Systemadministratoren min har satt opp en rekke cron-jobber på maskinen min. Jeg vil gjerne vite nøyaktig hva som er planlagt til hvilken tid. Hvordan kan jeg få den listen?
209
3
Avhengig av hvordan Linux-systemet ditt er konfigurert, kan du se i:
/var/spool/cron/*
(brukerens crontabs)/etc/crontab
(crontab for hele systemet)Mange distroer har også:
/etc/cron.d/*
. Disse konfigurasjonene har samme syntaks som/etc/crontab
./etc/cron.hourly
,/etc/cron.daily
,/etc/cron.weekly
,/etc/cron.monthly
.Dette er rett og slett kataloger som inneholder kjørbare filer som kjøres hver time, hver dag, hver uke eller hver måned, i henhold til katalognavnet.
I tillegg kan du ha at-jobber (sjekk
/var/spool/at/*
), anacron (/etc/anacrontab
og/var/spool/anacron/*
) og sikkert flere jeg har glemt.Med de fleste Crons (f.eks. Vixie-Cron - Debian/Ubuntu-standard, Cronie - Fedora-standard, Solaris Cron ...) får du listen over planlagte cron-jobber for den aktuelle brukeren via:
eller for en annen bruker via
Hvis du vil hente crontabs for alle brukere, kan du gå gjennom alle brukerne og bruke denne kommandoen.
Alternativt kan du slå opp spool-filene. Vanligvis lagres de under
/var/spool/cron
, f.eks. for vcron følgende kataloginneholder alle konfigurerte crontabs for alle brukere - bortsett fra root-brukeren som også kan konfigurere jobber via den systemomfattende crontab, som ligger på
Med cronie (standard på Fedora/CentOS) finnes det også en
.d
-lignende konfigurasjonskatalog for systemets cron-jobber:(Som alltid gjør
.d
-katalogen det enklere å vedlikeholde konfigurasjonsoppføringer som er en del av ulike pakker).For enkelhets skyld tilbyr de fleste distribusjoner også en katalog der lenkede/lagrede skript kjøres med jevne mellomrom, f.eks:
Tidspunktet for kjøring av disse skriptene styres vanligvis via
run-parts
-oppføringer i systemets crontab eller via anacron.Med Systemd (f.eks. på Fedora, CentOS 7, ...) kan periodisk jobbutførelse i tillegg konfigureres via timer units. De aktiverte systemtimerne kan vises via:
Vær oppmerksom på at brukere i tillegg til root kan ha systemd-instanser som kjører der timere også er konfigurert. På Fedora startes det for eksempel som standard en user systemd-instans for hver bruker som er logget inn. De kan gjenkjennes via:
Disse brukertimerne kan listes opp via:
Et alternativ til å bruke kommandoen
list-timers
er å søke etter timer-enhetsfiler (mønster:*.timer
) og symbolske lenker til dem i de vanlige system- og brukerkatalogene for systemd:(Som med vanlige serviceenheter aktiveres en timerenhet ved å opprette en symbolsk lenke i riktig systemd-konfigurasjonskatalog).
Se også:
For å liste opp alle crons for den oppgitte brukeren.
For å liste opp alle crons for alle brukere
Kjør den som superbruker