Rsync一款快速增量备份工具
Remote Sync,远程同步
支持本地复制,或者与其他SSH、rsync主机同步

-
----在远程同步任务中,负责发起rsync同步操作的客户机被称为发起端,而负责相应来自客户机的rsync同步操作的服务器成为同步源。

-
----在同步过程中,同步源负责提供文档的原始位置,发起段应对该位置具有读取权限。

-
----rsync作为同步源时以守护进程运行,为其他客户机提供备份原。配置rsync同步源需要建立配置文件rsyncd。conf,创建备份账号,然后将rsync程序以“--daemon”选项运行

rsync远程同步
建立/etc/rsyncd.conf配置文件同步源
Vi /etc/rsyncd.conf
rsync远程同步
为备份账户创建数据文件
Vi /etc/rsyncd_users.db
rsync远程同步
启动rsync服务程序
rsync远程同步
如果要结束rsync进程,可以执行kill $(cat /var/run/rsyncd.pid)

使用rsync备份工具(在rsync客户机,发起端,服务器B)
例:将文件/etc/fstab、目录/boot/grub同步备份到/opt目录下(相当于本地备份)
rsync远程同步
同步源将rsync同步源上的网站根目录下载到本地的/root下进行备份(远程备份)
首先要配置防火墙
然后确认rsync同步源上的网站根目录:

rsync远程同步
客户机
rsync远程同步
将源服务器中的wwwroot共享模块(网站根目录),下载到本地的/myweb目录下,(删除目标位置有而原始位置没有的文件)
首先确认在客户机上的/myweb下只有一个网页

rsync远程同步
然后执行备份
rsync远程同步
查看在客户机的/myweb(里面只有同步源服务器上的网页,本地的.html备份删除,因为加了--delete的备份选项)
rsync远程同步
每天晚上20:52对服务器的网站做一次同步
首先创建一个密码文件,保存backuper的密码
rsync远程同步
内容为pwd123、

然后设置权限,并做计划任务:
rsync远程同步

rsync远程同步

rsync远程同步
配置rsync+inotify实时同步
作用:将rsync工具与inotify机制相结合,可以实现触发式备份(实时同步),只要原始位置的文档发生变化,则立即启动增量备份操作。
调整inotify内核参数(文件数量较多或者变化较频繁时需要调整,把数值加大)
Vi /etc/sysctl.conf
rsync远程同步
sysctl -p更新
rsync远程同步
安装inotify-tools
rsync远程同步

rsync远程同步
然后执行make && make install

以监控网站目录/var/www/html为例(当/var/www/html进行增删改查的时候就会动态显示监控信息)
rsync远程同步
(编写触发式同步脚本)
检测本机/var/www/html目录,一旦有更新就触发rsync的同步操作,上传备份至服务器192.168.1.7的/var/www/html目录下,实现网站同步,保持两个站点的文件一致。类似于dns的主从复制。
创建用户rput(同步源
useradd rput && passwd rput
开启sshd服务
service sshd start
允许rput用户登录
Vi /etc/ssh/sshd_config
AllowUsers rput@192.168.1.8

rsync远程同步

rsync远程同步
配置发起端:(实现实时同步需要使用秘钥对的方式验证身份)
建立秘钥对文件实现无交互式登录
ssh-keygen -t rsa
创建过程一路回车就可以了
将公钥文件上传至服务器
scp ~/.ssh/id.rsa.pub root@192.168.1.7:/tmp
在服务器中导入公钥文本
Mkdir -p /home/rput/.ssh/
Cat /tmp/id_rsa.pub >> /home/rput/.ssh/authorized_keys

rsync远程同步
rsync远程同步

rsync远程同步

rsync远程同步
编写触发式同步脚本
Vi /opt/inotify_rsync.sh
rsync远程同步

rsync远程同步
同步源)执行
rsync远程同步
客户端
rsync远程同步

rsync远程同步
在(同步源)查看
rsync远程同步
如果觉得有问题的朋友请联系博主qq593646368