Rsync全网备份

2019-08-20  本文已影响0人  WhatGui_c607

各个目录释义:

/backup/              备份目录      统一服务器本地备份目录,便于管理

/var/spool/cron/root    定时任务服务配置文件

/etc/rc.local        开机启动配置文件

/server/scripts    日常脚本目录    统一服务器本地脚本目录,便于管理

/var/html/www    web服务器站点目录       

/app/logs            web服务器访问日志路径

[root@web01 /]# mkdir /server/scripts/ -p

[root@web01 /]# cd /server/scripts/

[root@web01 /server/scripts]# vim bak.sh

写脚本:

#!/bin/sh

export PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin"

export RSYNC_PASSWORD=oldboy

IP=$(hostname -i)

mkdir -p /backup/$IP

#1.打包

tar zchf /backup/$IP/bak_${IP}_$(date +%F_%w).tar.gz /var/spool/cron/root /etc/rc.local /server/scripts /var/html/www /app/logs &>/dev/null &&\

touch /backup/$IP/bak_${IP}_$(date +%F_%w).flag &&\

#采集指纹

find /backup/ -type f -name "*.tar.gz"|xargs md5sum >/backup/$IP/bak_${IP}_$(date +%F_%w).flag &&\

#2.删除

find /backup/ -type f -name "*.tar.gz" -mtime +7|xargs rm -f &&\

#3.推送

rsync -az /backup/ rsync_backup@172.16.1.41::backup &>/dev/null

客户端配置完成

定时任务:

[root@web01 /server/scripts]# crontab -l|tail -2

######back.....

00 00 * * * /bin/sh /server/scripts/bak.sh >/dev/null 2>&1

[root@web01 /server/scripts]# find /backup/ -type f -name "*.tar.gz" -mtime +7|xargs rm -f

服务端

#!/bin/bash

export RSYNC_PASSWORD=oldboy

IP=$(ifconfig eth1|awk 'NR==2{print $2}')

mkdir -p /backup/$IP

#打包

tar zcfh /backup/$IP/$(date +%F_%w).tar.gz /server/scripts /var/html/www /app/logs /var/spool/cron/root /etc/rc.local &&\

#删除

find /backup/ -type f -name "*.tar.gz" -mtime +7|xargs rm -f &&\

#采集指纹

find /backup/$IP -type f -name "*.tar.gz"|xargs md5sum >/backup/$IP/${IP}_$(date +%F).flag &&\

#t推送

rsync -az /backup/ rsync_backup@172.16.1.41::backup

#!/bin/bash

export PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin"

export RSYNC_PASSWORD=oldboy

#采集指纹

find /backup/ -type f -name "*.flag"|xargs md5sum -c >/backup/$(date +%F).log &&\

#删除

find /backup/ -type f -name "*1.tar.gz"  -mtime +180|xargs rm -f &&\

find /backup/ -type f ! -name "*1.tar.gz" -mtime +7|xargs rm -f &&\

#3.推送

rsync -az /backup/ rsync_backup@172.16.1.41::backup &>/dev/null

#发邮件

mail -s "rsync data result" 1374557442@qq.com </backup/$(date +%F).log

客户端配置完成

在etc/mail.rc 配置/

set from=

set smtp=

set smtp-auth-user=

set smtp-auth-password=

set smtp-auth=

from 是发送的邮件地址

smtp    是发送的外部smtp服务器的地址

smtp-auth-user  是外部smtp服务器认证的用户名

smtp-auth-password  是外部smtp服务器认证的用户密码(授权码)

set smtp-auth=login  是邮件的认证方式

上一篇 下一篇

猜你喜欢

热点阅读