crontab定时作业
crontab用于在指定时间执行某项作业,如执行脚本或命令。
1、crontab -e 创建一个crontab文件,并添加作业(这个crontab的拥有者是创建者)。
这里要注意:必须指定shell和环境变量,不然执行脚本时程序在编译的时候找不到交叉编译器,就会出现编译失败。
如果不指定环境变量crontab的默认环境变量是 PATH=/usr/bin:/bin。
上面的截图部分表示每天的20:48都会执行这个命令,如果dom下面“ * ”表示每天,mon下面“*”表示每月。
如果定时执行几月几日几点几分执行后面的命令,在下面设置对应的时间即可。
以下是系统的定时作业:
m :分钟 h :小时 dom :日 mon :月 * :dai
dow :day of week 每周的第几天(0 和7都可以表示星期天)
command :表示要执行的命令。(在执行命令或脚本时,当执行的命令和脚本文件不在当前目录时,要写绝对路径)
2、启动crontab服务: service cron start (有的用service crond start )或者用 /etc/init.d/cron start
3、关闭服务: service cron stop
4、查看crontab服务: crontab -l
5、删除定时作业: crontab -r
6、查看crontab服务的状态: service cron status
7、重启crontab服务: service cron restart
当你想要查询所有对contab操作日志可在/var/log/cron.log文件中查看:
注意:如果在/var/log/目录下没有找到cron.log文件,则修改以下文件:
(1) sudo vim /etc/rsyslog.d/50-default.conf : 将cron的注释去掉。
(2) 重启 sudo service rsyslog restart
crontab中的输出配置
使用者权限文件:
文件: /etc/cron.deny 没有的话可进行创建
说明: 该文件中所列用户不允许使用crontab命令
文件:/etc/cron.allow 没有的话可进行创建
说明:该文件中所列用户允许使用crontab命令
文件:/var/spool/cron/ 没有的话可进行创建
说明:所有用户crontab文件存放的目录,以用户名命名