Risposte:
Come impostazione predefinita, i log di cron sono stati salvati in / var / log / syslog. Dipende dalla configurazione di rsyslogd. Puoi cambiarlo:
vai a rsyslog config
cd /etc/rsyslog.d/
sudo nano 50-default.conf
Linea non comune:
# cron. * /var/log/cron.log
Salva il file e riavvia rsyslog
servizio sudo riavvio rsyslog
Riavvia il tuo demone cron per ottenere i messaggi dal nuovo file
sudo service cron restart
Quando cron
non funziona, invierà una mail all'utente root
. L'unico problema è: non hai il software per inviare / archiviare la posta nelle caselle di posta.
Ma non temere, Postfix
è qui!
sudo apt-get update sudo apt-get install postfix heirloom-mailx
Durante l'installazione postfix
, ti verrà chiesto come desideri configurarlo. Nella prima schermata, selezionare local only
e procedere con le impostazioni predefinite per tutto il resto.
Ora, usando il tuo editor preferito, modifica /etc/aliases
. Sarà simile a questo all'inizio:
# Vedi man 5 alias per il formato postmaster: root
Ciò significa che qualsiasi posta inviata a postnaster
verrà ora inviata root
anche a. In questo caso, vogliamo che qualsiasi posta inviata root
(per le cron mail e qualsiasi altra posta di sistema) sia inviata a username
(noi).
Quindi, modifica /etc/aliases
per assomigliare a:
# Vedi man 5 alias per il formato postmaster: root radice: normanno
(Sostituisci norman
con il tuo nome utente ovviamente. A meno che tu non abbia lo stesso nome / nome utente di me. :))
Dopo tutto ciò che è stato detto e fatto, eseguire il seguente comando per push
le modifiche:
sudo newaliases
Ora, dopo quella corsa:
sudo dpkg-reconfigure postfix
Otterrai la stessa schermata che avevi prima durante l'installazione postfix
. Esegui le impostazioni predefinite ( Local Only
, ecc.). Quando arrivi alla parte quando richiede l'alias root e postmaster, assicurati che sia uguale a quello che hai aggiunto /etc/aliases
sopra. Quindi, continua a eseguire le impostazioni predefinite.
Al termine, esegui il comando seguente per riavviare postfix
e iniziare!
riavvio postfix del servizio sudo
Ora, se cron ha un errore, ti verrà inviato per posta. Ma probabilmente ti starai chiedendo, come posso controllare la mia posta (locale) nel mondo?
Per fare ciò, esegui il comando:
posta
Così semplice. Se non c'è posta dirà No mail for <username>
. Altrimenti avrai un'interfaccia terminale pulita da usare. Vedi la pagina man per informazioni su come interagire con la tua casella di posta.
Oppure, se preferisci, puoi accedere alla tua pagina man locale usando:
man mail
E ora hai finito! :)
PS Dovresti leggere questo per saperne di più sul cron
problema.
Durante l'esecuzione mail
ho ricevuto la seguente risposta:
The program 'mail' is currently not installed. To run 'mail' please ask your administrator to install the package 'mailutils'
Invece ho trovato gli errori / mail memorizzati /var/mail/root
È /var/log/syslog
di default.
Ma può essere impostato per creare un cron.log separato, che è più utile.
Queste domande e risposte descrivono il processo:
16.04: Come faccio a creare cron.log e monitorarlo in tempo reale?
Anche in questa risposta sono le istruzioni per creare un wcron
comando che lo visualizza è quasi in tempo reale. Inoltre, si collega a un'altra risposta,
Come modificare il livello del registro cron?
che mostra come modificare il livello di registro per includere più di un semplice inizio di lavori - il livello 15 mostrerà anche errori e ora di fine.
crond
spedisce il proprietario del lavoro, non necessariamente root, quindi se è il tuo lavoro con cui hai installatocrontab -e
, ricevi la posta. Questo è anche vero se il lavoro "non riesce" ... ti invia semplicemente una trascrizione di qualsiasi output ottenuto dal lavoro.