AMH 社区首页
AMH社区 - 开放自由有价值的社区
[综合话题] Linux中计划任务、周期性任务设置 |
|
---|---|
9513645 |
9513645 发表于 2017-11-18 14:09:58
Linux中计划任务、周期性任务设置
计划任务:指在未来的特定时间里,执行一次某一特定任务。当然,如果同一任务需要在不同时间点执行执行两次、三次或多次,可以视为多个一次看待。 周期性任务:指某一任务需要周期性的执行。周期性可以是以分、时、天等为单位,但又不限于这些单位。 常用于执行计划任务的命令——at, batch, 与周期性任务相关的的命令crontabs。 1.at命令和batch命令的区别。 at命令旨在特定的之间执行任务;batch命令设置的任务由系统选择空闲时间去执行,空闲时间默认为cpu利用率小于0.8的时候 2.at命令 格式 at [option] TIME 选项 -l atq命令的别名,显示用户的计划任务 -d atrm命令的别名,清空计划任务 -c 查看特定的计划任务 -f FILE 从文件中读取计划任务命令 TIME,有如下几种格式 HH:MM [YYYY-mm-dd] noon, midnight, teatime tomorrow now+#{minutes,hours,days, weeks} 注:batch命令使用方法和at类似,这里不再赘述 3. crontabs命令 a. 与cron服务相关的程序包有三个: cronie:主程序包,提供crond守护进程及相关辅助工具 cronie-anacron:cronie的补充程序,用于监控cronie任务执行 crontabs: 包含CentOS提供系统维护任务 b. 周期任务分类。根据用户级别,可分为系统周期任务和用户周期任务。 c. 系统周期任务一般直接直接修改/etc/crontab文件,即可配置周期任务, 可查看该文件中的内容 [root@linuxidc-pc tmp]#cat /etc/crontab SHELL=/bin/bash PATH=/sbin:/bin:/usr/sbin:/usr/bin # 环境变量路径 MAILTO=root # 周期任务执行之后,邮件接受者 HOME=/ # For details see man 4 crontabs # Example of job definition: # 计划任务书写格式 # .---------------- minute (0 - 59) # | .------------- hour (0 - 23) # | | .---------- day of month (1 - 31) # | | | .------- month (1 - 12) OR jan,feb,mar,apr ... # | | | | .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat # | | | | | # * * * * * user-name command to be executed 复制代码 d. 周期任务中,通过/etc/crontab文件可知,有5个与时间相关的选项,这些选项有如下规则: a.特定值 # 例如: 5 或 20 b.可使用*表示任意值 c. 离散值用逗号隔开 例如: 5,6,2 或者 0,3 d. 连续值用短折线“-”表示 例如:10-21 e. 可使用正斜线“/”’步长: 例如: */3 e. 配置用户周期任务时,可以直接使用 crontabs -e 编辑相关配置文件,文件格式和/etc/crontab类似,只是不需要填写user-name选项。其他选项: crontab -e 直接编辑文件 -l 查看周期任务 -r 清空周期任务 -i 交互模式 -u USER: 仅root可运行,指定以特定用户身份执行该周期任务 f. 用户周期任务,有自己独有的时间格式, @CMD——可代表特定周期时间 @rebootRun once after reboot. @yearly0 0 1 1 * @annually0 0 1 1 * @monthly0 0 1 * * @weekly0 0 * * 0 @daily0 0 * * * @hourly0 * * * * 4. 相关的配置文件 /etc/crontab /etc/cron.d/ 配置文件 /etc/cron.hourly/ 脚本 /etc/cron.daily/脚本 /etc/cron.weekly/脚本 /etc/cron.monthly/脚本 /etc/anacrontab 负责执行以上/etc/cron.hourly/等文件中的系统任务 /var/spool/cron/ 用户周期任务配置文件 /etc/cron.{allow,deny} 用户执行周期任务的权限配置文件
点赞,加油! (0分)
2017-11-18 14:09:58 1
|