Un demone in Linux ha chiamato cron esegue i processi a intervalli regolari. Controlla alcune cartelle del sistema affinché gli script possano essere eseguiti in una serie di cartelle, tra cui /etc/cron.hourly, /etc/cron.daily, /etc/cron.weekly e /etc/cron.monthly. C'è anche un file chiamato / etc / crontab.
Inserimento di script nelle cartelle Cron
Puoi semplicemente inserire gli script nelle cartelle pertinenti per farli eseguire intervalli regolari.
Ad esempio, apri una finestra di terminale ed esegui il seguente comando ls:
ls / etc / cron *
Verrà visualizzato l'elenco di programmi o script eseguiti ogni ora, giornalmente, settimanalmente e mensilmente.
Il problema con queste cartelle è che sono un po 'vaghe. Per esempio, quotidiano significa che lo script verrà eseguito una volta al giorno ma non hai il controllo del tempo durante il quale lo script verrà eseguito durante quel giorno.
È qui che entra in gioco il file crontab.
Modificando il file crontab puoi ottenere uno script o un programma da eseguire alla data e all'ora esatte in cui desideri che venga eseguito.
permessi
Il comando crontab richiede che un utente abbia le autorizzazioni per modificare un file crontab. Ci sono fondamentalmente due file che sono usati per gestire i permessi crontab:
- /etc/cron.allow
- /etc/cron.deny
Se esiste il file /etc/cron.allow, l'utente che desidera modificare il file crontab deve trovarsi in quel file. Se il file cron.allow non esiste ma esiste un file /etc/cron.deny, l'utente non deve esistere in quel file. Se entrambi i file esistono, il file /etc/cron.allow sovrascrive il file /etc/cron.deny. Se non esiste alcun file, dipende dalla configurazione del sistema se un utente può modificare crontab.
L'utente root può sempre modificare il file crontab. È possibile utilizzare il comando su per passare all'utente root o il comando sudo per eseguire il comando crontab.
Modifica del file Crontab
Ogni utente che dispone delle autorizzazioni appropriate può creare il proprio file crontab. Il comando cron cerca fondamentalmente tutti i file crontab e scorre attraverso ognuno di essi.
Per verificare se hai un file crontab, esegui il seguente comando:
crontab -l
Se non si dispone di un file crontab, il messaggio "no crontab for Per creare o modificare un file crontab, eseguire il seguente comando: crontab -e Il file che si apre ha molte informazioni ma la parte chiave è l'esempio poco prima della fine della sezione dei commenti (i commenti sono denotati da linee che iniziano con #). # m h comando dom dow 0 5 * * 1 tar -zcf /var/backups/home.tgz / home / Ci sono 6 informazioni per adattarsi a ciascuna riga del file crontab: Per ogni elemento (eccetto per il comando) è possibile specificare un carattere jolly. Guarda la seguente linea crontab di esempio: 30 18 * * * tar -zcf /var/backups/home.tgz / home / A 30 minuti, 18 ore e qualsiasi giorno, mese e giorno della settimana, questa voce crontab comprimerà e aggiungerà la directory home alla cartella / var / backups. Per ottenere un comando da eseguire ogni 30 minuti ogni ora, eseguire il seguente comando: 30 * * * * comando Per ottenere un comando da eseguire ogni minuto dopo le 6:00, eseguire il seguente comando: * 18 * * * comando Devi quindi stare attento a configurare i tuoi comandi crontab. Per esempio: * * * 1 * comando Questo comando verrà eseguito ogni minuto di ogni ora di ogni giorno di ogni settimana di gennaio. Per eseguire un comando alle 5 del mattino del 1 ° gennaio, avresti il seguente comando nel file crontab: La maggior parte delle volte non vorrete rimuovere il file crontab ma potreste voler rimuovere alcune righe dal file crontab. Tuttavia, se si desidera rimuovere il file crontab dell'utente, eseguire il seguente comando: crontab -r Un modo più sicuro per farlo è eseguire il seguente comando: crontab -i Il sistema operativo richiede una verifica prima di rimuovere il file crontab.
Come rimuovere un file Crontab




