六、 定时启动f-prot方法
在 Linux 中,任务可以被配置在指定的时间段、指定的日期、或系统平均载量低于指定的数量时自动运行。Linux 随带几个自动化任务的工具:cron、at。
1. 使用cron命令定时启动f-prot
cron 是一个可以用来根据时间、日期、月份、星期的组合来调度对重复任务的执行的守护进程。cron 假定系统持续运行。如果当某任务被调度时系统不在运行,该任务就不会被执行。要使用 cron 服务,你必须安装了 vixie-cron RPM 软件包,而且必须在运行 crond 服务。要判定该软件包是否已安装,使用 rpm -q vixie-cron 命令。要判定该服务是否在运行,使用 /sbin/service crond status 命令。如果没有打开可以运行命令:ntsysv,打开窗口在crond服务选项加上*(用空格键),然后重新启动系统,这样系统会启动cron服务。cron 的主配置文件是 /etc/crontab,/etc/crontab 文件中的每一行都代表一项任务,它的格式是:
minute hour day month dayofweek command
• minute — 分钟,从 0 到 59 之间的任何整数。
• hour — 小时,从 0 到 23 之间的任何整数。
• day — 日期从 1 到 31 之间的任何整数(必须是该月份的有效日期)。
• month — 月份,从 1 到 12 之间的任何整数(或使用月份英文简写如 jan)。
• dayofweek — 星期从 0 到 7 之间的任何整数(或使用星期的英文简写如 sun等)。
• command — 要执行的命令。
应用实例:
首先建立定时器设置文件,文件名称mytype(名称自己设定):
#crontab -e
文件内容:
19 00 * * * /usr/local/f-prot/f-prot /mnt/winc -report=/root/.xfprot/xfprot.log -dumb -archive -noserver
用vi或其他编辑器存盘退出。使用 crontab命令添加到任务列表中:
#crontab -u mytype
这样用户在每天的19点00分会自动对目录/mnt/wic进行病毒扫描并且产生一个报表文件xfprot.log。
2. 使用at命令定时启动f-prot
cron 被用来调度重复的任务,at 命令被用来在指定时间内调度一次性的任务。要使用 at 命令,你必须安装了 at RPM 软件包,并且 atd 服务必须在运行。要判定该软件包是否被安装了,使用 rpm -q at 命令。要判定该服务是否在运行,使用 /sbin/service atd status 命令。
配置 at 作业方法:
要在某一指定时间内调度一项一次性作业,键入 at time 命令。这里的 time 是执行命令的时间。time 参数可以是下面格式中任何一种:
HH:MM 格式 — 譬如,04:00 代表 4:00AM。如果时间已过它就会在第二天的这一时间执行。
midnight — 代表 12:00AM。
noon — 代表 12:00PM。
teatime — 代表 4:00PM。
英文月名 日期 年份 格式— 譬如,January 15 2002 代表 2002 年 1 月 15 日。年份可有可无。
MMDDYY、MM/DD/YY、或 MM.DD.YY 格式 — 譬如,011502 代表 2002 年 1 月 15 日。
now + 时间 — 时间以 minutes、hours、days、或 weeks 为单位。譬如,now + 5 days 代表命令应该在 5 天之后的此时此刻执行。
键入了 at 命令和它的时间参数后,at> 提示就会出现。键入要执行的命令,按 [Enter] 键,然后键入 Ctrl-D。你可以指定多条命令,方法是键入每一条命令后按 [Enter] 键。键入所有命令后,按 [Enter] 键转入一个空行,然后再键入 Ctrl-D。或者,你也可以在提示后输入 shell 脚本,在脚本的每一行后按 [Enter] 键,然后在空行处键入 Ctrl-D 来退出。
应用实例:
at 19:00
at> /usr/local/f-prot/f-prot /mnt/winc -report=/root/.xfprot/xfprot.log -dumb -archive -noserver
at> <EOT>
job 1 at 2007-03-09 19:00
这样在今天的19点00分会自动对目录/mnt/wic进行病毒扫描并且产生一个报表文件xfprot.log。