全网备份项目--(Linux运维04)

本文详细介绍如何在Linux服务器上部署rsync进行项目备份,涉及配置SMTP发送邮件、三台服务器部署、详细的需求清单(包括系统配置、日志、数据保留策略)、脚本编写(客户端与服务器端)以及定时任务的设置。
摘要由CSDN通过智能技术生成

1. rsync的部署

1.1 rsync部署

点击了解详情

1.2 mail发送配置

首先准备163邮箱。
在这里插入图片描述
设置SMTP
linux上的配置
vim /etc/mail.rc

set from=你的邮箱账号@163.com smtp=smtp.163.com    		     
set smtp-auth-user=你的邮箱账号@163.com smtp-auth-password=smtp的授权码 smtp-auth=login

重启邮箱服务
systemctl restart postfix.service

发送邮件测试

mail -s "邮件测试" 3307235355@qq.com </etc/hosts 

echo "邮件发送测试"|mail -s "邮件测试" 3307235355@qq.com

2. 服务器的准备

三台服务器:存储,备份,网络服务器
服务器的外网ip 内网ip 主机名称

192.168.2.41  172.16.1.41 backup
192.168.2.31  172.16.1.31 nfs01
192.168.2.7   172.16.1.7  web01

虚拟机的克隆可以参考:点击了解配置多台虚拟的服务器

3. 完成项目需求

3.1项目的具体需求

1)所有服务器的备份目录必须都为/backup
web01 nfs01 backup
2)要备份的系统配置文件包括但不限于:
a.定时任务服务的配置文件(/var/spool/cron/root)(适合web和nfs服务器)
b.开机自启动的配置文件(/etc/rc.local)(适合web和nfs服务器)
c.日常脚本的目录(/server/scripts)。
d.防火墙iptables的配置文件(/etc/sysconfig/iptables)
web01 nfs01
3)Web服务器站点目录假定为(/var/html/www)
4)Web服务器A访问日志路径假定为(/app/logs)
5)Web服务器保留打包后的7天的备份数据即可(本地留存不能多于7天,因为太多硬盘会满)
web01 nfs01
6)备份服务器上,保留每周一的所有数据副本,其它要保留6个月的数据副本
部署好rsync守护进程服务
backup
7)备份服务器上要按照备份数据服务器的内网IP为目录保存备份,备份的文件按照时间名字保存。OK
8)需要确保备份的数据尽量完整正确,在备份服务器上对备份的数据进行检查,把备份的成功及失败结果信息发给系统管理员邮箱中(发邮件技巧见VIP群资料)。
backup

3.2实现命令

文件本地的压缩备份
解释说明:tar参数:h 假若目录中有软连接,会追踪到源文件进行压缩,v显示压缩过程,但在脚本的时候不需要,就不写

cd /
tar zchf /backup/172.16.1.31/backup_system_data$(date +%F_week%w).tar.gz  ./var/spool/cron/root ./etc/rcc/local /server/scripts ./etc/sysconfig/iptables
tar zchf /backup/172.16.1.31/www_html_backup$(date +%F_week%w).tar.gz /var/html/www
tar zchf /backup/172.16.1.31/www_logs_backup$(date +%F_week%w).tar.gz /app/logs

删除超过时间的数据

find /backup -type -f -mtime +7 | xargs rm

备份服务器上删除数据

find /backup -type -f -mtime +180 ! -name "*week1.tar.gz" | xargs rm 

传输数据核对(mod5sunm mod5sum -c)
客户端生成核对信息

find /backup/ -type f -mtime -1 ! -name "finger*" | xargs mod5sum > /backup/172.16.1.31/finger.txt

服务器端进行验证

find /backup/ -type f -mtime -1 -name "finger.txt"  | xargs mod5sum -c > /tmp/check.txt

客户端推送数据

rsync -avz /backup/172.16.1.31 rsync_backup@172.16.1.41::backup --password-file=/etc/rsync.password

4.脚本

4.1 客户端脚本

存储服务器backup
backup.sh

#!/bin/bash
Backup_dir="/backup"
IP_info=$(hostname -i)

#create backup dir 
mkdir -p /$Backup_dir/$IP_info

#tar system file 
cd /
tar zcf /$Backup_dir/$IP_info/backup_system_data$(date +%F_week%w).tar.gz  ./var/spool/cron/root ./etc/rc.local ./server/scripts

#del 7 day ago file
find /backup -type f -mtime +7 | xargs rm 2>/dev/null

#create finger file
find /backup/ -type f -mtime -1 ! -name "finger*" | xargs md5sum > /$Backup_dir/$IP_info/finger.txt 

rsync -az /$Backup_dir/ rsync_backup@172.16.1.41::backup --password-file=/etc/rsync.password

web01服务器

#!/bin/bash
Backup_dir="/backup"
IP_info=$(hostname -i)

#create backup dir 
mkdir -p /$Backup_dir/$IP_info

#tar system file 
cd /
tar zcf /$Backup_dir/$IP_info/backup_system_data$(date +%F_week%w).tar.gz  ./var/spool/cron/root ./etc/rc.local ./server/scripts

#del 7 day ago file
find /backup -type f -mtime +7 | xargs rm 2>/dev/null

#create finger file
find /backup/ -type f -mtime -1 ! -name "finger*" | xargs md5sum > /$Backup_dir/$IP_info/finger.txt 

rsync -az /$Backup_dir/ rsync_backup@172.16.1.41::backup --password-file=/etc/rsync.password

4.2 备份服务器脚本

#!/bin/bash

#del 180 ago day 
find /backup/ -type f -mtime +180 ! -name "*week1.tar.gz"

#check backup data
find /backup/ -type f -name "finger.txt"|xargs md5sum -c >/tmp/check.txt

#sed email 
mail -s "check data backup" 3307235355@qq.com </tmp/check.txt

5.自动化脚本定时任务

5.1客户端的定时任务

crontab -e
# backup data
0 0 * * *  /bin/sh /server/scripts/backup.sh &>/dev/null

5.2服务器端的定时任务

# check backup data
0 5 * * *  /bin/sh /server/scripts/backup_server.sh &>/dev/null

查看任务
crontab -l

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

长安有故里y

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值