cron和anacrontab
https://www.douban.com/note/591925191/
crontab不多说,
/etc/crontab #系统的任务计划
/etc/cron.d/ #配置文件中典型的.d文件夹
/var/spool/cron/YOUR_USER_NAME #这个文件才是跟crontab -e/-l 关联的
[root@localhost log]# cat /etc/cron.d/0hourly #.d文件夹里包含了这个配置,表示每小时的01分执行
# Run the hourly jobs # /etc/cron.hourly目录下的所有脚本
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
01 * * * * root run-parts /etc/cron.hourly # run-parts是个脚本,执行某个目录下所有的脚本。root是执行该脚本的用户名
[root@localhost log]# cat /etc/cron.hourly/0anacron #cron.hourly目录下的脚本,根据条件执行
#!/bin/sh # anacron命令
# Check whether 0anacron was run today already
if test -r /var/spool/anacron/cron.daily; then
day=`cat /var/spool/anacron/cron.daily`
fi
if [ `date +%Y%m%d` = "$day" ]; then
exit 0;
fi
# Do not run jobs when on battery power
if test -x /usr/bin/on_ac_power; then
/usr/bin/on_ac_power >/dev/null 2>&1
if test $? -eq 1; then
exit 0
fi
fi
/usr/sbin/anacron -s
[root@localhost log]# cat /etc/anacrontab #anacrontab的配置文件
# /etc/anacrontab: configuration file for anacron
# See anacron(8) and anacrontab(5) for details.
SHELL=/bin/sh
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
# the maximal random delay added to the base delay of the jobs
RANDOM_DELAY=45 #最大延迟时间
# the jobs will be started during the following hours only
START_HOURS_RANGE=3-22 #只在03到22点之间执行
#period in days delay in minutes job-identifier command
1 5 cron.daily nice run-parts /etc/cron.daily
7 25 cron.weekly nice run-parts /etc/cron.weekly
@monthly 45 cron.monthly nice run-parts /etc/cron.monthly
1 5 cron.daily nice run-parts /etc/cron.daily #每天都执行/etc/cront.daily/目录下的脚本文件,真实的延迟RANDOM_DELAY+delay。这里的延迟是5分钟,加上上面的RANDOM_DELAY,所以实际的延迟时间是5-50之间,开始时间为03-22点,如果机器没关,那么一般就是在03:05-03:50之间执行。nice命令将该进程设置为nice=10,默认为0,即低优先级进程。
如果RANDOM_DELAY=0,那么表示准确延迟5min,即03:05执行cron.daily
综上,整个逻辑流为:
crontd进程每小时的01分执行/etc/cront.hourly/0anacron --->执行anacron -->根据/etc/anacrontab的配置执行/etc/cron.daily,/etc/cron.weekly,/etc/cron.monthly
本文转自 pk2008 51CTO博客,原文链接:
http://blog.51cto.com/837244/1981982
cron和anacrontab相关推荐
- 手把手教你做挖矿应急响应
前言 攻防之道,攻是矛,防是盾.应急响应就是防守中最重要的一环,思路清晰的应急响应可以使你事半功倍,抓住攻击者的小尾巴! 本文主要面向无应急基础人员入门引导,大佬轻喷!!! 文中会引用几次我经历过的真 ...
- 网络安全之路:我的系统性渗透测试学习框架
没有兴趣,何来成就,难道就只是为了咕噜猫?hahaha(听不懂吧,没关系,只是因为加密了,你能从我的笔记中找到答案么嘿嘿嘿嘿!!!) 注意:以下内容仅记录本人当时学习时任然不知的相关知识.笔记草率,可 ...
- 记一次linux挖矿木马的处置
场景 受公司委托对客户服务器挖矿木马进行应急处置,客户说服务器很卡让我们排查处置一下,okok,直接远程开搞开搞,所有可疑文件先下载留存,再删除. 排查分析 使用top命令查看CPU使用率时发现,进程 ...
- Shell脚本基本语法大全
目录 1.如何理解Shell脚本 2.如何一行执行多条命令 3.脚本的执行 4.管道与重定向 5.变量的使用 6.数组的使用 7.转义和引用 8.运算符 9.各种特殊符号 10.测试与判断 11.分支 ...
- cron crontab anacron anacrontab Linux下的计划任务
命令/进程 程序位置 读取文件 日志 crond crontab anacron /etc/rc.d/init.d(/etc/init.d) /lib/systemd/system/crond.ser ...
- linux cron crontab anacron 计划任务 定时任务
在linux下,如果想要在未来的某个时刻执行某个任务,并且在未来的每一个这样的时刻里都要执行这个任务.举个简单的例子,比如说想要在将来,每天的十二点都重启路由器,大多数发行版都自带一个守护进程(dae ...
- cron计划任务的介绍
cron计划任务 一.在未来的某个时间点执行一次某任务: 1.at 首先需要启动服务,命令为server atd start at用法: at 时间 at>COMMAND 要求在一个时间点执 ...
- cron linux_如何在Linux中使用cron
cron linux 本文最初发布于2017年11月,现已更新以包含其他信息. 成为系统管理员的挑战(其中有很多优点)之一是当您想睡觉时正在运行任务. 例如,某些任务(包括定期重复执行的任务)需要在没 ...
- linux 任务计划 cron
#修改当前用户的计划 crontab -e //01 * * * * 不能留有空格 01 * * * * /home/zlb/mysql_dump/backup -run >> /ho ...
最新文章
- 人大附中「内卷」到了美国?华裔家长抗议中国学生持F1签证抢占美国IMO名额...
- jquery腾讯微博
- mac 开启多个eclipse QQ
- Convolutional neural networks for artistic style transfer
- 刚在乌镇夺魁的飞桨,又将在“WAVE SUMMIT+”深度学习开发者峰会带来哪些惊喜?...
- 【面经】字节AI Lab-NLP算法热乎面经
- SketchUp草图大师制作分析图的详细流程介绍
- 【HAVENT原创】superagentCallback*** is not defined
- mysql查询学生表年龄语句_表是student表-从学生表tstudent-学生表student
- 如何获取国际标准时间
- PD协议芯片TYPE C接口支持快充诱骗
- acc之ADTS解说一
- Cobaltstrike系列教程(十)安装扩展
- Elasticsearch 分布式引擎简介
- DS18B20的使用介绍
- C 常數0L,0LL,0UL,0.0f,0.0L
- 超级玛丽3通关指南+隐藏点整理
- Shor’s Algorithm 学习笔记
- Re: 征男友征男友(有女友者勿回) (转载)
- 杜克大学计算机科学博士,杜克大学计算机科学哲学博士研究生入学条件