zoukankan      html  css  js  c++  java
  • 异地备份同步校验脚本

    实现功能:

    将客户端服务器A的每天的数据(/www,/log)本地打包,并且配置定时脚本每天同步到服务端服务器上,在服务器上对备份的数据进行校验,将结果发送到管理员邮箱。

    客户端:

    1. #!/bin/bash
    2. remote_host=172.16.1.111    
    3. remote_path=/backup          
    4. local_backup_path=/backup
    5. local_file_path=/data
    6. [ -d $local_backup_path ] || mkdir -p $local_backup_path 
    7. #打包 
    8. cd ${local_file_path} &&
    9. tar zcf $local_backup_path/www-$(date +%F).tar.gz /data/www &&
    10. tar zcf $local_backup_path/log-$(date +%F).tar.gz /data/log &&
    11. find /backup -type f -name "*.tar.gz" | xargs md5sum > $local_backup_path/flag_$(date +%F) 
    12. #同步
    13. rsync -avz  $local_backup_path/*  $remote_host:$remote_path --passwod(省略)
    14. #删除本地七天前
    15. find $local_backup_path -type f -name "*.tar.gz" -mtime +7 | xargs rm -f
    加入定时任务
    1. crontab -e
    2. 0 4 * * *  /bin/bash /root/shell/www_backup.sh &> /dev/null

    服务端:

    1. #!/bin/bash
    2. local_backup_path=/backup
    3. md5_file=flag_$(date +%F)
    4. cd $local_backup_path 
    5. if [ $? -eq 0 ];then
    6.     if [ -e $md5_file ];then
    7.         md5sum -c ${md5_file} >> mail.txt
    8.         if [ $? -eq 0 ];then
    9.             mail -s "Success ! The backup task is ok !" 731431337@qq.com < mail.txt
    10.         else 
    11.             mail -s "Failed ! The backup task is failed !" 731431337@qq.com < mail.txt        
    12.         fi  
    13.     else 
    14.         ls > mail.txt
    15.         mail -s "Failed ! The md5_file is not exists!" 731431337@qq.com < mail.txt 
    16. fi
    加入定时任务
    1. crontab -e
    2. 0 5 * * *  /bin/bash /root/shell/flag_check.sh &> /dev/null





  • 相关阅读:
    laravel5.1--数据库操作
    coreseek (sphinx)+ Mysql + Thinkphp搭建中文搜索引擎详解
    apache配置虚拟主机
    PHP下利用PHPMailer
    linux中编译安装Apache、PHP、MySQL(上)
    MariaDB配置远程访问权限
    虚拟主机的配置
    PHP–图像XX因其本身有错无法显示
    apache重写中匹配?即查询时用到的字符
    nginx反向代理时的情况分析
  • 原文地址:https://www.cnblogs.com/yangliheng/p/5692148.html
Copyright © 2011-2022 走看看