Direktori Artikel
Proses cron terbina dalam Linux boleh membantu kita mencapai keperluan kita untuk melaksanakan tugasan berjadual. Dengan menggunakan skrip cron dan shell, kita boleh melaksanakan arahan tugasan yang sangat kompleks dengan mudah mengikut jadual.
Apa itu Cron?
Kita sering menggunakan arahan crontab , yang merupakan singkatan daripada cron table.
Ia ialah fail konfigurasi untuk cron, yang juga boleh dipanggil senarai kerja.
Kami boleh mencari fail konfigurasi yang berkaitan dalam folder berikut.
- Direktori /var/spool/cron/ menyimpan tugas crontab untuk setiap pengguna termasuk akar, dan setiap tugas dinamakan sempena pencipta
- /etc/crontab Fail ini bertanggungjawab untuk menjadualkan pelbagai tugas pentadbiran dan penyelenggaraan.
- /etc/cron.d/ Direktori ini digunakan untuk menyimpan sebarang fail crontab atau skrip yang akan dilaksanakan.
- Kita juga boleh meletakkan skrip dalam /etc/cron.hourly, /etc/cron.daily, /etc/cron.weekly, /etc/cron.monthly direktori, biarkan ia dilaksanakan setiap jam/hari/minggu, bulan.
Bagaimanakah Crontab digunakan?
Perintah yang biasa kami gunakan adalah seperti berikut:
crontab [-u username] //省略用户名表示操作当前用户的crontab
-e (编辑工作表)
-l (列出工作表里的命令)
-r (删除工作表)kami gunacrontab -eMemasuki pengeditan lembaran kerja pengguna semasa ialah antara muka vim biasa.Setiap baris adalah arahan.
Edit Lembaran Kerja▼
crontab -e
Senaraikan lembaran kerja▼
crontab -l
Padamkan lembaran kerja ▼
crontab -r
Arahan crontab distrukturkan sebagai masa + tindakan. Pilihan masa termasuk minit, jam, hari, bulan dan Jumaat. Operator termasuk...
- * semua nombor dalam julat
- / berapa nombor
- - dari X hingga Z
- ,nombor hash
Crontab Laksanakan Contoh Perintah Tugas Berjadual

Contoh 1: Laksanakan myCommand setiap 1 minit
* * * * * myCommand
Contoh 2: Pelaksanaan pada minit ke-3 dan ke-15 setiap jam
3,15 * * * * myCommand
实例3:在上午8点到11点的第3和第15分钟执行
3,15 8-11 * * * myCommand
实例4:每隔两天的上午8点到11点的第3和第15分钟执行
3,15 8-11 */2 * * myCommand
实例5:每周一上午8点到11点的第3和第15分钟执行
3,15 8-11 * * 1 myCommand
Contoh 6: Mulakan semula smb pada 21:30 setiap malam
30 21 * * * /etc/init.d/smb restart
实例7:每月1、10、22日的4 : 45重启smb
45 4 1,10,22 * * /etc/init.d/smb restart
Contoh 8: Mulakan semula smb pada 1:10 setiap Sabtu dan Ahad
10 1 * * 6,0 /etc/init.d/smb restart
Contoh 9: Mulakan semula smb setiap 18 minit antara 00:23 dan 00:30 setiap hari
0,30 18-23 * * * /etc/init.d/smb restart
Contoh 10: Mulakan semula smb setiap hari Sabtu jam 11:00 malam
0 23 * * 6 /etc/init.d/smb restart
Contoh 11: Mulakan semula smb setiap jam
* */1 * * * /etc/init.d/smb restart
Contoh 12: Mulakan semula smb setiap jam antara 11 malam dan 7 pagi
* 23-7/1 * * * /etc/init.d/smb restart
Bagaimana untuk memadam tugas Crontab yang ditentukan?
SSH masukkan arahan crontab berikut ▼
crontab -e
- Dengan mengandaikan berbilang tugas, padamkan tugas berjadual yang ditentukan dalam vim (gerakkan kursor ke baris konfigurasi untuk dipadam, tekan kekunci padam untuk memadam)
tekan :wq simpan dan keluar
Semak untuk melihat sama ada tugas Crontab telah dipadamkan?
crontab -l
- Didapati tugas berjadual crontab yang baru dipadamkan tidak wujud, bermakna pemadaman berjaya.
Bagaimana untuk memulakan semula perkhidmatan Cron?
Menggunakan arahan pengurusan perkhidmatan sistem : Dalam beberapa kes, anda mungkin perlu menggunakan arahan pengurusan perkhidmatan sistem secara langsung untuk memulakan semula perkhidmatan cron.
Khususnya, apabila menambah atau mengubah suai tugasan berjadual Cron dalam HestiaCP , perkhidmatan Cron mesti dimulakan semula agar perubahan tersebut berkuat kuasa.
Ini biasanya melibatkan salah satu daripada arahan berikut:
Untuk kegunaan
systemdSistem:sudo systemctl restart cronUntuk kegunaan
init.dSkrip untuk sistem lama:sudo /etc/init.d/cron restartUntuk kegunaan
serviceSistem arahan:sudo service cron restart
Panel Kawalan CWPCara Menetapkan Tugasan Berjadual Crontab
- Dalam tugas yang dijadualkan, tambahkan perintah penyegerakan untuk menyegerakkan fail sandaran panel kawalan CWP ke GDrive secara automatik.
Jika menggunakan Panel Kawalan CWP, log masuk ke Panel Kawalan CWPDaripada Server Setting → Crontab for root ▼

