Chinaunix首页 | 论坛 | 博客
  • 博客访问: 264037
  • 博文数量: 30
  • 博客积分: 608
  • 博客等级: 中士
  • 技术积分: 370
  • 用 户 组: 普通用户
  • 注册时间: 2011-03-14 23:01
个人简介

++++++++++++++++++

文章分类

全部博文(30)

文章存档

2013年(2)

2012年(2)

2011年(26)

分类: LINUX

2011-03-28 21:58:07

突然意识到的关于cron的问题
每次去面试只要遇到有cron的问题他一定考察你知道不知道,cron时间分几个,五个,五个,呵呵
*   *   *   *   *    分别是 分(1-59)  时(0-23)  日(1-31)  月(1-12)  周(1-7)
cron格式
*/15  *   *   *    *   *     root       echo "This a cron task"  每隔15分向标准输出打印那句话
可以这样记cron格式 几分几时哪天几月周几   那个人    要干嘛
crontab的一些参数
e   --edit     编辑用户的cron任务(写在/etc/crontab文件中)
u   --user   给哪个用户添加cron任务
l    --list     看cron任务列表,默认不加u参数只显示当前用户的cron任务,一般用户这能编辑自己的cron任务
r   --delete 删除cron任务,默认不佳U参数,删除当前登录用户的cron任务
cron目录结构
cron.d/       cron.deny     cron.monthly/ cron.weekly/ 
cron.daily/   cron.hourly/  crontab     
看到很明白这些目录的作用,主要强调一下 hourly,daily,weekly,monthly这四个目录,当有这些cron任务是可以直接把脚本放在对应的目录下即可,不需要额外添加cron任务,不错,就这样
实际环境中有时候会遇到cron任务不执行,如果这是在实验还无所谓,但是如果凌晨3点数据库备份没执行,这就惨了,为了保证百分百养成一个好习惯是必要的
在为某个用户指定cron任务时,最好加上-u参数,笔者就遇到过,原本cactiuser每五分钟要执行下poller.php,结果发现没执行,后来才发现问题,我以root的身份为cactiuser制订了任务
[root@localhost ~] crontab -e
*/5 * * * *    cactiuser   /usr/bin/php  /var/www/html/cacti/poller.php
虽然这么设定了但结果是未执行,原因就是你这个cron任务既是当前用户root的cron,又是cactiuser的cron这显然在执行是发生冲突
正确的方法
[root@localhost ~] crontab -e -u cactiuser
*/5 * * * *    cactiuser   /usr/bin/php  /var/www/html/cacti/poller.php
希望以后养成好习惯
阅读(1611) | 评论(0) | 转发(0) |
0

上一篇:技术学习的一点感慨

下一篇:snmp

给主人留下些什么吧!~~