本文为大家介绍的主要是服务器模式。
服务器模式:
此模式是基于C/S模式的,在这种模式下,rsync在后台启用了一个守护进程,这个守护进程在rsync服务器永久运行,用于接收文件传输请求,因此,客户端既可以把文件发给守护进程,也可以向守护进程请求文件。rsync的服务器模式非常适合为异地的中心备份服务器或数据异地存储库来使用。
企业案列:搭建远程容灾备份系统
为了保证数据安全,需要建立一个远程容灾系统,将网站数据在每天凌晨3点备份到远程的容灾服务器上,由于数量很大,每天只能进行增量备份,仅仅备份当天增加的数据,当网站出现故障后,可以通过备份最大程度的恢复数据。
解决方案:这里假定有A、B两个linux系统,A系统作为网站服务器,B系统作为A系统的远程容灾备份机,因此A系统就是rsync的服务器,B系统就是作为A系统的远程容灾备份,需要在A、B系统上都安装rsync软件,这样,在A系统上运行rsync守护进程,而在B上可以通过系统守护进程crontab来定时备份由A系统指定的数据,从而实现数据的远程容灾。
系统环境:
A系统:192.168.1.10
B系统:192.168.1.11
A、B系统上rsync软件的安装:1、./configure 2、make 3、make install
A系统上rsync的配置文件:rsync配置文件/etc/rsyncd.conf,安装时默认没有这个文件,可手动创建一个即可。
vim /etc/rsyncd.conf
/etc/server.pass下内容为:backup:abc123
A系统上启动rsync:/usr/local/bin/rsync --daemon
B系统上配置rsync:在备份机 上不用做任何配置,只需执行rsync同步操作即可,为了同步过程中不用输入密码,需要在B系统上创建一个serve.pass文件,该文件的内容与A系统上的server.pass密码一样即可,路径可以随意放,用时指定就行。
可以写成一个脚本,方便管理:
vim /root/rsync.sh
v是“--verbose”显示详细输出模式
z是“--compress”压缩模式
r是“--recursive”以子目录递归模式
t是“--times“用来保持文件信息时间
o是”--owner“用来保持文件的属主信息
p是”--perms“用来保持文件权限
g是”--group“用来保持文件的属组
--progress:用来显示数据镜像同步的过程
--delete:指定以rsync服务器为基准进行数据镜像同步,也就是要保持rsync服务器端目录与客户端目录的完全一致
--exclude:用于排除不需要文件传输的类型
/date:用户指定备份文件在客户端机器上的存放路径
chmod +x /root/rsync.sh
每天3点钟的时候自动执行这个脚本进行数据同步可以crontab
常见问题:
问题一:
@ERROR: chroot failed rsync error: error starting client-server protocol (code 5) at main.c(1522) [receiver=3.0.3]
原因:服务器端的目录不存在或无权限。
创建目录并修正权限可解决问题。
问题二:
@ERROR: auth failed on module tee rsync error: error starting client-server protocol (code 5) at main.c(1522) [receiver=3.0.3]
原因:
服务器端该模块(tee)需要验证用户名密码,但客户端没有提供正确的用户名密码,认证失败。
提供正确的用户名密码解决此问题。
问题三:
@ERROR: Unknown module ‘tee_nonexists’ rsync error: error starting client-server protocol (code 5) at main.c(1522) [receiver=3.0.3]
原因:
服务器不存在指定模块。
提供正确的模块名或在服务器端修改成你要的模块以解决问题。
您可能感兴趣的文章:
rsync与inotify实现数据同步的实例分享
linux rsync同步备份的安装与配置
Linux下架设rsync服务器的案例分享
rsync同步排除多个文件的方法
linux下rsync服务配置一例
使用rsync备份文件的方法浅析
有关rsync安装与配置的实例教程
学习rsync服务端与客户端的配置
使用rsync的exclude选项
rsync文件同步配置一例
文件同步工具rsync配置
linux rsync同步设置指南