輕鬆搞定--linux服務器crontab 定時任務配置

crontab生成器

http://www.bejson.com/othertools/cron/

* * * * * ? 表示 * * * * *+命令 ? 代表命令

crontab定時任務最小力度是控制到分鐘 所以如果實現定時執行在分鐘以內 故用循環來實現

查看現在的定時任務

crontab -l

配置非系統以外的定時任務

crontab -e

新添加的配置定時任務不會立即生效

需要重啓定時服務

service crond restart

例子腳本

 

有朋友問到關於linux的crontab不知道是否到底執行了沒有,也算寫過一些基本備份的shell腳本,結合自己的實際生產環境簡單講述下如何通過cron執行的日誌來分析crontab是否正確執行

例如服務器下oracle用戶有如下的計劃任務

[oracle@localhost6 ~]$ crontab -l

00 1 * * 0 /home/oracle/backup/hollyipcc.sh

00 1 1 * * /home/oracle/backup/hollyreport_hollycrm.sh

關於系統的計劃任務都會先在/var/log

[root@localhost ~]# cd /var/log/

[root@localhost log]# less cron

Sep 22 04:22:01 localhost crond[32556]: (root) CMD (run-parts /etc/cron.weekly)

Sep 22 04:22:01 localhost anacron[32560]: Updated timestamp for job `cron.weekly' to 2013-09-22

Sep 22 05:01:01 localhost crond[22768]: (root) CMD (run-parts /etc/cron.hourly)

Sep 22 06:01:01 localhost crond[25522]: (root) CMD (run-parts /etc/cron.hourly)

Sep 22 07:01:01 localhost crond[28255]: (root) CMD (run-parts /etc/cron.hourly)

Sep 22 08:01:01 localhost crond[30982]: (root) CMD (run-parts /etc/cron.hourly)

。。。

上面的/var/log/cron只會記錄是否執行了某些計劃的腳本,但是具體執行是否正確以及腳本執行過程中的一些信息則linux會每次都發郵件到該用戶下。

如上述oracle的計劃任務執行信息,linux會發郵件到/var/spool/mail下面

[root@localhost6 log]# cd /var/spool/mail/

[root@localhost6 mail]# less oracle

Date: Sun, 25 Aug 2013 01:00:01 +0800

Message-Id: <[email protected]>

From: [email protected] (Cron Daemon)

To: [email protected]

Subject: Cron /home/oracle/backup/hollyipcc.sh

Content-Type: text/plain; charset=UTF-8

Auto-Submitted: auto-generated

X-Cron-Env: 

X-Cron-Env: 

X-Cron-Env: 

X-Cron-Env: 

X-Cron-Env:

 

backup hollyipcc

Export: Release 10.2.0.4.0 - Production on Sunday, 25 August, 2013 1:00:02

Copyright (c) 2003, 2007, Oracle. All rights reserved.

Connected to: Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - Production

With the Partitioning, OLAP, Data Mining and Real Application Testing options

Starting "SYSTEM"."SYS_EXPORT_SCHEMA_01": system/******** dumpfile=hollyipcc_20130825.dmp logfile=hollyipcc_20130825.log directory

=back schemas=hollyipcc parfile=/home/oracle/backup/parfile.par

Estimate in progress using BLOCKS method...

Processing object type SCHEMA_EXPORT/TABLE/TABLE_DATA

Total estimation using BLOCKS method: 5.932 GB

Processing object type SCHEMA_EXPORT/TABLE/TABLE

Processing object type SCHEMA_EXPORT/TABLE/GRANT/OWNER_GRANT/OBJECT_GRANT

Processing object type SCHEMA_EXPORT/TABLE/INDEX/INDEX

Processing object type SCHEMA_EXPORT/TABLE/CONSTRAINT/CONSTRAINT

Processing object type SCHEMA_EXPORT/TABLE/INDEX/STATISTICS/INDEX_STATISTICS

Processing object type SCHEMA_EXPORT/TABLE/STATISTICS/TABLE_STATISTICS

. . exported "HOLLYIPCC"."BASE_CONTACTSTATE_BAK":"P201203" 1.389 GB 15716014 rows

此時我們就能很好的判斷crontab腳本是否執行,已經執行過程中是否正確以及一些錯誤的信息,希望這個可以幫助有些朋友很好的瞭解crontab的原理和診斷crontab的問題。

 

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