liunx文件定期本地备份、异地备份、删除备份脚本( 二 )

运行后查询结果 , 已实现了无人值守备份的功能

liunx文件定期本地备份、异地备份、删除备份脚本

文章插图
查看异地文件已生成:
liunx文件定期本地备份、异地备份、删除备份脚本

文章插图
 3.加入crond定时任务并将输出与错误重定向至文件
crontab -e设置每天02:00执行一次异地备份任务 , (给本地备份充足的时间预留)并将标准输出与标准错误重定向至日志文件
0 1 * * * expect /root/backup/offsite_backup.expect 2>&1 >  /root/backup/offsite_log_$(date +\%Y-\%m-\%d)修改系统时间 , 重启crond服务等待定时任务的执行,并查询日志:
date -s "2022-10-10 00:59:50"service crond restarttail -5 /var/log/cron
liunx文件定期本地备份、异地备份、删除备份脚本

文章插图
检查异地文件备份成功:
liunx文件定期本地备份、异地备份、删除备份脚本

文章插图
五.定期删除备份
1.定期删除命令测试:
find /root/backup/ -mtime +180 | xargs rm -rf {}  #删除180天前的文件与文件夹的信息
liunx文件定期本地备份、异地备份、删除备份脚本

文章插图
 2.封装shell脚本delete_expire_backupfile.sh,清理的目录与过期时间可配置
#!/bin/bash#待清除目录dir=/root/backup/#文件的过期周期day_expireDay=10#删除最终为day_expireDay前的备份文件与文件夹信息find $dir -mtime +$day_expireDay | xargs rm -rf {}echo "$dir下的$day_expireDay天前的文件清理成功"查看文件清理效果如下:
liunx文件定期本地备份、异地备份、删除备份脚本

文章插图
 3.加入crond定时任务并将输出与错误重定向至文件
crontab -e设置每天00:00执行一次异地备份任务 , 并将标准输出与标准错误重定向至日志文件
0 0 * * * sh /root/backup/delete_expire_backupfile.sh 2>&1 >  /root/backup/delete_log__$(date +\%Y-\%m-\%d)修改系统时间,重启crond服务等待定时任务的执行,并查询日志,文件已清理成功
date -s "2022-10-12 23:59:50"service crond restarttail -5 /var/log/cron
liunx文件定期本地备份、异地备份、删除备份脚本

文章插图
六.github脚本地址:
https://github.com/bigwhite2020/bigwhite2022/tree/main/本地备份、异地备份、删除备份脚本

推荐阅读