Dalam "Tambah Pekerjaan Cron Tersuai Penuh", masukkan perintah cron tersuai sepenuhnya berikut ▼
00 7 * * * rclone sync /backup2 gdrive:cwp-backup2 55 7 * * * rclone sync /newbackup gdrive:cwp-newbackup
- (Segerakkan direktori tempatan secara automatik setiap pagi pada jam 7:00 pagi
/backup2ke cakera rangkaian dengan nama konfigurasi gdrivebackup2Isi kandungan) - (Segerakkan direktori tempatan secara automatik setiap pagi pada jam 7:55 pagi
/newbackupke cakera rangkaian dengan nama konfigurasi gdrivecwp-newbackupIsi kandungan) - SegerakkanWordPressUntuk fail tapak web, adalah disyorkan untuk tidak membuat sandaran secara berperingkat, kerana ujian mendapati bahawa jika nama fail adalah sama, tetapi kandungan fail berbeza, ia tidak akan disegerakkan.
Oleh kerana proses rclone mungkin terus berjalan di latar belakang selepas permulaan penyegerakan automatik yang dijadualkan , ia boleh menggunakan sehingga 20% sumber CPU, mengakibatkan pembaziran sumber pelayan.
Oleh itu, adalah perlu untuk menambah perintah tugas berjadual yang disesuaikan sepenuhnya untuk memaksa proses rclone ditutup ▼
00 09 * * * killall rclone
- (Tutup proses rclone secara automatik pada jam 7:00 setiap pagi)
Jika panel kawalan CWP tidak boleh mengedit tugas berjadual Crontab, anda boleh menggunakan FTPPerisianbuka fail /var/spool/cron/ Edit tugasan bermasa Crontab secara langsung.
Bagaimana untuk menggunakan rclone untuk membuat sandaran VPS? Sila klik pautan di bawah untuk melihat tutorial CentOS tentang penyegerakan automatik menggunakan GDrive ▼
Semoga artikel "Arahan Tugas Skrip Berjadual Linux Crontab & Penggunaan Fail Konfigurasi" yang dikongsikan di blog Chen Weiliang ( https://www.chenweiliang.com/ ) dapat membantu anda.
Jangan ragu untuk berkongsi pautan artikel ini: https://www.chenweiliang.com/cwl-1429.html

