Rumah  >  Artikel  >  Operasi dan penyelenggaraan  >  Bagaimana untuk menyediakan tugas berjadual sistem pada Linux

Bagaimana untuk menyediakan tugas berjadual sistem pada Linux

WBOY
WBOYasal
2023-07-05 14:46:2910375semak imbas

Cara menyediakan tugas berjadual sistem pada Linux

Dalam sistem Linux, kita selalunya perlu melaksanakan beberapa tugas dengan kerap, seperti menyandarkan pangkalan data, membersihkan fail log, dsb. Untuk melaksanakan tugas berjadual ini, kami boleh menggunakan alat tugas berjadual sistem-crontab Linux.

1. Fahami crontab
crontab ialah alat pengurusan tugas berjadual di bawah sistem Linux, digunakan untuk melaksanakan tugas biasa. Ia akan melaksanakan tugas tertentu mengikut masa yang dijadualkan dan boleh berjalan secara automatik di latar belakang, yang sangat mudah.

2. Sediakan tugas berjadual

  1. Buka terminal dan masukkan perintah crontab -e untuk memasuki editor tugasan yang dijadualkan. crontab -e,进入定时任务编辑器。
  2. 在编辑器里,我们可以设置新的定时任务。每一行代表一个任务,每行的格式如下:

    分钟 小时 日期 月份 星期 要执行的命令

    其中,分钟取值范围是0-59,小时取值范围是0-23,日期取值范围是1-31,月份取值范围是1-12,星期取值范围是0-7(0和7都表示星期日)。

    例如,下面的示例是每天下午3点定时备份数据库:

    0 15 * * * /usr/bin/mysqldump -u username -p password database > /path/to/backup.sql

    这个示例中,0 15 * * *表示每天的第15小时(即下午3点),/usr/bin/mysqldump -u username -p password database > /path/to/backup.sql是要执行的命令,将数据库备份到/path/to/backup.sql文件中。

  3. 编辑完毕后,按下Ctrl + X,然后按下Y保存退出。

三、常用的crontab操作命令
在使用crontab时,还可以使用一些命令来管理定时任务。

  1. crontab -l:列出当前用户的定时任务列表。
  2. crontab -e:编辑当前用户的定时任务列表。
  3. crontab -r:删除当前用户的定时任务列表。
  4. crontab -u username -l:列出指定用户的定时任务列表。
  5. crontab -u username -e:编辑指定用户的定时任务列表。
  6. crontab -u username -r:删除指定用户的定时任务列表。

四、其他注意事项

  1. 在编写定时任务时,要注意命令的执行路径。最好使用绝对路径,避免由于环境变量等问题导致找不到命令。
  2. 在定时任务中,可以使用通配符来实现更灵活的任务调度。比如,*表示所有可能的取值,*/n表示每n个时间单位。
  3. crontab支持使用@reboot

  4. Dalam editor, kami boleh menyediakan tugasan berjadual baharu. Setiap baris mewakili tugasan, dan format setiap baris adalah seperti berikut:
@reboot /path/to/your/script

Antaranya, julat nilai minit ialah 0-59, julat nilai jam ialah 0-23, julat nilai tarikh ialah 1-31, dan julat nilai bulan ialah 1 -12, julat nilai hari dalam seminggu ialah 0-7 (kedua-dua 0 dan 7 mewakili Ahad).

🎜Sebagai contoh, contoh berikut ialah membuat sandaran pangkalan data secara kerap pada jam 3 petang setiap hari: 🎜rrreee🎜Dalam contoh ini, 0 15 * * * bermaksud jam ke-15 setiap hari (iaitu 3 petang) , /usr/bin/mysqldump -u nama pengguna -p pangkalan data kata laluan > /backup.sql fail. 🎜🎜🎜Selepas mengedit, tekan Ctrl + X, kemudian tekan Y untuk menyimpan dan keluar. 🎜🎜🎜3. Perintah operasi crontab yang biasa digunakan🎜Apabila menggunakan crontab, anda juga boleh menggunakan beberapa arahan untuk mengurus tugas yang dijadualkan. 🎜🎜🎜crontab -l: Senaraikan senarai tugasan berjadual pengguna semasa. 🎜🎜crontab -e: Edit senarai tugas berjadual pengguna semasa. 🎜🎜crontab -r: Padam senarai tugasan berjadual pengguna semasa. 🎜🎜crontab -u username -l: Senaraikan senarai tugas berjadual pengguna yang ditentukan. 🎜🎜crontab -u nama pengguna -e: Edit senarai tugas berjadual pengguna yang ditentukan. 🎜🎜crontab -u username -r: Padam senarai tugasan yang dijadualkan bagi pengguna yang ditentukan. 🎜🎜🎜4. Langkah berjaga-jaga lain🎜🎜🎜Apabila menulis tugasan berjadual, beri perhatian kepada laluan pelaksanaan arahan. Adalah lebih baik untuk menggunakan laluan mutlak untuk mengelakkan arahan tidak ditemui kerana pembolehubah persekitaran dan isu lain. 🎜🎜Dalam tugasan berjadual, kad bebas boleh digunakan untuk mencapai penjadualan tugas yang lebih fleksibel. Contohnya, * mewakili semua nilai yang mungkin dan */n mewakili setiap n unit masa. 🎜🎜🎜crontab menyokong menggunakan kata kunci @reboot untuk melaksanakan tugasan yang dilaksanakan secara automatik apabila sistem dimulakan. Contohnya: 🎜rrreee🎜🎜🎜Di atas adalah kaedah dan contoh untuk menyediakan tugas berjadual sistem pada Linux. Dengan menetapkan tugas berjadual dengan betul, kami boleh merealisasikan operasi automatik dan operasi penyelenggaraan serta meningkatkan kecekapan dan kestabilan. Harap ini membantu! 🎜

Atas ialah kandungan terperinci Bagaimana untuk menyediakan tugas berjadual sistem pada Linux. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn