Crontabs jsou v Linuxu velmi užitečné pro plánování opakovaných úloh. Můžeme naplánovat spuštění libovolného skriptu nebo příkazu v určitém časovém intervalu. Všechny úlohy prováděné cronem běží na pozadí. Jako správce systému víme, že je důležité zálohovat konfigurační soubory systému nebo aplikace a děláme to pomocí cronjob, ale většinou zapomeneme vzít zpět cronjob.
Tento článek popisuje, jak provést zálohu naplánovaných úloh pro konkrétního uživatele nebo všechny uživatele v systému. Chcete-li nainstalovat Crontab nebo se o něm dozvědět více, přečtěte si naše dřívější články.
Jak nainstalovat Crontab v CentOS/RHEL 6/5
Crontab v Linuxu s 20 užitečnými příklady plánování úloh
1. Zálohování Cronjobs pro jednoho uživatele
Odeberte zálohu naplánovaných úloh od aktuálního přihlášeného uživatele. Tento příkaz uloží všechny výstupy aktuálních úloh uvedených v souboru txt. Odkud jej můžeme jednoduše obnovit.
# crontab -l > cron-backup.txt
Pro zálohování úloh jiného uživatele v systému, například provádíme zálohování všech úloh naplánovaných pro uživatele john .
# crontab -u john -l > john-cron-backup.txt
2. Obnovit Cronjob pro jednoho uživatele ze zálohy
Cronjobs lze snadno obnovit ze záloh, jak bylo vytvořeno výše. Níže jsou uvedeny dva příkazy, které obnoví úlohy ze zálohy vytvořené ve výše uvedeném kroku.
# crontab cron-backup.txt # crontab -u john john-cron-backup.txt
3. Zálohujte úlohy Cron všech uživatelů v CentOS/RHEL
Všechny cronjoby, které jsme naplánovali pro uživatele v CentOS/RHEL, jsou fyzicky uloženy v souboru s uživatelským jménem pod /var/spool/cron adresář. Chcete-li tedy provést zálohu všech úloh pro všechny uživatele, jednoduše zálohujte adresář /var/spool/cron.
# zip -r cronjobs-all.zip /var/spool/cron
Můžeme to také naplánovat jako úlohu v crontab pro vlastní zálohu
0 2 * * * zip -r cronjobs-all.zip /var/spool/cron
4. Zálohujte úlohy Cron všech uživatelů v Ubuntu a Debianu
Všechny Cronjoby naplánované pro uživatele v Ubuntu a Debianu jsou fyzicky uloženy v souboru s uživatelským jménem pod /var/spool/cron/crontabs/ adresář. Chcete-li tedy provést zálohu všech úloh pro všechny uživatele, jednoduše vytvořte zálohu adresáře /var/spool/cron/crontabs.
# zip -r cronjobs-all.zip /var/spool/cron/crontabs
Můžeme to také naplánovat jako úlohu v crontab pro vlastní zálohu
0 1 * * * zip -r cronjobs-all.zip /var/spool/cron/crontabs