1、/etc/crontab 和 crontab -e 的区别
- /etc/crontab:是系统级别的crontab,系统的设置等。注意:使用vim编辑
vim /etc/crontab
- crontab -e:是用户级的crontab,Linux下实际保存在/var/spool/cron/username中
有些系统设置即使用root账号 crontab -e 也不行,必须放到 /etc/crontab 中
两个的语法是有区别的
- /etc/crontab:有用户字段, /5 * * * root ntpdate 192.168.0.153 >/dev/null 2>&1
- crontab -e:中不能设置用户字段,1 * /1 * php /root/mobile/scripts/refresh_pass_reborn.php > /dev/nul 2>&1
2、/var/spool/clientmqueue目录过大,占用磁盘满了
- 原因:/var/spool/clientmqueue是如果系统中有用户开启了cron,而cron中执行的程序有输出内容,输出内容会以邮件形式发给cron的用户,而sendmail没有启动所以就产生了这些文件
- 解决:将输出重定向,如> /dev/null 2>&1,补充:错误输出也要重定向
3、/etc/crontab的权限
不要随意改动这个文件的属性,这个文件属性应该设置成644或者600,否则会报(system) BAD FILE MODE (/etc/crontab )
4、手动能够执行,但是crontab脚本里面不执行,检查下crontab的环境变量
HELL=/bin/bash PATH=/sbin:/bin:/usr/sbin:/usr/bin MAILTO=root HOME=/