cron定时任务介绍

时间:2021-07-27 07:50:48

什么是cron?

Cron是linux系统中用来定期执行或指定程序任务的一种服务或软件。与它相关的有两个工具:crond 和 crontab。crond 就是 cron 在系统内的宿主程序,crontab 是管理 cron 任务的管理工具。一般情况下,我们安装完centos5/6 linux系操作系统之后,默认便会启动crond任务调度服务,另外在我们在开机启动优化的设置中也要保留crond开机自启动。crond服务会定期(默认每分钟检查一次)检查系统中是否有要执行的任务工作。如果有便会根据其预先设定的定时任务规则自动执行该定时任务,此举就相当于我们平时使用的闹钟一样。

cron定时任务用途:

1、linux系统自身定期执行的任务工作:系统周期性自行执行的任务工作,如轮询系统日志、备份系统数据、清理系统缓存等,这些任务无需我们人为干预。

2、用户执行的任务工作:某个用户或管理员定期要做的任务工作,例如每隔5分钟和互联网上时间服务器进行时间同步,每晚0点备份网站站点数据及数据库数据,一般这些工作需要由每隔用户自行设置才行。

cron定时任务介绍

crontab设置命令参数:

cron定时任务介绍

crontab -e ==vi /var/spool/cron/root

crontab -l ==cat /var/spool/cron/root

cron定时任务介绍

提示:-i,-r参数在工作中很少用,什么需求需用-e进去编辑即可。

如果需要查看其它用户定时任务有哪些可以:

crontab –u 用户 –l  == cat /var/spool/cron/bqh

 cron定时任务介绍

为什么其它用户可以更改定时任务?(setuid特权)

 cron定时任务介绍

定时任务基本格式:

 cron定时任务介绍

提示:

时间记忆口诀:分时日月周

定时任务依赖的服务:crond

要想运行定时任务,必须开启crond服务。

查看crond服务状态:/etc/init.d/crond status

 cron定时任务介绍

定时任务测试:

例如:每隔2个小时将系统文件/etc/services文件打包备份到/tmp下(每次备份按时间生产不同的备份包)

1.直接crontab -e 编辑定时任务:

crontab -e

00 */2 * * * cd/etc/ && tar zcf /tmp/service_$(date +\%F-\%H).tar.gz ./services  >/dev/null 2>&1

cron定时任务介绍

2.写脚本,然后定时调用。(强烈建议此方法)

cron定时任务介绍

执行脚本后发现没问题,后再加入到定时任务里去调用。

crontab -e

00 */2 * * * /bin/sh /server/scripts/date_tar.sh >/dev/null 2>&1

cron定时任务介绍

定时任务小结:

cron定时任务介绍