linux系统中cron服务详解linux操作系统 电脑资料_第1页
linux系统中cron服务详解linux操作系统 电脑资料_第2页
linux系统中cron服务详解linux操作系统 电脑资料_第3页
linux系统中cron服务详解linux操作系统 电脑资料_第4页
linux系统中cron服务详解linux操作系统 电脑资料_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

linux系统中cron服务详解linux操作系统 电脑资料 inux cron 是一个可以用来根据时间、日期、月份、星期的组合来调度对重复任务的执行的守护进程,linux cron 假定系统是持续运行的, 要使用 linux cron 服务,你必须安装了 vixie-cron RPM 软件包,而且必须在运行 crond 服务。要判定该软件包是否已安装,使用 rpm -q vixie-cron 命令。要判定该服务是否在运行,使用 /sbin/service crond status 命令。 crond 是linux用来定期执行程序的命令。当安装完成操作系统之后,默认便会启动此任务调度命令。crond命令每分锺会定期检查是否有要执行的工作,如果有要执行的工作便会自动执行该工作。而linux任务调度的工作主要分为以下两类: 1、系统执行的工作:系统周期性所要执行的工作,如备份系统数据、清理缓存 2、个人执行的工作:某个用户定期要做的工作,例如每隔10分钟检查邮件服务器是否有新信,这些工作可由每个用户自行设置 linux cron 的主配置文件是 /etc/crontab,它包括下面几行: PATH=/sbin:/bin:/usr/sbin:/usr/bin MAILTO=root HOME=/ # run-parts 01 * * * * root run-parts /etc/cron.hourly 02 4 * * * root run-parts /etc/cron.daily 22 4 * * 0 root run-parts /etc/cron.weekly 42 4 1 * * root run-parts /etc/cron.monthly 前四行是用来配置 linux cron 任务运行环境的变量。 SHELL 变量的值告诉系统要使用哪个 shell 环境(在这个例子里是 bash shell); PATH 变量定义用来执行命令的路径。 MAILTO cron 任务的输出被邮寄给 MAILTO 变量定义的用户名。如果MAILTO 变量被定义为空白字符串(MAILTO=),电子邮件就不会被寄出。 HOME 变量可以用来设置在执行命令或脚本时使用的主目录。 /etc/cron.allow 和 /etc/cron.deny 文件被用来限制对 cron 的使用。这两个使用控制文件的格式都是每行一个用户。两个文件都不允许空格。如果使用控制文件被修改了,cron 守护进程(crond)不必被重启。使用控制文件在每次用户添加或删除一项 cron 任务时都会被读取。无论使用控制文件中的规定如何,根用户(root)都总是可以使用 cron。 如果 cron.allow 文件存在,只有其中列出的用户才被允许使用 cron,并且 cron.deny 文件会被忽略。 如果 cron.allow 文件不存在,所有在 cron.deny 中列出的用户都被禁止使用 cron。 另外在/var/spool下面存在着两个目录cron,anacron,其中cron目录下面有每个用户的自己通过crontab -e增加的crontab的内容。anacron目录下面是记录的是cron.daily,cron.monthly,cron.weekly的上一次执行的时间。linux的cron服务是每隔一分钟去读取一次/var/spool/cron,/etc/crontab,/etc/cron.d下面所有的内容。 linux cron 基本格式 : * * * * * mand 分 时 日 月 周 命令 第1列表示分钟159 每分钟用*或者 */1表示 第2列表示小时123(0表示0点) 第3列表示日期131 第4列表示月份112 第5列标识号星期06(0表示星期天) 第6列要运行的命令 crontab文件的一些例子: 下面的例子表示每晚的21:30重启apache。 30 21 * * * /usr/local/etc/rc.d/ligd restart 下面的例子表示每月1、10、22日的4 : 45重启apache。 45 4 1,10,22 * * /usr/local/etc/rc.d/ligd restart 下面的例子表示每周六、周日的1 : 10重启apache。 10 1 * * 6,0 /usr/local/etc/rc.d/ligd restart 下面的例子表示在每天18 : 00至23 : 00之间每隔30分钟重启apache, 0,30 18-23 * * * /usr/local/etc/rc.d/ligd restart 下面的例子表示每星期六的11 : 00 pm重启apache。 0 23 * * 6 /usr/local/etc/rc.d/ligd restart 每一小时重启apache * */1 * * * /usr/local/etc/rc.d/ligd restart 晚上11点到早上7点之间,每隔一小时重启apache * 23-7/1 * * * /usr/local/etc/rc.d/ligd restart 每月的4号与每周一到周三的11点重启apache 0 11 4 * mon-wed /usr/local/etc/rc.d/ligd restart 一月一号的4点重启apache 0 4 1 jan * /usr/local/etc/rc.d/ligd restart 在 12 月内, 每天的早上 6 点到 12 点中,每隔3个小时执行一次 /usr/bin/backup : 0 6-12/3 * 12 * /usr/bin/backup 周一到周五每天下午 5:00 寄一封信给 : 0 17 * * 1-5 mail -s hi /dev/null 2&1 即可 #每天早上6点10分 10 6 * * * date #每两个小时 0 */2 * * * date .111. #晚上11点到早上8点之间每两个小时,早上8点 0 23-7/2,8 * * * date #每个月的4号和每个礼拜的礼拜一到礼拜三的早上11点 0 11 4 * mon-wed date #1月份日早上4点 0 4 1 jan * date linux cron 命令总结: crontab file -u user-用指定的文件替代目前的crontab。 crontab-u user-用标准输入替代目前的crontab. crontab-1user-列出用户目前的crontab. crontab-euser-用户目前的crontab. crontab-duser-删除用户目前的crontab. crontab-c dir- 指定crontab的目录。 crontab文件的格式:M H D m d cmd. M: 分钟(0-59)。 H:小时(0-23)。 D:天(1-31)。 m: 月(1-12)。 d: 一星期内的天(06,0为星期天)。 cmd要运行的程序,程序被送入sh执行,这个shell只有USER,HOME,SHELL这三个环境变量 当 f1 为 * 时表示每分钟都要执行 program,f2 为 * 时表示每小时都要执行程序,其馀类推 当 f1 为 a-b 时表示从第 a 分钟到第 b 分钟这段时间内要执行,f2 为 a-b 时表示从第 a 到第 b 小时都要执行,其馀类推 当 f1 为 */n 时表示每 n 分钟个时间间隔执行一次,f2

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论