Mengapa anacron tidak akan berjalan?


9

Saya memiliki sistem Ubuntu yang telah menginstal anacron. Namun saya cukup yakin itu tidak berjalan. Itu tidak menjalankan perintah di /etc/cron.daily untuk memutar file syslog (Saya menggunakan sysklog, yang memiliki metode log rotating sendiri, tidak menggunakan logrotate). Terakhir kali log diputar pada bulan Oktober 2009. /var/spool/anacron/cron.dailyada dan isinya 20091015. AFAIR kami mengalami pemadaman listrik saat itu, dan semuanya reboot.

Bagaimana saya bisa men-debug anacron? Bagaimana saya bisa melihat mengapa itu tidak berjalan? Naluri pertamaku adalah mencari /var/log/anacron, tapi itu tidak ada. Bagaimana saya bisa memperbaikinya agar berjalan kembali?

Jawaban:


5

Lihatlah yang berikut ini:

zgrep anacron /var/log/cron.log.{9..1}* /var/log/cron.log | less

Entri terakhir pada satu sistem untuk saya adalah 4 November 2008.

zgrep anacron /var/log/syslog.{9..1}* /var/log/syslog | less

Entri berkisar dari 28 Desember hingga 4 Januari untuk saya.

cat /etc/crontab

Anda akan melihat entri yang mirip dengan ini untuk harian, mingguan, dan bulanan:

25 6    * * *   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )

Dan ini akan menunjukkan banyak file:

ls -l /etc/cron.{daily,weekly,monthly}

Dalam /etc/cron.dailysaya memiliki logrotate dan sysklogd.

Dan jika Anda melakukannya:

ps auxww | grep [c]ron

Anda harus melihat bahwa crondaemon sedang berjalan.

Jika kamu melakukan:

cat /etc/cron.daily/sysklogd

Anda akan melihat beberapa baris yang berakhir dengan || exit 0- periksa untuk memastikan bahwa file ada dan, untuk yang dengan test -xitu mereka dieksekusi. Beberapa dari mereka tidak menyukai saya karena saya menggunakan logrotate.

Periksa untuk melihat apakah syslogd sedang berjalan:

ps -C syslogd

Lihat apakah savelog ada dan dapat dieksekusi:

ls -l $(type -p savelog)

Hanya itu yang bisa saya pikirkan saat ini.


4
Plus ingat bahwa anacron pada dasarnya hanya konfigurasi untuk cron, jadi ini bukan daemon
LapTop006

10

Coba jalankan:

sudo run-parts --test /etc/cron.daily

Baris itu akan memberi tahu apakah skrip baru Anda termasuk yang "dikenali". Misalnya bisa jadi skrip memiliki nama yang salah, bendera exec hilang atau masalah izin dll.

Saya menemukan cara ini bahwa alat run-parts (digunakan oleh cron) tidak suka akhiran .sh


2

Saya memiliki ubunutu 8.04 vps (w / plesk) yang telah menginstal anacron, salah konfigurasi, dan tidak berjalan. apt-get instal ulang semua file yang relevan dibuat ulang.

Setelah itu, yang harus saya lakukan adalah menambahkan entri ke crontab setiap jam untuk menjalankan anacron dan membuatnya bekerja.

script yang saya masukkan ke cron.hourly / just

#!bin/bash
/path/to/anacron -s 

1

Coba mulai ulang layanan, apakah itu memberi Anda kesalahan?


0

Beberapa crons Linux terkelupas. Kami menggunakan cfengine untuk memulai kembali cron, dan cron untuk menonton cfengine untuk hal-hal penting misi. Hari-hari ini, tidak ada yang jatuh secara mencolok. Tidak seperti di 90-an ketika cron menabrak setiap hari :-)


0

Jika nama skrip di /etc/cron.{daily,weekly,monthly}/folder memiliki titik di dalamnya, sepertinya tidak mengeksekusi. Cobalah untuk mengubah nama menjadi sesuatu tanpa titik di dalamnya.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.