目录

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

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

本文是转载文章,点击查看原文
如有侵权,请联系 xyy@jishuzhan.net 删除
相关推荐
Wnq100722 小时前
智能巡检机器人在化工企业的应用研究
运维·计算机视觉·机器人·智能硬件·deepseek
tf的测试笔记5 小时前
测试团队UI自动化实施方案
运维·自动化
TDD_06285 小时前
【运维】Centos硬盘满导致开机时处于加载状态无法开机解决办法
linux·运维·经验分享·centos
x66ccff5 小时前
vLLM 启动 GGUF 模型踩坑记:从报错到 100% GPU 占用的原因解析
linux
头孢头孢5 小时前
k8s常用总结
运维·后端·k8s
遇码5 小时前
单机快速部署开源、免费的分布式任务调度系统——DolphinScheduler
大数据·运维·分布式·开源·定时任务·dolphin·scheduler
William.csj6 小时前
Linux——开发板显示器显示不出来,vscode远程登录不进去,内存满了的解决办法
linux·vscode
爱编程的王小美6 小时前
Docker基础详解
运维·docker·容器
KeithTsui6 小时前
GCC RISCV 后端 -- 控制流(Control Flow)的一些理解
linux·c语言·开发语言·c++·算法
森叶6 小时前
linux如何与windows进行共享文件夹开发,不用来回用git进行拉来拉去,这个对于swoole开发者来说特别重要
linux·git·swoole