有時候,可能需要在作業系統執行乙個定時任務,例如:日誌檔案壓縮歸檔處理,定時呼叫某某服務,定時重啟某某服務等等。redhat作業系統自帶的crond服務,就時用來實現定時任務的系統服務。
[root@izj6cj20vqe3q7vt49zoxdz ~]# systemctl status crond
● crond.service - command scheduler
loaded: loaded (/usr/lib/systemd/system/crond.service; enabled; vendor preset: enabled)
active: active (running) since thu 2020-05-28 21:24:46 cst; 20min ago
main pid: 1273 (crond)
tasks: 1 (limit: 2862)
memory: 4.7m
cgroup: /system.slice/crond.service
└─1273 /usr/sbin/crond -n
may 28 21:42:01 izj6cj20vqe3q7vt49zoxdz crond[1273]: 2020-05-28 21:42:01 dmarc failure to load tld list '/usr/share/publicsuffix/public_suffix_list.dat': no such >
may 28 21:42:01 izj6cj20vqe3q7vt49zoxdz crond[1273]: 2020-05-28 21:42:01 1jeinj-0000fq-vn user 0 set for local_delivery transport is on the never_users list
may 28 21:43:01 izj6cj20vqe3q7vt49zoxdz crond[1273]: 2020-05-28 21:43:01 dmarc failure to load tld list '/usr/share/publicsuffix/public_suffix_list.dat': no such >
may 28 21:43:01 izj6cj20vqe3q7vt49zoxdz crond[1273]: 2020-05-28 21:43:01 1jeioh-0000fe-5n user 0 set for local_delivery transport is on the never_users list
may 28 21:43:01 izj6cj20vqe3q7vt49zoxdz crond[1273]: 2020-05-28 21:43:01 dmarc failure to load tld list '/usr/share/publicsuffix/public_suffix_list.dat': no such >
may 28 21:43:01 izj6cj20vqe3q7vt49zoxdz crond[1273]: 2020-05-28 21:43:01 1jeioh-0000fj-6q user 0 set for local_delivery transport is on the never_users list
may 28 21:44:01 izj6cj20vqe3q7vt49zoxdz crond[1273]: 2020-05-28 21:44:01 dmarc failure to load tld list '/usr/share/publicsuffix/public_suffix_list.dat': no such >
may 28 21:44:01 izj6cj20vqe3q7vt49zoxdz crond[1273]: 2020-05-28 21:44:01 1jeipf-0000fw-cq user 0 set for local_delivery transport is on the never_users list
may 28 21:44:01 izj6cj20vqe3q7vt49zoxdz crond[1273]: 2020-05-28 21:44:01 dmarc failure to load tld list '/usr/share/publicsuffix/public_suffix_list.dat': no such >
may 28 21:44:01 izj6cj20vqe3q7vt49zoxdz crond[1273]: 2020-05-28 21:44:01 1jeipf-0000g1-dw user 0 set for local_delivery transport is on the never_users list
lines 1-19/19 (end)
[root@izj6cj20vqe3q7vt49zoxdz ~]# crontab -l
[root@izj6cj20vqe3q7vt49zoxdz ~]#
[root@izj6cj20vqe3q7vt49zoxdz ~]# crontab -u robin -l
no crontab for robin
[root@izj6cj20vqe3q7vt49zoxdz ~]#
使用crontab -u檢視其他使用者定時任務。
[root@izj6cj20vqe3q7vt49zoxdz ~]# cat /var/spool/cron/robin
[root@izj6cj20vqe3q7vt49zoxdz ~]#
通過檢視配置檔案的方式檢視定時任務。
[root@izj6cj20vqe3q7vt49zoxdz ~]# cat /etc/crontab
shell=/bin/bash
path=/sbin:/bin:/usr/sbin:/usr/bin
mailto=root
# for details see man 4 crontabs
# example of job definition:
# .---------------- minute (0 - 59)
# | .------------- hour (0 - 23)
# | | .---------- day of month (1 - 31)
# | | | .------- month (1 - 12) or jan,feb,mar,apr ...
# | | | | .---- day of week (0 - 6) (sunday=0 or 7) or sun,mon,tue,wed,thu,fri,sat
# | | | | |
# * * * * * user-name command to be executed
[root@izj6cj20vqe3q7vt49zoxdz ~]#
系統級的定時任務我們一般不人工干預,建議只新建使用者級定時任務。
[root@izj6cj20vqe3q7vt49zoxdz ~]# crontab -e
crontab: installing new crontab
[root@izj6cj20vqe3q7vt49zoxdz ~]#
執行crontab -e相當於編輯定時任務配置檔案,新增一行定時任務設定後,就像儲存檔案一樣即可。不加使用者引數相當於只為當前使用者新增定時任務。
[root@izj6cj20vqe3q7vt49zoxdz ~]# crontab -u robin -e
no crontab for robin - using an empty one
crontab: installing new crontab
[root@izj6cj20vqe3q7vt49zoxdz ~]# crontab -u robin -l
[root@izj6cj20vqe3q7vt49zoxdz ~]# cat /var/spool/cron/robin
robin是乙個非root使用者,新增後馬上使用crontab -u robin -l檢視配置內容。第1列分鐘0~59
第2列小時0~23(0表示子夜)
第3列日1~31
第4列月1~12
第5列星期0~7(0和7表示星期天)
第6列要執行的命令
介紹乙個很好的定時任務規則驗證工具,當系統中有 /etc/cron.allow 檔案時,只有寫入此檔案的使用者可以使用 crontab 命令,沒有寫入的使用者不能使用 crontab 命令。同樣,如果有此檔案,/etc/cron.deny 檔案會被忽略,因為 /etc/cron.allow 檔案的優先順序更高。
當系統中只有 /etc/cron.deny 檔案時,寫入此檔案的使用者不能使用 crontab 命令,沒有寫入檔案的使用者可以使用 crontab 命令。centos8,在預設情況下,系統只有這個/etc/cron.deny檔案
[root@izj6cj20vqe3q7vt49zoxdz ~]# cat /etc/cron.deny
[root@izj6cj20vqe3q7vt49zoxdz ~]# cat /etc/cron.allow
cat: /etc/cron.allow: no such file or directory
[root@izj6cj20vqe3q7vt49zoxdz ~]#
PL SQL編寫定時Job Oracle定時刪除
如何使用oracle儲存過程結合定時job來達到定時刪除指定資料庫表資料的目的。建立 crxj collect.test table 表 create table crxj collect.test table seq number 8 primary key,seqtime date 建立 crx...
android 定時關機,定時重啟
打包成系統應用方式 1.系統對應的公鑰檔案platform.pk8和私鑰檔案platform.x509.pem以及簽名工具signapk.jar 2.將需要打包的apk和第一步裡面提到的三個檔案放到統一個資料夾下 如果滿足上面的條件就可以輕鬆實現 定時 關機重啟的功能了 關機 intent inte...
定時重啟 MySQL 定時重啟 Apache
有時候覺得,伺服器執行時間過長,程式上無法釋放mysql,造成伺服器壓力過大。因此,設想一下,不用重新啟動伺服器的情況下,完成apache和mysql的記憶體釋放。首先,apache的重新啟動。操作步驟 開始 程式 附件 管理工具 任務計畫 新增任務計畫 下一步 apache restart 選擇時...