Sayang sekali bahwa di halaman ini dan halaman lain yang tercantum dalam hasil google tentang cara menangani pekerjaan cron yang digantung yang tidak pernah disebutkan oleh siapa pun tentang pstree.
pstree
Lihat di bawah bagian cron pohon
Saya pikir jika shell-script wrapper ada di sekitar itu harus timeout cronjob, jika itu berjalan untuk jangka waktu yang cukup lama. Pembungkus harus mengirim SIGHUP atau SIGALARM ketika batas waktu terjadi sejak periode cronjob dipanggil. Sesuatu seperti ini:
50 * * * * /usr/bin/my_cron_wrapper_timeout -t 1 /usr/bin/my_command_cron_job_to_run
Cron_wrapper_timeout ini pada dasarnya harus mengirim sinyal timeout sekali - t beralih opsi 1 jam berlalu dan kemudian harus mengirim kill -HUP
memberi sinyal ke cronjob dan kemudian pastikan untuk menuai prosesnya juga dan kemudian mengakhiri/membunuh dirinya sendiri.
Atau sebagai alternatif, kode harus ditulis dengan cronjob itu sendiri untuk menangani waktu tunggu sinyal ALARM dan memastikannya bersih sebelum mati dengan lembut.
EDIT
Inilah yang saya maksud:pengawas di http://chihungchan.blogspot.com/2011/03/no-more-hanging-jobs-in-cron.html
Anda harus menghentikan proses saat crontab mulai berjalan.
#kill -HUP PID (PID: Process ID is the process running)
Untuk melihat hubungan PID dengan proses yang berjalan (dan info lainnya) gunakan top
perintah, ubah urutan kolom dengan tombol <
dan >
Coba juga ps -ax|grep [your_process_file]
yang mencantumkan proses yang berjalan yang difilter menurut nama yang Anda pilih
-HUP =TUTUP