Tugas berjadual Linux yang dilaksanakan termasuk: cron, anacron, at, dsb., tetapi perkara yang saya temui dalam kerja harian saya ialah perkhidmatan cron. cron ialah nama perkhidmatan, crond ialah proses latar belakang, dan crontab ialah senarai tugas berjadual tersuai. Tugas berjadual sering digunakan dalam projek untuk melaksanakan fungsi individu Baru-baru ini, saya menghadapi situasi di mana tugas berjadual tidak dilaksanakan Kerana saya tidak tahu banyak tentang ini sebelum ini, ia memakan masa dan susah payah, dan akhirnya saya menemui masalahnya. . Atas sebab ini, saya ingin berkongsi dengan anda beberapa teknik penyelesaian masalah untuk mengelakkan lencongan pada masa hadapan.
1. Semak sama ada perkhidmatan crond dilaksanakan.
Anda boleh melihat proses crond pid melalui perintah pgrepcrond atau /sbin/servicecrondstatus, dan anda boleh menentukan sama ada perkhidmatan crond sedang berjalan.
2. Semak sama ada perkhidmatan cron berfungsi:
Gunakan arahan sudotail–f/var/log/cron
Selagi arahan itu muncul dalam log ini, ia bermakna ia telah dilaksanakan. Apabila saya sampai ke langkah ini, saya mendapati bahawa tiada rekod pelaksanaan dalam log, yang bermaksud bahawa tugasan saya yang dijadualkan tidak dilaksanakan.
3 Selepas ini, kita perlu menyiasat mengapa ia tidak dilaksanakan
(1) Skrip: Kebarangkalian masalah skrip menyebabkan crontab tidak dilaksanakan adalah sangat tinggi dan ia juga merupakan cara yang paling biasa selain menyemak skrip. Anda boleh melaksanakan skrip secara automatik untuk melihat jika ralat dilaporkanPelaksanaan automatik berjaya, semak sama ada pembolehubah persekitaran menyebabkan kegagalan pelaksanaan crontab. Persekitaran pelaksanaan tugas ialah persekitaran pelaksanaan pengguna semasa atau pengguna yang ditentukan
tugas berjadual linux tidak dilaksanakan, jadi apabila pengekodantugas berjadual linux tidak dilaksanakan, cuba rujuk fail atau panggil arahan melalui nama laluan penuh, atau gantikan fail yang dirujuk Atau tambahkan laluan arahan kepada pembolehubah persekitaran. (2) Masa sistem yang berbeza juga boleh menyebabkan tugasan berjadual tidak dapat dilaksanakan Dalam kes ini, anda perlu menyemak masa sistem
Tarikh(Lihat)
Tarikh–smm/dd/yy (ubah suai masa sistem)
(3) Daemon crontab lari, mulakan semula proses
servicecrondrestart
(4) Terdapat masalah dengan pengekodan skrip
Skrip menyusun Linux rar di bawah tetingkap Selepas dipindahkan ke Linux, ia akan melaporkan "锘?!/bin/bash".
(5) Semak sama ada skrip mempunyai kebenaran boleh laku. Anda mesti memastikan bahawa pengguna yang melaksanakan skrip mempunyai kebenaran untuk melaksanakan fail yang diubah suai.
Atas ialah kandungan terperinci Apakah yang perlu saya lakukan jika tugas berjadual Linux tidak dilaksanakan? Artikel ini mengajar anda cara menyelesaikan masalah. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!