centos之计划任务(cron)
2012-1-30 18:09 Monday  

分类: Linux 评论(57) 浏览(22312)

转自:http://plawy.lqiang.com/index.php?id=262

cron是一个linux下的定时执行工具,可以在无需人工干预的情况下运行作业。由于Cron 是Linux的内置服务,但它不自动起来,可以用以下的方法启动、关闭这个服务: 
/sbin/service crond start //启动服务 
/sbin/service crond stop //关闭服务 
/sbin/service crond restart //重启服务 
/sbin/service crond reload //重新载入配置  

1.crontab命令选项: 
-u指定一个用户, 
-l列出某个用户的任务计划, 
-r删除某个用户的任务, 
-e编辑某个用户的任务 
2.cron文件语法: 
分     小时   日       月       星期     命令 
0-59   0-23   1-31   1-12     0-6     command     (取值范围,0表示周日一般一行对应一个任务)  

3.记住几个特殊符号的含义: 
“*”代表取值范围内的数字, 
“/”代表”每”, 
“-”代表从某个数字到某个数字, 
“,”分开几个离散的数字 

任务调度设置文件的写法 
可用crontab -e命令来编辑,编辑的是/var/spool/cron下对应用户的cron文件,也可以直接修改/etc/crontab文件 
具体格式如下: 
Minute Hour Day Month Dayofweek   command 
分钟     小时   天     月       天每星期       命令 
每个字段代表的含义如下: 
Minute             每个小时的第几分钟执行该任务 
Hour               每天的第几个小时执行该任务 
Day                 每月的第几天执行该任务 
Month             每年的第几个月执行该任务 
DayOfWeek     每周的第几天执行该任务 
Command       指定要执行的程序 
在这些字段里,除了“Command”是每次都必须指定的字段以外,其它字段皆为可选字段,可视需要决定。对于不指定的字段,要用“*”来填补其位置。 
举例如下: 
5       *       *           *     *     ls             指定每小时的第5分钟执行一次ls命令 
30     5       *           *     *     ls             指定每天的 5:30 执行ls命令 
30     7       8         *     *     ls             指定每月8号的7:30分执行ls命令 
30     5       8         6     *     ls             指定每年的6月8日5:30执行ls命令 
30     6       *           *     0     ls             指定每星期日的6:30执行ls命令[注:0表示星期天,1表示星期1,以此类推,也可以用英文来表示,sun表示星期天,mon表示星期一等。] 
30     3     10,20     *     *     ls     每月10号及20号的3:30执行ls命令[注:“,”用来连接多个不连续的时段] 
25     8-11 *           *     *     ls       每天8-11点的第25分钟执行ls命令[注:“-”用来连接连续的时段] 
*/15   *       *           *     *     ls         每15分钟执行一次ls命令 [即每个小时的第0 15 30 45 60分钟执行ls命令 ] 
30   6     */10         *     *     ls       每个月中,每隔10天6:30执行一次ls命令[即每月的1、11、21、31日是的6:30执行一次ls命令。 ] 
每天7:50以root 身份执行/etc/cron.daily目录中的所有可执行文件 
50   7       *             *     *     root     run-parts     /etc/cron.daily   [ 注:run-parts参数表示,执行后面目录中的所有可执行文件。 

添加后保存的路径是/var/spool/cron,可以用vi查看修改,这个不难

 

添加时间同步的

做任务计划。
* */1 * * * /usr/bin/rdate -s time-b.nist.gov
* */1 * * * /usr/sbin/ntpdate time.windows.com
加入这两句。
vps 和实际主机的时钟频率是不一样的,所以必须得计划同步,这个是一小时同步一次。

当出现问题,用这两个就可以了

rdate -s stdtime.gov.hk
hwclock --systohc
+1 13

留下你的看法: