GNU/Linux >> Linux Esercitazione >  >> Linux

Come visualizzare o elencare i lavori Cron in Linux

Il nome Cron deriva da una parola greca Chronos, che è usata per il tempo. È un demone per i sistemi Linux per automatizzare l'esecuzione di comandi o script a intervalli di tempo specifici.

Questo tutorial ti mostrerà le diverse opzioni per elencare tutti i processi cron pianificati per gli utenti su sistemi Linux.

Come elencare i lavori Cron dell'utente corrente

Il comando crontab predefinito funziona per l'utente attualmente connesso. Puoi elencare tutti i lavori cron pianificati per l'utente corrente, eseguire:

crontab –l 

Uscita:

Tutti i lavori cron degli utenti si trovano generalmente in /var/spool/cron/crontabs directory. Viene creato un file separato per tutti gli account utente con il loro nome.

Elenca i lavori Cron di altri utenti

Un utente con privilegi root o sudo può anche visualizzare i cronjob pianificati di altri utenti. Usa -u seguito dal nome utente per elencare tutti i lavori che appartengono a un utente specifico.

Ad esempio:

sudo crontab –u username –l 

Sostituisci il nome utente con il nome utente effettivo con cui desideri visualizzare i lavori cron.

Elenca i lavori Cron in esecuzione per sistema

L'utente root può accedere e modificare i crontab del sistema operativo. Puoi visualizzare i cronjob del sistema eseguendo il comando seguente come account con privilegi di root o sudo.

less /etc/crontab 

Uscita:

# /etc/crontab: system-wide crontab
# Unlike any other crontab you don't have to run the `crontab'
# command to install the new version when you edit this file
# and files in /etc/cron.d. These files also have username fields,
# that none of the other crontabs do.

SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin

# Example of job definition:
# .---------------- minute (0 - 59)
# |  .------------- hour (0 - 23)
# |  |  .---------- day of month (1 - 31)
# |  |  |  .------- month (1 - 12) OR jan,feb,mar,apr ...
# |  |  |  |  .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
# |  |  |  |  |
# *  *  *  *  * user-name command to be executed
17 *    * * *   root    cd / && run-parts --report /etc/cron.hourly
25 6    * * *   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )
47 6    * * 7   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly )
52 6    1 * *   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.monthly )

Come elencare i lavori Cron orari

È possibile visualizzare la directory /ettc/cron.hourly per trovare tutti i processi cron pianificati per l'esecuzione ogni ora.

ls -la /etc/cron.hourly 

Uscita:

total 20
drwxr-xr-x   2 root root  4096 Apr 23  2020 .
drwxr-xr-x 142 root root 12288 Jan 19 15:21 ..
-rw-r--r--   1 root root   102 Feb 14  2020 .placeholder

L'output sopra mostra che non esiste una pianificazione del lavoro cron da eseguire ogni ora. Puoi vedere un file .placeholder in ogni directory, che viene creato per evitare la cancellazione accidentale della directory da parte del gestore di pacchetti. Quando non esistono altri file nella directory.

Come elencare i lavori cron giornalieri

Allo stesso modo, puoi elencare tutti i lavori pianificati da eseguire su base giornaliera. La maggior parte dei lavori dell'applicazione può essere trovata in questa directory.

ls -la /etc/cron.daily 

Uscita:

total 72
drwxr-xr-x   2 root root  4096 Dec 28 15:28 .
drwxr-xr-x 142 root root 12288 Jan 19 15:21 ..
-rwxr-xr-x   1 root root   311 Jul 16  2019 0anacron
-rwxr-xr-x   1 root root   539 Apr 13  2020 apache2
-rwxr-xr-x   1 root root   376 Dec  5  2019 apport
-rwxr-xr-x   1 root root  1478 Apr  9  2020 apt-compat
-rwxr-xr-x   1 root root   355 Dec 29  2017 bsdmainutils
-rwxr-xr-x   1 root root   384 Nov 19  2019 cracklib-runtime
-rwxr-xr-x   1 root root  1187 Sep  6  2019 dpkg
-rwxr-xr-x   1 root root   377 Jan 21  2019 logrotate
-rwxr-xr-x   1 root root  1123 Feb 25  2020 man-db
-rw-r--r--   1 root root   102 Feb 14  2020 .placeholder
-rwxr-xr-x   1 root root  4574 Jul 18  2019 popularity-contest
-rwxr-xr-x   1 root root   383 Jan  6  2020 samba
-rwxr-xr-x   1 root root   214 Apr  2  2020 update-notifier-common

