Linux设置定时任务
什么是crond?
crond是Linux系统用来定期执行命令或指定程序的服务的一种服务或软件。一般情况下当我们安装完成Linux操作系统之后,默认便会启动Crond任务调用服务。Crond服务会定期(默认一分钟检查一次)检查系统中是否有要执行的任务工作。如果有,便根据其预先设定的定时任务规则自动执行该定时任务工作。这个Crond定时服务就像我们的闹钟一样。 crontab是用于设置周期性被执行的指令,该命令从标准输入设备读取指令,并将其存放于“crontab”文件中,以供之后读取与执行。
linux中的定时任务,可用crontab -e命令打开编辑任务栏来编辑,编辑的是/var/spool/cron下对应用户的cron文件,也可以直接修改/etc/crontab文件
vi /etc/crontab编辑打开的是如下图所示:
命令 crontab -e打开的是下图所示:
当我我们编辑好任务的时候保存退出,使用crond命令执行定时任务
查看任务是否启动命令:service crond status
上图所示,crond没有启动成功,需要使用命令: service crond start 来启动crond任务,
上图所示说明任务启动成功。
故障排除:
1.当使用命令:service crond start 后 crond任务任然处于未启动状态:
我们需要先通过命令:pkill cron 来强杀干扰crond任务启动的所有进程,然后再执行命令:service crond start
2.定时任务启动了,但是后续任务并没有执行,
1、确定路径是否正确的,任务尽量写绝对路劲,保证每次任务都能成功执行。
2、执行任务的脚本上是否存在读取别的脚本或者文本,记得都写上绝对路径。