cron-&-crontab,-spiegato

Se vuoi programmare attività in Linux, devi conoscere tutti i dati di Cron e Crontab.

Cosa sono Cron e Crontab in Linux?

La pianificazione delle attività nel sistema operativo Linux è ora più semplice e ciò è dovuto all'uso di Cron e Crontrab, ma per comprendere meglio l'argomento è importante conoscerne tutti i dettagli e cosa significa ciascuno?

Cos'è Cron?

La parola Cron deriva dal greco Chronos, che si traduce come tempo, la sua funzione in Linux è organizzare e gestire tutte le attività o attività che sono in background, ma eseguono processi a intervalli molto regolari. Cioè tutte le azioni che vuoi compiere in pochi minuti, ore, settimane o mesi.

È molto simile al noto programmatore di attività di Windows, che è responsabile dell'esecuzione di un'attività nel tempo pianificato, può essere ore, giorni, settimane e persino mesi.

Come funziona Cron?

Cron è anche conosciuto come il "diavolo" , e parte da /etc/rc.d o anche come, / Etc / init.d; Questo dipenderà dalla distribuzione che hai. Inoltre, si svolge in background, o ciò che è noto come sfondo.

Per questo motivo si occupa di controllare frequentemente tutti i compiti e le attività che si trovano nella tabella crontab. /etc/controllo, o nel /var/spool/cron, alla ricerca di alcuni compiti che non sono stati ancora adempiuti.

La cosa migliore è che puoi aggiungere i tuoi comandi o script in modo che alcuni processi vengano eseguiti automaticamente. Un esempio di ciò è quando è necessario aggiornare un sistema o quando sono necessari i backup.

Cos'è Crontab?

È il file di testo in cui vengono salvate e organizzate tutte le attività pianificate in Cron. La funzione principale è rivedere gli orari e le date in cui ogni comando dovrebbe essere eseguito o la sceneggiatura.

Devi sapere che ognuno degli utenti ha un contrab, e quindi, quando si tratta di un utente root, si fa riferimento al /etc/contrab, mentre nell'altro caso userebbe solo il comando contrab.

Una delle sue caratteristiche è che aiuta a organizzare tutte le attività con un sistema multiutente. Cioè, se sei un utente root o semplice, puoi comunque usarlo.

Come funziona Crontab?

Il modo più semplice per spiegare come funziona Crotab è con un esempio. L'automazione dell'attività di aggiornamento di Linux è una delle più frequenti.

Per avviare questo processo è necessario creare uno script, sarà noto come »cron», deve eseguire correttamente tutte le istruzioni assegnategli, ma prima è importante eseguire diversi test e provare in diversi modi prima di includerlo con il cron:

  • #! / Bin / bash
  • #script (esempio di aggiornamento)
  • #scegli la distribuzione
  • #debian-ubuntu
  • #apt-get update&apt-get -y upgrade
  • #feedora
  • #yum -y aggiornamento
  • #Arco
  • #pacman --noconfirm -Syu

Se si tratta di Ubuntu/Debian è importante che il # sia rimosso, proprio dove si trova apt-get. Successivamente è necessario salvare lo script con il nome di update.sh, e modificare i permessi per la sua esecuzione, ponendo: chmod a + x ~ / scripts / update.sh

È necessario eseguire lo script per verificare che tutto si svolga senza alcun problema. Assicurati che non ci sia un singolo errore, perché altrimenti ci saranno errori durante il processo. E l'ultimo passaggio in questo caso è aggiungere l'attività a contrab.

Come aggiungere attività a crontab?

Ora è il momento di iniziare a eseguire la modifica di crontab con »contrassegno-e», e dovrebbe assomigliare a questo: # mh dom mon dow comando utente. Ognuna di queste lettere o parole ha un significato e lo menzioniamo di seguito:

  • m: Si riferisce ai minuti che impiegherà lo script ad essere eseguito, i valori variano da a 59.
  • h: Significa l'ora, il formato utilizzato è 24 ore e i valori vanno da 0 a 23.
  • casa: È il giorno del mese.
  • giù: Si riferisce ai giorni della settimana, i valori vanno da 0 a 7, dove ovviamente il 7 sta per domenica.
  • utente: Il nome utente che sta eseguendo il comando, root o qualcos'altro.
  • comando: Si riferisce al comando o al percorso utilizzato per lo script.

Esempi di attività cron spiegate

  • 15 10 * * * user/man/user/scripts/update.sh. Dovresti eseguire lo script update.sh ogni giorno alle 10:15.
  • 15 22 * ​​​​* * utente/home/utente/script/update.sh. Questa attività di esempio eseguirà lo script specificamente alle 22:15 ogni giorno.
  • 00 10 * * 0 root apt-get -y update Utente root. In particolare, la sceneggiatura viene eseguita la domenica alle 10:00
  • 45 10 * * sun root apt-get -y update. In questo caso l'utente è root ed eseguirà l'aggiornamento solo la domenica, rappresentata da "sole" alle 10:45
  • 30 7 20 11 * utente /home/utente/scripts/update.sh. Lo script deve essere eseguito il 20 novembre alle 7:30
  • 30 7 11 11 sole utente /home/utente/scripts/torta_con_candele.sh. Il compito è che l'11 novembre alle 7:30, se è domenica l'utente deve celebrare l'amministratore di sistema.
  • È anche possibile utilizzare alcuni comandi speciali, come: 30 17 * * 1,2,3,4,5. Il che significa che alle 5:30 dal lunedì al venerdì lo script deve essere eseguito.
  • 00 12 1,15, 28 * *. Significa che alle ore 12 devono essere eseguiti i primi, quindici e ventotto giorni di ogni mese.

Tuttavia, questa non è l'unica cosa che Crontab può fare, controlla anche alcuni comandi che, per molti utenti, sono più facili di quelli sopra menzionati, e sono i seguenti:

  • @riavviare: Deve essere eseguito una volta all'avvio.
  • @annuale: Dovresti eseguire lo script solo una volta all'anno 0 0 1 1 *.
  • @annualmente: Si usa allo stesso modo del precedente.
  • @mensile: Significa che lo script deve essere eseguito solo un giorno al mese, in particolare il primo giorno 0 0 1 * *.
  • @Settimana settimanalel: Significa il primo minuto della prima ora della settimana 0 0 * * 0».
  • @quotidiano: Esegue lo script ogni giorno alle 12:00 0 0 * * *.
  • @mezzanotte: Ha la stessa funzione del precedente.
  • @ogni ora: Lo script dovrebbe essere eseguito il primo minuto di ogni ora 0 * * * *.

Gestisci i cron job

  • file crontab: Serve per sostituire un file già esistente in contrab, con un altro.
  • crontab -e: Viene utilizzato per modificare un file contrab e, con ogni nuova riga, viene impostata una nuova attività.
  • contrab -I: Con questo puoi creare un elenco di attività utente trovate in contrab.
  • contrab -d: Funziona per eliminare il contrab di un utente.
  • contrab -c dir: Serve per definire la directory e il crontab di un utente. Ricorda che deve avere tutte le autorizzazioni di scrittura ed esecuzione dell'utente.
  • password -u utente: È un prefisso utilizzato per ottenere il controllo della password di un altro utente: $ sudo crontab -l -u root; $ sudo crontab -e utente2; #crontab -d -u utente.