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.致谢

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

相关推荐
chlk1238 小时前
Linux文件权限完全图解:读懂 ls -l 和 chmod 755 背后的秘密
linux·操作系统
舒一笑8 小时前
Ubuntu系统安装CodeX出现问题
linux·后端
改一下配置文件9 小时前
Ubuntu24.04安装NVIDIA驱动完整指南(含Secure Boot解决方案)
linux
碳基沙盒9 小时前
OpenClaw 多 Agent 配置实战指南
运维
深紫色的三北六号18 小时前
Linux 服务器磁盘扩容与目录迁移:rsync + bind mount 实现服务无感迁移(无需修改配置)
linux·扩容·服务迁移
SudosuBash1 天前
[CS:APP 3e] 关于对 第 12 章 读/写者的一点思考和题解 (作业 12.19,12.20,12.21)
linux·并发·操作系统(os)
哈基咪怎么可能是AI1 天前
为什么我就想要「线性历史 + Signed Commits」GitHub 却把我当猴耍 🤬🎙️
linux·github
十日十行2 天前
Linux和window共享文件夹
linux
Sinclair2 天前
简单几步,安卓手机秒变服务器,安装 CMS 程序
android·服务器
木心月转码ing2 天前
WSL+Cpp开发环境配置
linux