1.系统级别的定时任务shell
定时备份数据库的数据数据库
几大基础服务:网络(network),定时任务(crond),系统日志(rsyslog),远程链接(sshd)vim
打包备份/etc/usr下面以.conf结尾的文件 /backup/ip地址并删除7天以前的备份,保留周一的备份网络
1.Crontab配置文件记录了时间周期的含义
/etc/crontab 系统定义的定时任务
/etc/cron.deny 能够禁止用户定义定时任务ssh
符号 | 含义 | 举例 |
---|---|---|
* | 每 | |
/ | 每隔 | |
, | 表达没有太大规律的 | 00 8,9,10 * bb 八九十点去bb |
- | 范围 | 00 6-12 * bb 6到12点去bb |
% | 回车 | 用/%解决 |
每隔两个小时执行一次df -h 00 */2 * * * 不能有空格*/2
分时日月周post
天天半夜12点吃吃饭 00 00 * * * 吃饭
-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下的命令,加上命令的绝对路径
tar zcf /tmp/etc.tar.gz /etc/ crontab -e * 3 * * * tar zcf /tmp/etc.tar.gz /etc/ &>/dev/null
man 5 crontab
同时书写日期和周几,仅仅一个符合就执行定时任务spa
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下面生成大量小文件code
解决方法
在脚本开头从新配置下,与命令路径相关的环境变量
source /etc/profile
1.经过查找/var/log/cron中执行的记录,去推算任务执行的时间
2.定时的备份/var/spool/cron/{username}
1.使用root将须要拒绝的用户加入/etc/cron.deny 2.
经过查看/var/log/cron日志