V závislosti na tom, jak je váš linuxový systém nastaven, se můžete podívat do:
/var/spool/cron/*
(uživatelské crontabs)/etc/crontab
(crontab pro celý systém)
také mnoho distribucí má:
-
/etc/cron.d/*
Tyto konfigurace mají stejnou syntaxi jako/etc/crontab
-
/etc/cron.hourly
,/etc/cron.daily
,/etc/cron.weekly
,/etc/cron.monthly
Jsou to jednoduše adresáře, které obsahují spustitelné soubory, které jsou spouštěny každou hodinu, denně, týdně nebo měsíčně podle názvu svého adresáře.
Kromě toho můžete mít při práci (zaškrtněte /var/spool/at/*
), anacron (/etc/anacrontab
a /var/spool/anacron/*
) a pravděpodobně další, na které zapomínám.
U většiny cronů (např. Vixie-Cron – výchozí Debian/Ubuntu, Cronie – výchozí Fedora, Solaris Cron ...) získáte seznam naplánovaných úloh cronu pro aktuálního uživatele pomocí:
$ crontab -l
nebo pro jiného uživatele prostřednictvím
# crontab -l -u juser
Chcete-li získat crontabs pro všechny uživatele, můžete projít všechny uživatele a zavolat tento příkaz.
Případně můžete vyhledat soubory pro souběžný tisk. Obvykle jsou uloženy pod /var/spool/cron
, např. pro vcron následující adresář
/var/spool/cron/crontabs
obsahuje všechny nakonfigurované crontab všech uživatelů - kromě uživatele root, který je také schopen konfigurovat úlohy prostřednictvím systémového crontab, který se nachází na adrese
/etc/crontab
S cronie (výchozí na Fedoře/CentOS) existuje .d
style config adresář pro úlohy systémového cronu:
/etc/cron.d
(Jako vždy, .d
adresář zjednodušuje údržbu konfiguračních položek, které jsou součástí různých balíčků.)
Pro pohodlí poskytuje většina distribucí také adresáře, kde se propojené/uložené skripty pravidelně spouštějí, např.:
/etc/cron.daily
/etc/cron.hourly
/etc/cron.monthly
/etc/cron.weekly
Včasné provádění těchto skriptů je obvykle řízeno pomocí run-parts
záznamy v systémovém crontab nebo přes anacron.
S Systemd (např. na Fedoře, CentOS 7, ...) lze periodické spouštění úloh navíc konfigurovat pomocí jednotek časovače. Aktivované systémové časovače lze zobrazit pomocí:
$ systemctl list-timers
Všimněte si, že uživatelé vedle root mohou mít spuštěné uživatelské instance systemd, kde jsou také konfigurovány časovače. Například na Fedoře je ve výchozím nastavení spuštěna instance systemd uživatele pro každého uživatele, který je aktuálně přihlášen. Lze je rozpoznat pomocí:
$ ps aux | grep 'systemd[ ]--user'
Tyto uživatelské časovače lze zobrazit pomocí:
$ systemctl --user list-timers
Alternativa k vydání list-timers
příkaz je vyhledat soubory jednotek časovače (vzor:*.timer
) a symbolické odkazy na ně v obvyklých systémových a uživatelských adresářích systemd config:
$ find /usr/lib/systemd/ /etc/systemd -name '*.timer'
$ find /home '(' -path '/home/*/.local/share/systemd/user/*' \
-o -path '/home/*/.config/systemd/*' ')' \
-name '*.timer' 2> /dev/null
(Stejně jako u normálních servisních jednotek se jednotka časovače aktivuje vytvořením symbolického odkazu ve správném adresáři systemd config.)
Viz také:
- Článek na ArchWiki na serveru Cron
- Článek na ArchWiki o Systemd Timers
Chcete-li vypsat všechny crony pro daného uživatele.
crontab -u uživatelské jméno -l;
Chcete-li vypsat všechny crony pro všechny uživatele
Spusťte jej jako super uživatel
#!/bin/bash
#List all cron jobs for all users
for user in `cat /etc/passwd | cut -d":" -f1`;
do
crontab -l -u $user;
done