Rumah > Artikel > Tutorial sistem > Ketahui cara mengkonfigurasi tugas berjadual dalam Linux: menggunakan cron dan anacron
Pengenalan | Dalam artikel ini, kami menerangkan cron dan anacron serta menunjukkan kepada anda cara menyediakan anacron dalam Linux. Kami juga akan membandingkan kedua-dua alat ini. |
cron - ialah proses daemon yang digunakan untuk menjalankan tugas berjadual seperti sandaran sistem, kemas kini, dsb. Ia sesuai untuk tugas berjadual yang dijalankan pada mesin yang menjalankan 24X7, seperti pelayan.
Arahan/skrip ditulis dalam skrip tugas cron, yang dijadualkan dalam fail crontab. Fail lalai sistem cromtab ialah /etc/crontab , tetapi setiap pengguna juga boleh mencipta fail cromtab mereka sendiri untuk menjalankan arahan yang ditentukan pengguna pada masa tertentu.
Untuk mencipta fail crontab peribadi, hanya taip:
$ crontab -eCara menyediakan anacron dalam Linux
anacron digunakan untuk menjalankan arahan dengan kekerapan dalam hari. Ia berfungsi sedikit berbeza daripada cron, ia mengandaikan mesin tidak akan dihidupkan sepanjang masa.
Cron juga sesuai untuk menjalankan tugas berjadual harian, mingguan dan bulanan pada mesin yang tidak berjalan 24X7, seperti komputer riba dan komputer meja (terjemahan LCTT: tidak sesuai untuk melaksanakan tugas mengikut jam dan minit).
Andaikan anda mempunyai tugas berjadual (seperti skrip sandaran) yang ingin anda jalankan setiap hari menggunakan cron pada tengah malam, mungkin semasa anda sedang tidur dan desktop/komputer riba anda ditutup pada masa itu. Skrip sandaran anda tidak akan dijalankan.
Namun, jika anda menggunakan anacron, anda boleh memastikan bahawa skrip sandaran akan dilaksanakan pada kali seterusnya anda menghidupkan desktop/komputer riba anda.
Cara anacron berfungsi pada Linuxtugasan anacron disenaraikan dalam /etc/anacrontab dan tugasan boleh dijadualkan menggunakan format berikut (komen dalam fail anacron mesti bermula dengan nombor #).
period delay job-identifier command
Dari format di atas:
Untuk menyemak imbas fail contoh, taip:
$ ls -l /var/spool/anacron/ total 12 -rw------- 1 root root 9 Jun 1 10:25 cron.daily -rw------- 1 root root 9 May 27 11:01 cron.monthly -rw------- 1 root root 9 May 30 10:28 cron.weekly
Inilah yang sebenarnya berlaku:
现在让我们看一个例子。这个会每天运行 /home/aaronkilik/bin/backup.sh 脚本:
@daily 10 example.daily /bin/bash /home/aaronkilik/bin/backup.sh
当机器在 backup.sh 期望被运行时是关机的,anacron 会在机器开机十分钟之后运行它,而不用再等待 7 天。
这里有两个你应该理解的 anacrontab 文件的重要变量:
这是你的 anacrontab 文件可能看上去的样子。
Anacron – /etc/anacrontab :
# /etc/anacrontab: configuration file for anacron # See anacron(8) and anacrontab(5) for details. SHELL=/bin/sh PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin HOME=/root LOGNAME=root # These replace cron's entries 1 5 cron.daily run-parts --report /etc/cron.daily 7 10 cron.weekly run-parts --report /etc/cron.weekly @monthly 15 cron.monthly run-parts --report /etc/cron.monthly @daily 10 example.daily /bin/bash /home/aaronkilik/bin/backup.sh
下面是 cron 以及 anacron 的比较,帮助你理解何时用他们其中一个。
cron | anacron |
---|---|
它是守护进程 | 它不是守护进程 |
适合服务器 | 适合桌面/笔记本电脑 |
可以让你以分钟级运行计划任务 | 只能让你以天为基础来运行计划任务 |
关机时不会执行计划任务 | 如果计划任务到期,机器是关机的,那么它会在机器下次开机后执行计划任务 |
普通用户和 root 用户都可以使用 | 只有 root 用户可以使用(使用特定的配置启动普通任务) |
Perbezaan utama antara cron dan anacron ialah cron boleh berjalan dengan berkesan pada mesin yang sedang berjalan secara berterusan, manakala anacron disasarkan kepada mesin yang akan ditutup dalam masa sehari atau seminggu.
Jika anda mengetahui kaedah lain, sila kongsikannya dengan kami di dalam kotak komen.
Alamat asal: https://www.tecmint.com/cron-vs-anacron-schedule-jobs-using-anacron-on-linux/
Alamat artikel ini: https://www.linuxprobe.com/cron-anacron-work.html Editor: Zhang Xiong, Pengulas: Peng Zengbao
Alamat asal artikel ini: https://www.linuxprobe.com/cron-anacron-work.htmlEditor: Penamat Masalah, Penyemak: Tiada
Atas ialah kandungan terperinci Ketahui cara mengkonfigurasi tugas berjadual dalam Linux: menggunakan cron dan anacron. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!