ECS Linux设置定时任务crontab的具体操作方法
发布日期:2015-12-30 14:12:11
在Linux系统下,crontab是最常用的定时任务,常用的crontab命令有两个: - crontab -e 执行文字编辑器来设定时程表,内定的文字编辑器是VI - crontab -l 列出目前的定时任务列表 基本格式 : * * * * * command 分 时 日 月 周 命令 第1列表示分钟1~59 每分钟用*或者 */1表示 第2列表示小时1~23(0表示0点) 第3列表示日期1~31 第4列表示月份1~12 第5列标识号星期0~6(0表示星期天) 第6列要运行的命令 crontab定时任务的一些案例 30 3 * * * /alidata/server/httpd/bin/apachectl restart 上面的例子表示每晚的3:30重启apache 50 4 1,10,20 * * /alidata/server/httpd/bin/apachectl restart 上面的例子表示每周六、周日的13 : 10重启apache。 * */1 * * * /alidata/server/httpd/bin/apachectl restart 每一小时重启apache * 23-7/1 * * * /alidata/server/httpd/bin/apachectl restart 晚上11点到早上7点之间,每隔一小时重启apache 请注意: 1、在部署到线上服务器前,建议先在测试服务器上测试好。 2、一般情况下会在脚本后面加重定向到/dev/null 2>&1 3、设置定时任务一般日期和星期不同时设置 4、以centos为例,默认定时任务执行日志在/var/log/cron 例如定时任务 */3 * * * * root /usr/local/ping.sh > /dev/null 2>&1 即错误输出与标准输出全部重定向到空,定时任务执行成功或失败时,程序会向上层发送mail,因为平时工作中不打开sendmail功能,所以邮件会存储在临时目录/var/spool/clientmqueue,随着执行的任务次数多,文件也会越来越多,直到某一天,添加文件时,提示“No space left on device”,主要问题原因不在于垃圾文件会占很大空间,而在于每个文件会占用inode节点。 5、调试任务一般注意先手动执行脚本看是不是可执行,另外脚本放在定时任务不执行,建议放在普通用户权限下测试是不是可以手动执行,同时检查环境变量的配置。
|