RHEL5 下基于crontab的计划任务两种实现方式
2010-03-30 21:24
531 查看
在服务器的实际运行过程中有不少任务都是由系统自身运行的,如定期备份等。Windows 2003下的计划任务都是图形界面来完成操作的,相对而言比较简单。现在要说的是在RHEL5下的任务计划的实现。这种实现是通过Crond来完成的,在此有两种方式:
一、使用crontab -e 来快速实现。
每个用户都有自己的cron配置文件,通过crontab -e 就可以编辑,一般的情况下,编辑好用户的cron配置文件保存退出后,系统会自动就存放于/var/spool/cron/目录中,文件以用户名命名。
crontab -e 注:编辑用户的cron配置文件;
crontab -l 注:查看用户的计划任务;
如当前系统远行着vsftpd,我们想让其在0:34分的时候停止;而系统中当前的squid服处于停止状态,我们想让其于0:34分开始运行。当前登录的用户为root:运行crontab -e 来完成编辑,使用crontab -l 来完成显示,如下所示
[root@localhost init.d]# crontab -l
34 0 * * * /etc/init.d/squid start
34 0 * * * /etc/init.d/vsftpd stop
注:完成编辑后要使用service crond restart 来完成重新启动。
验证情况如下:
[root@localhost init.d]# service squid status
squid (pid 10503) 正在运行...
[root@localhost init.d]# service vsftpd status
vsftpd 已停
[root@localhost init.d]# clock
2010年03月22日 星期一 00时38分58秒 -0.325550 seconds
二、详细配置文件设置方法
首先要编辑/etc/crontab文件,在里面编辑任务的类型,六个参数分别为分、时、日、月、周、用户。如我们想让上面的vsftpd在0:50再开始运行,而令squid在0:50结束,编写如下内容:
50 0 * * * root run-parts /et/cron.hourly
50 0 * * * root run-parts /etc/cron.hourly
其它的不做改变,保存后执行service crond restart.
然后进入/etc/cron.daily,新建一个文本文件task.sh,编写如下内容:
etc/init.d/vsftpd stop
etc/init.d/squid start
保存退出,然后执行service crond restart。任务执行效果与前都相同,如下所示:
[root@localhost cron.daily]# clock
2010年03月22日 星期一 00时50分01秒 -0.484281 seconds
[root@localhost cron.daily]# service vsftpd status
vsftpd 已停
[root@localhost cron.daily]# service squid status
squid (pid 10503) 正在运行...
[root@localhost cron.daily]#
值得一提的是,在编写任务计划的时候,要执行的任务必须要指定其程序的路径,一般说来,这些应用程序的路径分布在/etc/init.d/、/etc/rc.d/以及/usr/sbin/中。本文出自 “艳阳天的小窝” 博客,请务必保留此出处http://yytian.blog.51cto.com/535845/289634
一、使用crontab -e 来快速实现。
每个用户都有自己的cron配置文件,通过crontab -e 就可以编辑,一般的情况下,编辑好用户的cron配置文件保存退出后,系统会自动就存放于/var/spool/cron/目录中,文件以用户名命名。
crontab -e 注:编辑用户的cron配置文件;
crontab -l 注:查看用户的计划任务;
如当前系统远行着vsftpd,我们想让其在0:34分的时候停止;而系统中当前的squid服处于停止状态,我们想让其于0:34分开始运行。当前登录的用户为root:运行crontab -e 来完成编辑,使用crontab -l 来完成显示,如下所示
[root@localhost init.d]# crontab -l
34 0 * * * /etc/init.d/squid start
34 0 * * * /etc/init.d/vsftpd stop
注:完成编辑后要使用service crond restart 来完成重新启动。
验证情况如下:
[root@localhost init.d]# service squid status
squid (pid 10503) 正在运行...
[root@localhost init.d]# service vsftpd status
vsftpd 已停
[root@localhost init.d]# clock
2010年03月22日 星期一 00时38分58秒 -0.325550 seconds
二、详细配置文件设置方法
首先要编辑/etc/crontab文件,在里面编辑任务的类型,六个参数分别为分、时、日、月、周、用户。如我们想让上面的vsftpd在0:50再开始运行,而令squid在0:50结束,编写如下内容:
50 0 * * * root run-parts /et/cron.hourly
50 0 * * * root run-parts /etc/cron.hourly
其它的不做改变,保存后执行service crond restart.
然后进入/etc/cron.daily,新建一个文本文件task.sh,编写如下内容:
etc/init.d/vsftpd stop
etc/init.d/squid start
保存退出,然后执行service crond restart。任务执行效果与前都相同,如下所示:
[root@localhost cron.daily]# clock
2010年03月22日 星期一 00时50分01秒 -0.484281 seconds
[root@localhost cron.daily]# service vsftpd status
vsftpd 已停
[root@localhost cron.daily]# service squid status
squid (pid 10503) 正在运行...
[root@localhost cron.daily]#
值得一提的是,在编写任务计划的时候,要执行的任务必须要指定其程序的路径,一般说来,这些应用程序的路径分布在/etc/init.d/、/etc/rc.d/以及/usr/sbin/中。本文出自 “艳阳天的小窝” 博客,请务必保留此出处http://yytian.blog.51cto.com/535845/289634
相关文章推荐
- rhel6计划任务Crontab及实例
- rhel crontab任务计划调度
- Linux下实现秒级定时任务的两种方案(crontab 每秒运行)
- Linux下实现秒级定时任务的两种方案(crontab 每秒运行)
- shell实现秒级crontab计划任务
- linux下使用crontab实现定时PHP计划任务失败的原因分析
- linux使用crontab实现PHP执行定时计划任务
- linux使用crontab实现PHP执行计划定时任务
- spring容器框架定时任务实现的两种方式
- spring实现定时任务的两种方式
- linux使用crontab实现PHP执行计划定时任务
- Java基于递归和循环两种方式实现未知维度集合的笛卡尔积算法示例
- crontab实现秒级的计划任务
- spring boot 集成quartz 2.0 实现前端动态配置(获取spring上下文)的两种方式,启动数据库中已开启定时任务
- linux使用crontab实现PHP执行计划定时任务
- linux下使用crontab实现定时PHP计划任务失败的原因分析
- 练习2-1 编写一个程序一确定分别由signed及unsigned限定的char,short,int及long类型变量的取值范围。采用打印标准头文件中的相应值以及直接计算两种方式实现。通过直接计算来确定浮点类型的取值范围是一项难度很大的任务。
- Linux下实现秒级定时任务的两种方案(Crontab 每秒运行)
- 基于飞信对系统计划任务crontab报警监控
- Linux系统使用crontab命令实现计划任务