关于程序员:云计算学习14days-定时任务crontab

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/profile

    crond如何备份

    1.通过查找/var/log/cron中执行的记录,去推算工作执行的工夫
    2.定时的备份/var/spool/cron/{username}

    如何回绝某个用户应用

    1.应用root将须要回绝的用户退出/etc/cron.deny
    2.

    打算工作如何调试

  • 减少频率
  • 调整零碎工夫
  • 把脚本执行后果写入指定日志文件,察看日志内容是否失常
  • 通过查看/var/log/cron日志

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理