rsync 全网备份

目录

1.前言

2.背景

3.备份的内容

4.备份方式

5.环境准备

6.步骤

7.rsync服务端调试

7.1配置

7.2创建目录并测试

8.客户端备份脚本

9.服务端脚本配置

10.增加校验功能

11.致谢


1.前言

在当今数字化的时代,数据的价值不言而喻。无论是企业的关键业务数据,还是个人的珍贵回忆,确保数据的安全与可恢复性至关重要。而全网备份作为一种全面的数据保护策略,成为了众多组织和个人的重要选择

rsync,这个强大的工具,为我们实现全网备份提供了高效且可靠的解决方案。它以其独特的算法和灵活的配置,能够在不同的网络环境和系统架构下出色地完成数据同步与备份任务。

在这篇博客中,我们将深入探讨 rsync 在全网备份中的应用。从 rsync 的基本原理和特性入手,逐步深入到实际的备份场景和策略制定。我们将分享成功的案例和经验教训,帮助你更好地理解如何利用 rsync 打造一个强大的全网备份体系。

无论你是系统管理员、开发者,还是普通的电脑用户,都能从这篇博客中获得有关 rsync 全网备份的宝贵知识和实用技巧。让我们一同开启 rsync 全网备份的探索之旅,为数据的安全保驾护航。

2.背景

一些网站的数据 脚本代码需要备份的时候我们就需要用到rsync服务来做全网备份

3.备份的内容

我们常见的备份的有以下数据需要我们来备份

数据

脚本

代码

日志收集

4.备份方式

我们一般通过打包压缩+定时任务来进行全网备份

5.环境准备

角色 主机 运行服务
存放备份 backup rsync服务端
生成备份 nfs01 rsync客户端
生成备份 web01 rsync客户端

6.步骤

步骤说明 详细内容
1.rsync服务端配置与调试 配置rsync服务
2.rsync客户端配置备份脚本节点 1.备份 2.推送 3.清理
3.定时任务 定时运行脚本
4.在备份服务器上检查并且发送结果邮件 1.清理备份 2.rsync服务端检查备份并发送邮件

7.rsync服务端调试

7.1配置

在服务端机器中的主配置文件/etc/rsyncd.confconf 在之前的配置的基础上加入以下内容

(可以看上一篇博文获取之前的配置)

复制代码
[backup]
comment=收集备份
path=/backup/

7.2创建目录并测试

复制代码
mkdir backup

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

8.客户端备份脚本

在客户端/server/scripts目录下创建bak_conf.sh文件并写入如下命令作为脚本

复制代码
#!/bin/bash
# 1.变量
ip=$(hostname -I | awk '{print $2}')
backup_dir="/backup/${ip}"
time=$(date +%F_%V)  # 使用 %V 替换 %W
backup_file="conf-${time}.tar.gz"

# 2.备份命令
mkdir -p "${backup_dir}"
tar zcf "${backup_dir}/${backup_file}" /etc/ /var/spool/cron/

# 3.推送命令
rsync -a "${backup_dir}" rsync_backup@172.16.1.41::backup --password-file=/etc/rsync.password

# 4.删除
find "${backup_dir}" -type f -name "*.tar.gz" -mtime +7 -exec rm -f {} \;
~                                                                                                        

可以执行脚本 并使用tree命令来查看服务端机器有没有备份文件,结果如下图

9.服务端脚本配置

在服务端上写一个脚本功能是检查备份和清理备份 具体配置如下

10.增加校验功能

检查数据在传输中是否发生变化

md5sum 文件名

检查单个文件

校验多个文件(find+md5)

具体应用

客户端备份的时候生成备份,创建指纹信息md5sum

安全防护措施

给比较固定位置的文件 设置md5 定期校验

11.致谢

非常感谢您阅读我的博客!如果您有任何问题、建议或想了解特定主题,请随时告诉我。您的反馈对我非常重要,我将继续努力提供高质量的内容。

相关推荐
@游子1 小时前
内网渗透笔记-Day5
运维·服务器
晚风吹人醒.1 小时前
缓存中间件Redis安装及功能演示、企业案例
linux·数据库·redis·ubuntu·缓存·中间件
记得记得就1511 小时前
【Nginx 性能优化与防盗链】
运维·nginx·性能优化
Yawesh_best1 小时前
告别系统壁垒!WSL+cpolar 让跨平台开发效率翻倍
运维·服务器·数据库·笔记·web安全
V***u4531 小时前
MS SQL Server partition by 函数实战二 编排考场人员
java·服务器·开发语言
roman_日积跬步-终至千里1 小时前
【Docker】Docker Stop 后到底发生了什么?——从信号机制到优雅停机
运维·docker·容器
喵手1 小时前
云端智变:基于 DevUI 与 MateChat 打造下一代云原生智能运维中台实战教学!
运维·云原生·devui·matechat
Hard but lovely1 小时前
linux: pthread库的使用和理解
linux
小五传输2 小时前
常用的文件摆渡系统:让数据安全高效跨越网络界限
大数据·运维·安全
麦麦鸡腿堡2 小时前
Java_网络编程_InetAddress类与Socket类
java·服务器·网络