Linux定時任務

     Linux中用來定期執行命令或程序任務的一種服務或軟件,目的是爲了滿足週期性執行任務的需求。

crond服務是運行的程序,crontab命令用來設置定時規則的命令

crond服務是企業生產工作中常用的重要服務;上千臺服務器可以使用分佈式定時任務

所有用戶crontab配置文件默認都存放在/var/spool/cron此目錄,文件名以用戶名命名。


=======crontab命令操作語法=======

crontab [option] [-u user]

參數:     -r刪除crontab文件內容

-e編輯crontab文件內容

-l查看crontab文件內容


=======crontab語法格式中時間段的含義表=======

wKiom1dLBJGzsRCMAADHptDc1nA179.png-wh_50


=======crontab語法格式中特殊符號的含義表=======


wKioL1dLBcDBbJ9eAAH5n6KASI0632.png-wh_50


=======注意事項=======

1、爲定時任務規則加必要的註釋

2、命令或程序最好寫到腳本里執行

3、執行的腳本要使用絕對路徑

4、執行shell腳本任務時前加/bin/sh

5、定時任務結尾加 >/dev/null 2>&1



=======>/dev/null 2>&1的作用=======

如果定時任務規範結尾不加 >/dev/null 2>&1, 會有很多垃圾小文件存放於郵件臨時隊列目錄,很容易導致硬盤inode空間被佔滿,從而系統服務不正常。CentOS 5中/var/spool/clientmqueue爲郵件臨時隊列目錄;centos 6系統默認裝的是postfix服務,目錄爲/var/spool/postfix/maildrop。



=======定時任務實例=======

1、每隔2個小時將/etc/services文件打包備份到/server/backup下。

[root@oldboy scripts]# cat >>services.sh<<EOF

> cd /etc/

> /bin/tar -zcf /server/backup/services-$(date +%F-%H).tar.gz services

> EOF

[root@oldboy scripts]#crontab –e

#services backup each 2 Hour

00 */2 * * * /bin/sh /scripts/services.sh >/del/null 2>&1


======每5分鐘執行一次服務器時間同步=======

[root@oldboy scripts]# vi ntp.sh 

#!/bin/sh

/usr/sbin/ntpdate ntp1.aliyun.com

[root@oldboy scripts]#crontab –e

#time sync by xhua 20160529

*/5 * * * * /bin/sh /scripts/ntp.sh >/dev/null 2>&1


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章