Introduzione
Il demone Cron è un'utilità Linux utilizzata per pianificare attività e processi di sistema. Utilizza le tabelle cron (crontab) per archiviare e leggere i lavori pianificati.
Questo tutorial spiega come utilizzare crontab per pianificare i processi da eseguire al riavvio del sistema.
Prerequisiti
- Un sistema che esegue Linux
- Accesso a una riga di comando/finestra del terminale
- Un account utente con privilegi di root o sudo
Panoramica dei comandi di Crontab
Con il crontab
comando, hai il pieno controllo di quando e come vengono eseguiti i lavori. Usa crontab
per impostare il tempo di esecuzione del lavoro al minuto, senza la necessità di cicli e tempi logici nell'attività.
crontab
ha bassi requisiti di risorse poiché non riserva memoria di sistema quando non è in esecuzione.
Crontab all'avvio:esegui un processo Cron all'avvio
Apri l'elenco delle attività di cron utilizzando il comando seguente:
crontab -e
Se sono installati più editor di testo, il sistema richiede di selezionare un editor con cui aggiornare l'elenco delle attività di cron. Usa il numero tra parentesi per scegliere l'opzione che preferisci. Useremo l'opzione predefinita, Nano.
Per eseguire un processo cron ad ogni avvio del sistema, aggiungi una stringa chiamata @reboot
alla fine dell'elenco delle attività. Il lavoro definito da questa stringa viene eseguito all'avvio, subito dopo il riavvio di Linux.
Usa la seguente sintassi quando aggiungi un @reboot
stringa:
@reboot [path to command] [argument1] [argument2] … [argument n]
@reboot [part to shell script]
Premi Control + X
per uscire da Nano, quindi Y
e Enter
per salvare le modifiche apportate.
Ad esempio, se volessimo avere la data di sistema scritta in un file chiamato date.txt al riavvio di Linux, aggiungeremo la seguente stringa:
@reboot date >> ~/date.txt
Se volessimo eseguire la shell di backup al riavvio, aggiungeremmo:
@reboot /root/backup.sh
Esegui un processo Cron all'avvio con ritardo
Per eseguire un processo con un ritardo dopo il riavvio del sistema, utilizzare il comando sleep quando si aggiunge il @reboot
stringa:
@reboot sleep [time in seconds] && [path to job]
Se desideri creare un file di testo con la data di sistema cinque minuti dopo il riavvio, aggiungi:
@reboot sleep 300 && date >> ~/date.txt
Rimuovi un comando di riavvio
Ogni @reboot
la stringa che aggiungi all'elenco delle attività di cron esegue un lavoro ogni volta che Linux viene riavviato. Se non desideri più eseguire un lavoro, rimuovilo dall'elenco delle attività.
Per fare ciò, apri l'elenco delle attività utilizzando il crontab -e
comando. Scorri verso il basso per rivedere i lavori che hai aggiunto.
Per rimuovere un'attività dall'elenco, eliminare la riga appropriata dalla stringa appropriata. Premi Control + X
per uscire da Nano, quindi Y
e Enter
per salvare le modifiche.