共计 1529 个字符,预计需要花费 4 分钟才能阅读完成。
crond 应用状况
1. 零碎级别的定时工作
- 临时文件清理
- 零碎信息采集
- 日志文件切割
2. 用户级别的定时工作 - 定时向互联网同步工夫
- 定时备份零碎配置文件
-
定时备份数据库的数据
应用定时工作(服务)筹备
几大根底服务:网络(network),定时工作(crond),系统日志(rsyslog),近程连贯(sshd)
定时工作小指标
- 每 5min 同步一次零碎工夫
- 每天晚上 12 点打包备份 /etc 目录到 /backup
- 打包备份 /etc/usr 上面以.conf 结尾的文件 /backup
- 打包备份 /etc/usr 上面以.conf 结尾的文件 /backup/ip 地址
- 打包备份 /etc/usr 上面以.conf 结尾的文件 /backup/ip 地址并删除 7 天之前的备份
-
打包备份 /etc/usr 上面以.conf 结尾的文件 /backup/ip 地址并删除 7 天之前的备份,保留周一的备份
打算工作工夫治理
1.Crontab 配置文件记录了工夫周期的含意
/etc/crontab 零碎定义的定时工作
/etc/cron.deny 能够禁止用户定义定时工作
符号 | 含意 | 举例 |
---|---|---|
* | 每 | |
/ | 每隔 | |
, | 表白没有太大法则的 | 00 8,9,10 * bb 八九十点去 bb |
– | 范畴 | 00 6-12 * bb 6 到 12 点去 bb |
% | 回车 | 用 /% 解决 |
每隔两个小时执行一次 df -h
00 */2 * * * 不能有空格 */2
分时日月周
每天中午 12 点吃吃饭
00 00 * * * 吃饭
应用 crontab 用户定义 cron 定时工作
-e #编辑定时工作,如果是 root 用户,则是 vim /var/spool/cron/root
-l #查看定时工作
-r #删除定时工作,删除以后用户所有定时工作
-u #指定其余用户
tail -f /vat/log/cron #查看日志
[root@sb ~]# crontab -l
#pll bbbb
* * * * * echo bbb >>/tmp/bb.txt
每分钟 输入 bbb 到 bb.txt
* * * * * /sbin/ntpdate ntp1.aliyun.com &>/dev/null
如果不是 /bin 下的命令,加上命令的绝对路径
每天凌晨三点这一次备份,打包备份 /etc/
tar zcf /tmp/etc.tar.gz /etc/
crontab -e
* 3 * * * tar zcf /tmp/etc.tar.gz /etc/ &>/dev/null
定时工作未解之谜
man 5 crontab
同时书写日期和周几,仅仅一个合乎就执行定时工作
故障案例,注意事项
1. 给定时工作正文
2. 将须要定期执行工作写入 shell 脚本中,防止间接应用命令无奈执行状况 tar date
3. 结尾肯定要有 &>/dev/null 或者追加重定向 >>/tmp/data.log
4. 有些命令无奈执行胜利 echo “123” >> /tmp/test.log &>/dev/null
定时工作没有定向到空或追加到文件,故障案例
邮件服务开启,会收到大量的提醒
you have new mail in /var/spool/mail/root
最初导致邮件文件越来越大
敞开服务 systemctl stop postfix.service
会在 /var/spool/postfix/maildrop 上面生成大量小文件
定时工作命令不在 /bin /usr/bin,故障案例
解决办法
- 应用绝对路径
-
在脚本结尾重新配置下,与命令门路相干的环境变量
source /etc/profilecrond 如何备份
1. 通过查找 /var/log/cron 中执行的记录,去推算工作执行的工夫
2. 定时的备份 /var/spool/cron/{username}如何回绝某个用户应用
1. 应用 root 将须要回绝的用户退出 /etc/cron.deny 2.
打算工作如何调试
- 减少频率
- 调整零碎工夫
- 把脚本执行后果写入指定日志文件,察看日志内容是否失常
-
通过查看 /var/log/cron 日志
正文完