定時任務Crond介紹
Crond是linux系統中用來定期執行命令/腳本或指定程序任務的一種服務或軟件,一般情況下,我們安裝完Centos5/6 linux操作系統之后,默認便會啟動Crond任務調度服務。
Crond服務會定期(默認每分鐘檢查一次)檢查系統中是否有要執行的任務工作,如果有,便會根據其預先設定的定時任務規則自動執行該定時任務工作,這個crond定時任務服務就相當于我們平時早起使用的鬧鐘一樣。
必須保留的啟動服務:
crond:定時任務服務 network:網絡服務 rsyslog:日志服務 sshd:遠程鏈接服務 sysstat:系統監控服務(涉及一系列監控工具) 
 
為什么要使用定時任務呢?
我們舉個例子說明:例如,我們的數據庫或者代碼程序需要每天晚上0點做一次全備份,這樣每天夜里都需要執行的周期性工作,如果要讓人操作的話,就得每天半夜爬起來,然后登錄系統執行任務,執行完接著睡覺。另外,執行任務的過程也可能持續幾個小時,這樣一來,一個晚上我們就都不用睡覺了,這樣顯然是不行的。那么有什么辦法來解決這個周期性的執行任務需求呢?
這就是linux系統的定時任務Crond,這相當于我們平時生活中的鬧鐘功能,每天晚上提前設置定時,早晨按時叫醒你。
ls -l /var/log/messages* #系統的日志ls -l /var/log/secure* #用戶登錄日志
用戶執行的任務工作:某個用戶或系統管理員定期要做的任務工作,例如每隔5分鐘和互聯網上時間服務器進行時間同步(這是安裝系統基礎優化部分的內容),每天晚上0點備份網站站點數據及數據庫數據,一般這些工作需要由每個運維自行設置才行。
服務器時間同步
復制代碼 代碼如下:
echo "*/5 * * * * /usr/sbin/ntpdate time.nist.gov > /dev/null 2>&1" >> /var/spool/cron/root
可通過上面的命令設置每5分鐘執行一次。每次將互聯網時間同步到本地Linux系統。
crontab -l 查看當前用戶的定時任務配置。*號 下面會詳講~~
time.nist.gov是NTP服務器地址 time.windows.com,微軟自家的時間服務器。 更多請參考 ==> 國內常用NTP服務器地址及IP

crontab(命令):正如前面所說的這個命令可以周期性的執行任務工作,例如:每五分鐘做一次服務器時間同步。要執行crontab這個命令,也需要啟動一個服務crond才行。這個crontab命令是生產工作中最常用到的命令,請大家務必掌握。
1、開機自啟動crond服務

2、此時此刻服務的狀態(查看,開啟,關閉)

3、如何查看進程
ps -ef | grep crond

小結提示:
我們所說的crond服務是運行的程序,而crontab是用來管理用戶的定時任務(規則)的命令 crond服務是企業生產工作中常用的重要服務,at和anacron很少用,可以忽略 幾乎每個服務器都會用到crond服務 上千服務器可以開發分布式定時任務項目方案(批量管理ansible/saltstack)定時任務Crond使用說明
[root@chengliang ~]# crontab --helpcrontab: invalid option -- '-'crontab: usage error: unrecognized optionusage: crontab [-u user] file crontab [-u user] [ -e | -l | -r ] (default operation is replace, per 1003.2) -e (edit user's crontab) -l (list user's crontab) -r (delete user's crontab) -i (prompt before deleting user's crontab) -s (selinux context)[root@chengliang ~]#
新聞熱點
疑難解答