linux系统之计划任务
1、crontab命令–定时执行任务
crontab是英语“crontable”的缩写。该命令被拿来递交和管理用户的须要周期性执行的任务linux培训学校,与windows下的计划任务类似,当安装完成操作系统后linux学习论坛,默认会安装此服务工具,而且会手动启动crond进程,crond进程每分钟会定期检测是否有要执行的任务,假如有要执行的任务,则手动执行该任务。
Linux下的任务调度分为两类,系统任务调度和用户任务调度。
系统任务调度:系统周期性所要执行的工作,例如写缓存数据到硬碟、日志清除等。/etc/crontab文件是系统任务调度的配置文件。用户任务调度:用户定期要执行的工作,例如用户数据备份、定时短信提醒等。用户可以使用crontab工具来订制自己的计划任务。所有用户定义的crontab文件都被保存在/var/spool/cron目录中。其文件名与用户名一致。
句型格式:crontab[参数]
-e编辑该用户的计时器设置
-l列举该用户的计时器设置
-r删掉该用户的计时器设置
-u指定要设定计时器的用户名称
–help显示帮助信息
(1)列举定时执行任务
(2)编辑计划任务(重点)
计划任务的规则句型格式,以行为单位,一行则为一个计划。
分时日月周须要执行的命名
分时日月周须要执行的命名
分时日月周须要执行的命名
取值范围:
分:0~59
时:0~23
日:1~31
月:1~12
周:0~6,0表示礼拜天
四个符号:
*:表示取值范围中的每一个数字
-:做连续区间表达式的,要想表示1~7,则可以写成:1-7
/:表示每多少个linux系统四种计划任务,比如:想每10分钟一次,则可以在分的位置写:*/10
,:表示多个取值,例如想在1点,2点6点执行,则可以在时的位置写:1,2,6
问题1:每月1、10、22日的4:45重启network服务
4541,10,22**servicenetworkrestart
问题2:每周六、周日的1:10重启network服务
101**6,0servicenetworkrestart
问题3:每晚18:00至23:00之间每隔30分钟重启network服务
*/3018-23***servicenetworkrestart
问题4:每隔俩天的早上8点到11点的第3和第15分钟执行一次重启
3,158-11*/2**servicenetworkrestart
案例:每1分钟往root家目录a.txt输入时间信息
2、crontab权限问题:
Crontab权限问题:本身是任何用户都可以创建自己的计划任务
root可以严禁其他用户创建创建计划任务/etc/cron.deny上面写用户linux系统四种计划任务,一行一个
还可以配置一个(白名单)
/etc/cron.allow(本身不存在,自己创建)
注意:白名单优先于黑名单,假若一个用户同时存在俩个名单中,则默认容许创建计划任务。