Come elencare i lavori Cron settimanali

I lavori cron settimanali sono programmati nella directory /etc/cron.weekly.

ls -la /etc/cron.weekly 

Uscita:

total 32
drwxr-xr-x   2 root root  4096 Apr 23  2020 .
drwxr-xr-x 142 root root 12288 Jan 19 15:21 ..
-rwxr-xr-x   1 root root   312 Jul 16  2019 0anacron
-rwxr-xr-x   1 root root   813 Feb 25  2020 man-db
-rw-r--r--   1 root root   102 Feb 14  2020 .placeholder
-rwxr-xr-x   1 root root   211 Apr  2  2020 update-notifier-common

Come elencare i lavori mensili Cron

Tutti i lavori cron mensili sono programmati nella directory /etc/cron.monthly.

ls -la /etc/cron.monthly 

Uscita:

total 24
drwxr-xr-x   2 root root  4096 Apr 23  2020 .
drwxr-xr-x 142 root root 12288 Jan 19 15:21 ..
-rwxr-xr-x   1 root root   313 Jul 16  2019 0anacron
-rw-r--r--   1 root root   102 Feb 14  2020 .placeholder

Come visualizzare i lavori Cron specifici dell'applicazione

Maggio di applicazioni pianificate cron job per lavori regolari. Questi lavori possono essere trovati sotto i lavori cron orari, giornalieri, settimanali o mensili.

Ad esempio, il server Web Apache ha creato il file di lavoro cron in /etc/cron.daily. Significa che il lavoro viene eseguito su base giornaliera. Puoi vedere il contenuto del lavoro cron accedendo al contenuto del file come di seguito:

cat /etc/cron.daily/apache2 

Uscita:

#!/bin/sh

# run htcacheclean if set to 'cron' mode

set -e
set -u

type htcacheclean > /dev/null 2>&1 || exit 0
[ -e /etc/default/apache-htcacheclean ] || exit 0


# edit /etc/default/apache-htcacheclean to change this
HTCACHECLEAN_MODE=daemon
HTCACHECLEAN_RUN=auto
HTCACHECLEAN_SIZE=300M
HTCACHECLEAN_PATH=/var/cache/apache2/mod_cache_disk
HTCACHECLEAN_OPTIONS=""

. /etc/default/apache-htcacheclean

[ "$HTCACHECLEAN_MODE" = "cron" ] || exit 0

htcacheclean ${HTCACHECLEAN_OPTIONS}    \
                -p${HTCACHECLEAN_PATH}  \
                -l${HTCACHECLEAN_SIZE}

Conclusione

In questo tutorial, hai imparato a visualizzare, elencare o visualizzare i lavori cron su un sistema Linux. Inoltre, hai trovato dettagli sui lavori cron eseguiti su base oraria, giornaliera, settimanale o mensile.


Linux
  1. Come uso cron in Linux

  2. Come visualizzare i metadati delle immagini su Linux

  3. Come elencare o ordinare tutti i file per dimensione in Linux

  4. Definizione dei lavori di sistema utilizzando Cron in Linux

  5. Come posso visualizzare i risultati dei miei cron job?

Come elencare tutti gli utenti in Linux

Come elencare i pacchetti installati in Linux

Come elencare le partizioni del disco in Linux

Come automatizzare le attività con cron Jobs in Linux

Come eseguire ed elencare i lavori Cron per un sistema Linux tramite PHP

Come pianificare i lavori con Cron in Linux