Θέλω να επαληθεύσω ότι η εργασία cron εκτελείται και σε ποια χρονική στιγμή. Πιστεύω ότι υπάρχει ένα αρχείο καταγραφής για τις εργασίες μου sudo crontab -e
, αλλά πού;
Έψαξα στο google και βρήκα συστάσεις να ψάξω στο /var/log
(στο οποίο δεν βλέπω τίποτα με 'cron' στο όνομα) και να επεξεργαστώ το αρχείο /etc/syslog.conf
το οποίο επίσης δεν έχω.
Σε μια προεπιλεγμένη εγκατάσταση οι εργασίες cron καταγράφονται στο
/var/log/syslog
Μπορείτε να δείτε μόνο τις εργασίες cron σε αυτό το αρχείο καταγραφής εκτελώντας την εντολή
grep CRON /var/log/syslog
Αν δεν έχετε επαναρυθμίσει τίποτα, οι καταχωρήσεις θα βρίσκονται εκεί.
Μπορείτε να δημιουργήσετε ένα αρχείο cron.log για να περιέχει μόνο τις καταχωρήσεις CRON που εμφανίζονται στο syslog. Σημειώστε ότι οι εργασίες CRON θα εξακολουθούν να εμφανίζονται στο syslog αν ακολουθήσετε τις ακόλουθες οδηγίες.
Ανοίξτε το αρχείο
/etc/rsyslog.d/50-default.conf
Βρείτε τη γραμμή που αρχίζει με:
#cron.*
Αποσυνδυάστε αυτή τη γραμμή, αποθηκεύστε το αρχείο και επανεκκινήστε το rsyslog:
sudo service rsyslog restart
Τώρα θα πρέπει να δείτε ένα αρχείο καταγραφής cron εδώ:
/var/log/cron.log
Η δραστηριότητα cron θα καταγράφεται τώρα σε αυτό το αρχείο (εκτός από το syslog).
Σημειώστε ότι στο αρχείο cron.log θα βλέπετε καταχωρήσεις για το πότε το cron έτρεξε σενάρια στο /etc/cron.hourly, cron.daily κ.λπ. - π.χ:
Apr 12 14:17:01 cd CRON[14368]: (root) CMD ( cd / && run-parts --report /etc/cron.hourly)
Ωστόσο, δεν θα δείτε περισσότερες πληροφορίες σχετικά με το ποια σενάρια εκτελέστηκαν πραγματικά μέσα στο /etc/cron.daily ή /etc/cron.hourly, εκτός αν αυτά τα σενάρια κατευθύνουν την έξοδο στο cron.log (ή ίσως σε κάποιο άλλο αρχείο καταγραφής).
Αν θέλετε να επαληθεύσετε αν εκτελείται ένα crontab και να μην χρειάζεται να το αναζητήσετε στο cron.log ή στο syslog, δημιουργήστε ένα crontab που ανακατευθύνει την έξοδο σε ένα αρχείο καταγραφής της επιλογής σας - κάτι σαν:
01 14 * * * /home/joe/myscript >> /home/log/myscript.log 2>&1
Αυτό θα ανακατευθύνει όλες τις τυπικές εξόδους και τα σφάλματα που μπορεί να παράγονται από το σενάριο που εκτελείται στο αρχείο καταγραφής που έχει καθοριστεί.
Μερικές φορές μπορεί να είναι χρήσιμη η συνεχής παρακολούθησή του, σε αυτή την περίπτωση:
tail -f /var/log/syslog | grep CRON