任务调度其实就是指系统在某个时间执行的特定的命令或程序,一般分为系统工作(例如有些工作必须周而复始的执行,如病毒扫描)和个别用户工作(个别用户希望执行的命令和程序)。
为了满足这种需求,linux下有一个任务调度文件/etc/crontab.在这个文件中,你可以设置命令或脚本执行的时间,然后系统就会自动运行,不用认为敲入命令。这种功能对于系统自动备份是特别有帮助的。
1、打开crontab
# crontab -e //执行该指令即可打开/etc/crontab
2、设置任务调度
- 希望每天凌晨两点执行date >> /home/daterecord.txt
0 2 * * * date >> /home/daterecord.txt
其中,第一位代表的是分钟,第二位代表的是小时,第三位代表的是日期,第四位代表的是月历,第五位代表的是星期几 最后面加上要执行的命令或者脚本。
- 如果需要每分钟执行的话
* * * * * 命令或脚本
3、调度多个任务
一种不推荐的办法就是在crontab里面直接写,这样如果很多用户都把自己要执行的命令往里写的话就显得很乱。
推荐的办法是每个用户把自己要定时执行的命令写成一个脚本文件,然后再放入crontab中。
4、终止任务
# crontab -r //终止任务调度
5、查看任务调度
# crontab -l //列出当前有哪些任务调度
6、开启crond服务
cron 是linux的内置服务,但它不自动起来,可以用以下的方法启动、关闭这个服务:
service crond start //启动服务
service crond stop //关闭服务
service crond restart //重启服务
service crond reload //重新载入配置
查看crontab服务状态:service crond status
手动启动crontab服务:service crond start
20170312
测试了一下,在centos 7版本下发现执行crontab -e打开的是/tmp/crontab.xxx等
并且执行 * * * * * date > /root/mytxt时使用service crond status观察发现(date) ERROR (getpawn() failed)出错。
状态:待解决。