cron—计划任务工具的配置和使用。
1、何为计划任务?
计划任务,是任务在约定的时间执行已经计划好的工作,这是表面的意思。在Linux中,我们经常用到 crond 服务器来完成这项工作。cron服务器可以根据配置文件约定的时间来执行特定的作务。比如我们可以在配置文件中约定每天早上3点,对计算机进行重新启动,这就是一个计划任务。
2、安装corn:
—在redhat或fedora中cron一般是默认安装的。我们可以通过查询软件包来查看其是否已经安装。
rpm -qa | grep cron ;
也可以列出某个软件包的详细列表。
rpm -ql <包名>
—如果没有安装,我们需要插入安装光盘,或者是载入安装镜像文件。
rpm -ivh cron*
也可通过yum来安装。
yum install crontab
3、配置cron服务器:
vim /etc/crontab
这是配置前的文件:
SHELL=/bin/bash //使用的shell类型
PATH=/sbin:/bin:/usr/sbin:/usr/bin //shell命令的执行路径
MAILTO=root //邮件发给哪个用户
HOME=/
# For details see man 4 crontabs
# Example of job definition:
# .---------------- minute (0 - 59)
# | .------------- hour (0 - 23)
# | | .---------- day of month (1 - 31)
# | | | .------- month (1 - 12) OR jan,feb,mar,apr ...
# | | | | .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
# | | | | |
# * * * * * command to be executed
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
HOME=/
# run-parts
1 * * * * root run-parts /etc/cron.hourly //表示每个小时的第一分钟,开始执行/etc/hourly目录下的可执行程序或脚本;
#
2 4 * * * root run-parts /etc/cron.daily //表示每天的4点2分,开始执行/etc/cron.daily目录下的可执行程序或脚本;
#
22 4 * * 0 root run-parts /etc/cron.weekly //每年周日4点我22分,开始执行 /etc/cron.weekly目录下的可执行程序或脚本;
#
42 4 1 * * root run-parts /etc/cron.monthly //每月第1天的4点42分,开始执行/etc/cron.monthly目录下的可执行程序或脚本;
#
0,5,10,15,20,25,30,35,40,45,50,55 * * * * root /usr/bin/mrtg /etc/mrtg/mrtg.cfg
第二段应该定义的是:小时,表示从第几个小时来执行,范围是从0-23
第三段应该定义的是:日期,表示从每个月的第几天执行,范围从1-31
第四段应该定义的是:月,表示每年的第几个月来执行,范围从1-12
第五段应该定义的是:周,表示每周的第几天执行,范围从0-6,其中 0表示星期日。
每六段应该定义的是:用户名,也就是执行程序要通过哪个用户来执行,这个一般可以省略;
第七段应该定义的是:执行的命令和参数。
22 4 * * 0 root run-parts /etc/cron.weekly //
每年周日4点我22分,开始执行 /etc/cron.weekly目录下的可执行程序或脚本;
# touch httpd.sh
# chmod 755 httpd.sh
# echo "/etc/init.d/httpd restart" > httpd.sh