Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1184918
  • 博文数量: 243
  • 博客积分: 7442
  • 博客等级: 少将
  • 技术积分: 2483
  • 用 户 组: 普通用户
  • 注册时间: 2006-12-26 09:58
个人简介

I\'m working in IT for above 10 years, although I\'m not an expert yet, but I\'m working on it :)

文章分类

全部博文(243)

文章存档

2019年(2)

2018年(5)

2017年(3)

2016年(3)

2013年(1)

2012年(15)

2011年(8)

2010年(40)

2009年(70)

2008年(63)

2007年(43)

2006年(1)

分类: LINUX

2008-03-23 08:02:34

怎样设置cron任务?

解决方法:

Cron是根据月、天、周、时间的组合设定,周期性的执行特定任务的守护程序。 Cron需要系统处于运行状态。如果系统未运行,则计划任务无法被执行。要使用cron服务, 需安装vixie-cron RPM,也要确保crond处于运行状态。用rpm -q vixie-cron来 测定此软件包是否安装./sbin/service crond status来 测定crond是 否处于运行状态。 cron的主要配置文件在以下的/etc/crontab文件中:包 含如下行

 SHELL=/bin/bash

 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

前 四行是有关设置cron任 务运行的环境变量. SHELL变 量的值指定系统使用的SHELL环 境(该 样例为bash shell)PATH变 量定义了执行命令的路径。Cron的输出以电子邮件的形式发给MSILTO变 量定义的用户名. 如 果MAILTO变 量定义为空字符串(MAILTO=""), 电子邮件不会被发送. 执 行命令或脚本时HOME变 量可用来设置家目录。

文 件/etc/crontab中 每行任务的描述格式如下:

minute hour day month dayofweek command

  • minute - 0 59的 整数
  • hour - 023的 整数
  • day - 131的 整数 (必须是指定月份的有效日期)
  • month - 112的 整数 (或如JanFeb简写的月份)
  • dayofweek - 07的整数,07用来描述周日 (或 用SunMon简 写来表示)
  • command - 需要执行的命令(可 用as ls /proc >> /tmp/proc或 执行自定义脚本的命令)

对 于以上各语句,星 号(*)表 示所有可用的值. 例如,*在 指代month时 表示每月执行(需要符合其他限制条件)该命令。

整 数间的连字号(-)表 示整数列,例 如1-4意思是整数1,2,3,4.

指 定数值由逗号分开。如:3,4,6,8表 示这四个指定整数.

符 号“/”指 定步进设置.“/表 示步进值。如0-59/2定 义每两分钟执行一次。步进值也可用星号表示。如*/3用 来运行每三个月份运行指定任务.

“#”开头的为注释行,不 会被执行。

如 文件/etc/crontab所 示,它 在RUNPART脚 本中指定系统每小时,每天,每周。每月运行/cron.hourly, /etc/cron.daily, /etc/cron.weekly, /etc/cron.monthly中的文件.这 些目录中的文件为shell脚 本。

如 果一个cron任 务需要定期而不是按小时,,,月 来执行,则 需要添加/etc/cron.d目录. 这 个目录下的所有文件和文件/etc/crontab语 法相同. 查 看样例

 # record the memory usage of the system every monday

 # at 3:30AM in the file /tmp/meminfo

 30 3 * * mon cat /proc/meminfo >> /tmp/meminfo

 # run custom script the first day of every month at 4:10AM

 10 4 1 * * /root/scripts/backup.sh

除 了root用 户之外的用户可以执行crontab配 置计划任务。所有用户定义的crontab存 储在目录/var/spool/cron, 任 务会以创建者的身份被执行。要以特定用户创建一个crontab, 先以该用户登录,执 行命令crontab -e, 系统会启动在VISUAL或 者EDITOR中 指定的的编辑软件编辑crontab. 文 件内容与/etc/crontab格 式相同. 当 更改的crontab需 要保存时,文件会保存在成如下文件/var/spool/cron/username.文 件名会根据用户名而不同。

cron 服 务会每分钟检查一次/etc/crontab, /etc/cron.d/, /var/spool/cron文 件下的变更.如 果发现变化,就 会下载到存储器中.因此,即 时crontab文 件改变了,程 序也不需要重新启动。

 

阅读(1544) | 评论(0) | 转发(0) |
0

上一篇:有效沟通学习体会1

下一篇:SaaS模式介绍

给主人留下些什么吧!~~