RHEL 5基础篇—管理系统计划任务

来源:互联网 发布:参加婚礼着装知乎 编辑:程序博客网 时间:2024/06/07 20:25

系统计划任务管理

      在linux系统中,除了用户即时执行的命令操作以外,还可以配置在制定的时间,指定的日期执行预先计划好的系统管理任务。RHEL5系统默认安装了at、vixie-cron软件包,通过atd和crond这两个系统服务实现一次性和周期性计划任务功能,并分别通过at和crontab命令进行管理计划任务。

at一次性计划任务
顾名思义使用at命令设置计划任务时,任务只能在制定的时间点执行一次,并且确保atd服务是开启的。设置一次性计划任务时需要制定时间和日期做为参数,并且设置的时间必须是在当前系统之前。(注意:若只设置时间不设置日期则表示当天的时间)确认后将进入带“at>”提示符的任务编辑界面,每行设置一条命令,可以一次设置多行命令,最后按“Ctrl+D”提交任务即可。格式如下:
at [时间] [日期]
如下:使用“at”命令设置一次性计划任务,统计指定时间点系统中root用户的进程数量。

 1

对于已经设置但还未执行的计划任务,可以通过使用“atq”命令进行查询。(注意:已执行的将不会显示)
如下:使用“atq”命令查看还没有被执行的任务有哪些。

2

若要删除制定的计划任务,可以使用“atrm”命令,删除后的计划任务不会被执行,也不会在“atq”命令中显示。
如下:使用“atrm”命令删除制定编号的计划任务。(注意:使用atrm命令时需要使用任务的编号做为参数)

3

crontab周期性计划任务
使用“crontab”命令设置的计划任务可以按预定的周期重复执行,可以大大减轻设置重复性系统管理任务操作。启用周期性计划时需要开启crond服务。
1、crontab的配置文件和目录
1)/etc/crontab——系统任务配置文件
“/etc/crontab”文件中设置的是维护linux系统所需的任务,由linux系统及相关程序在安装时自动设置、不建议用户手动修改次文件。例如:该文件中包括了设置Shell环境,可执行路劲等变量的操作。以及每小时、每天、每周、每月需要执行的任务目录。

4

2)/var/spool/cron——用户cron任务的配置文件存放的目录
用户自行设置的cron计划任务将被保存到目录“/var/spool/cron”中,文件名与用户名相同。
如下:使用“ls”命令查看“/var/spool/cron”中用户的cron配置文件。

5

crond守护进程会自动检查etc/crontab文件、/etc/cron.d目录以及/var/spool/cron目录中的改变。如果发现有配置更改,它们就会被载入内存,所以当某个crontab文件改变后并不需要重新启动crond守护进程就可以使设置生效。

2、使用crontab命令管理用户的计划任务。
设置用户的周期性计划任务列表主要通过crontab命令进行,结合不同的选项可以完成不同的计划任务管理操作。
-e :编辑计划任务。
-u :指定所管理的计划任务属于哪个用户、默认时针对当前用户,一般只有root用户有权限使用此选项。(用于编辑、删除其他用户的计划任务)
-l :显示计划任务列表。
-r :删除计划任务列表 。

2

如下:使用“crontab -e”命令后,(单独使用“-e”选项表示当前用户)将打开计划任务编辑界面(与vi操作一样)。通或该界面用户可以自行添加具体的任务配置,每行代表一个记录。配置格式如下:

3

在配置计划任务时间时不但可以是使用“*”以外,还可以使用减号“-”、逗号“、”、斜杠“/”与数字构成表达式来表示复杂的时间关系。如下:

3

如下:使用“crontab -l”命令查看当前用户自己的计划任务列表。(root用户使用 -u可以查看其他用户的任务列表)

1 

如下:使用“crontab -r”命令删除当前用户自己的计划任务列表。(root用户使用 -u可以删除其他用户的任务列表)

3 

    在设置用户的crontab计划任务的过程中,由于每一条记录只能运行一行命令,难以完成更复杂的系统管理任务操作,因此在实际工作中,当需要按照固定周期运行一些操作复杂的任务时,通常会将相关命令操作编写成脚本文件,然后在计划任务配置中加载脚本并执行。

本文出自 “邓奇的Blog” 博客,谢绝转载!

0 0
原创粉丝点击