Linux下的任务管理器
维护一台Linux服务器是很辛苦的,需要付出极大的耐心。为了保证一些服务有条不紊地进行,我们可以使用Linux下的任务管理器——crontab。它可以在一定的时间间隔内调用一些命令,帮助我们管理Linux上提供的服务。下面笔者就介绍一下它的使用方法。
命令调用格式
命令格式1:crontab [-u user] [file]
命令格式2:crontab [-u user] [-e|-l|-r]
命令格式1用于安装一个全新的crontab文件,安装来源就是“file”所指定的文件;“-u”选项指定了是哪个具体用户的crontab文件将被修改,如果不指定该选项,crontab将默认是操作者本人的crontab将被修改。
第二种格式中,“-e”编辑当前的crontab文件;“-l”显示用户crontab文件的内容;“-r”可删除当前用户的所有cron作业。
参数设置
在crontab文件中如何输入需要执行的命令和时间?该文件中每行都包括六个域,其中前五个域是指定命令被执行的时间,最后一个域是要被执行的命令。每个域之间使用空格或者制表符分隔。格式如下:
minute hour day-of-month month-of-year day-of-week commands
minute:表示分,取值范围0~59
hour:表示小时,取值范围1~23
day-of-month:表示日,取值范围1~31
month-of-year:表示月份,取值范围1~12
day-of-week:表示星期,取值范围0~6(其中0表示星期日)
commands:将要执行的命令
注意:这些项都不能为空,必须填入。如果用户不需要指定其中的几项,那么可以使用“”号代替。因为“”号是通配符,可以代替任何字符,所以就可以认为是任何时间,也就是该项被忽略了。每两个时间值中间使用逗号分隔。
示例
每隔5分钟对数据流量进行一次采集,每天凌晨1点对Web日志进行一次分析,每周六、日的下午5:00系统进入维护状态,重新启动系统。
1. 建立管理用户的crontab文件。
#vi test.cron
内容如下:
/5 /usr/local/mrtg /var/
www/html/mrtg/mrtg.cfg
00 1 /etc/rc.d/webalizer
00 17 6,0 shutdown -r +10
2. 安装crontab文件。
#crontab test.cron
3. 显示crontab内容。
#crontab -l
如果显示的内容与test.cron内容一致,说明加载test.cron文件成功。
4. 编辑crontab。
#crontab -e
将打开一默认编辑器对其进行编辑。
小结:经过这样设置,满足时间条件的这些任务将在规定的时间执行,crontab给我们提供了很多解决问题的思路,只要灵活运用,许多任务都可以交给crontab完成,比如定期备份数据、采集数据、分析数据、监视系统、清除垃圾文件等。更多内容请参考#man crontab。