GNU/Linux >> Belajar Linux >  >> Linux

Daftarkan tab cron yang sedang berjalan dan hentikan

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


Linux
  1. Pemula berhenti jika berjalan

  2. CronJob tidak berjalan

  3. Bagaimana cara melihat pekerjaan cron yang sedang berjalan?

  1. Cara memulai layanan systemd setelah pengguna masuk dan menghentikannya sebelum pengguna keluar

  2. pekerjaan cron terkadang tidak berjalan

  3. Pengguna apa yang harus menjalankan apache dan PHP? Izin apa yang harus dimiliki file /var/www?

  1. Menjalankan Script Dengan “. ” Dan Dengan “sumber”?

  2. Loop Melalui Folder Dan Daftar File?

  3. Menjalankan Cron setiap 2 jam