sersync2+rsync目录文件实时同步备份

简介:

 

 

说明:

192.168.1.2 (sersync+rsync)---------------FTP

192.168.1.3 (rsync)--------------------------backup

实验目的:

实时自动同步:192.168.1.2 ------->192.168.1.3到目录:/data/ftpdata ;

一、FTP服务器(sersync+rsync)

1、准备软件包

[root@ftp ~]# wget http://rsync.samba.org/ftp/rsync/rsync-3.0.9.tar.gz

[root@ftp ~]# wget http://sersync.googlecode.com/files/sersync2.5_64bit_binary_stable_final.tar.gz

 

2、安装sersync

[root@ftp ~]# mkdir /data/ftpdata

[root@ftp ~]# tar -zxvf sersync2.5_64bit_binary_stable_final.tar.gz -C /usr/bin/

[root@ftp ~]# cd /usr/bin/GNU-Linux-x86/

[root@ftp GNU-Linux-x86]# cp confxml.xml confxml.xml.bak

[root@ftp GNU-Linux-x86]# ls

confxml.xml        #主配置文件

confxml.xml.bak

sersync2                   #主程序二进制文件

编辑confxml.xml配置文件:

[root@ftp GNU-Linux-x86]# vim confxml.xml

<sersync>

<localpath watch="/data/ftpdata">                #监控的目录

<remote ip="192.168.1.3" name="ftpdata"/>    #backupIPftpdata为客户端rsync模块名

<!--<remoteip="192.168.8.39" name="tongbu"/>-->

<!--<remoteip="192.168.8.40" name="tongbu"/>-->

</localpath>

:wq

 

3、安装Rsync

[root@ftp ~]# tar -zxvf rsync-3.0.9.tar.gz

[root@ftp ~]# cd rsync-3.0.9

[root@ftp rsync-3.0.9]# ./configure --prefix=/usr/local/rsync

[root@ftp rsync-3.0.9]# make;make install

防火墙开启rsync端口:873

[root@ftp ~]# vim /etc/sysconfig/iptables/

添加:

-A INPUT -m state --state NEW -m tcp -p tcp--dport 873 -jACCEPT

重启:

[root@ftp ~]# /etc/init.d/iptables restart

二、备份服务器(rsync)

1、准备工作

创建备份目录:

[root@backup ~]# mkdir /data/ftpdata

 

2、准备软件包

[root@backup ~]# wgethttp://rsync.samba.org/ftp/rsync/rsync-3.0.9.tar.gz

3、安装rsync(备份服务器只安装rsync

[root@backup ~]# tar -zxvf rsync-3.0.9.tar.gz 

[root@backup ~]# cd rsync-3.0.9

[root@backup rsync-3.0.9]# ./configure --prefix=/usr/local/rsync

[root@backup rsync-3.0.9]# make;make install

 

4、建立rsync配置文件

[root@backup ~]# vim /etc/rsyncd.conf

uid=root

gid=root

maxconnections=36000

usechroot=no

logfile=/var/log/rsyncd.log

pidfile=/var/run/rsyncd.pid

lockfile=/var/run/rsyncd.lock

[ftpdata]

path=/data/ftpdata

comment =ftp files

ignoreerrors = yes

read only= no

hostsallow = 192.168..1.0/24

hostsdeny = *

:wq

启动rsync服务

[root@backup ~]# rsync --daemon

rsync启动加到启动项里

[root@backup ~]# echo "rsync--daemon" >> /etc/rc.local

[root@backup ~]# ps -ef |grep rsync

root525010 19:24 ?00:00:00 rsync --daemon

防火墙开启rsync端口:873

[root@backup ~]# vim /etc/sysconfig/iptables

添加:

-A INPUT -m state --state NEW -m tcp -p tcp--dport 873 -jACCEPT

重启:

[root@backup ~]# /etc/init.d/iptablesrestart

三、启动sersync服务

FTP服务器(sersync+rsync)上开启sersync守护进程,使sersync在后台运行,开启实时同步。

[root@ftp GNU-Linux-x86]# ./sersync2 -d -r

set thesystem param

executeecho50000000 > /proc/sys/fs/inotify/max_user_watches

executeecho 327679> /proc/sys/fs/inotify/max_queued_events

parse thecommand param

option:-drun as a daemon

option:-rrsync all the local files to theremote servers before the sersync work

daemonthread num: 10

parse xmlconfig file

host ip :localhosthost port: 8008

daemonstartsersync run behind the console 

config xmlparse success

pleaseset /etc/rsyncd.conf max connections=0 Manually

sersyncworking thread 12= 1(primary thread) +1(fail retry thread) + 10(daemon sub threads) 

Maxthreads numbers is: 22 = 12(Thread pool nums) + 10(Sub threads)

pleaseaccording your cpu use -n param to adjust the cpu rate

------------------------------------------

rsync thedirectory recursivly to the remote servers once

workingplease wait...

executecommand: cd /data/ftpdata && rsync -artuz -R --delete ./ 192.168.1.3::ftpdata>/dev/null 2>&1 

run thesersync: 

watchpath is: /data/ftpdata

*表明,sersync已经开启,可以在本地监控路径建立文件,查看远程是否同步成功!

 

[root@ftp GNU-Linux-x86]# ps -ef |grep rsync

root137710 18:48 ?00:00:00 ./sersync2 -d –r

最后需要把sersync命令加入到/etc/rc.local以开机自启动

[root@ftp GNU-Linux-x86]# echo "cd/usr/bin/GNU-Linux-x86&&./sersync2 -d -r" >> /etc/rc.local

四、测试验证

1、在ftp/data/ftpdata目录上创建一个文件夹:

[root@ftp ftpdata]# mkdir zl

 

2、在backup端查看/data/ftpdata目录是否相同;

[root@backup ~]# ll /data/ftpdata/

五、备份与恢复

1、手动备份

192.168.1.2---------->192.168.1.3 

[root@ftp~]# /usr/bin/rsync -vzrtopg --delete /data/ftpdata/ root@192.168.1.3::ftpdata

 

2、手动恢复

192.168.1.3---------->192.168.1.2 

[root@ftp~]# /usr/bin/rsync -vzrtopg --delete root@192.168.1.3::ftpdata/data/ftpdata/




本文转自 yhw85 51CTO博客,原文链接:http://blog.51cto.com/yanghuawu/1221875,如需转载请自行联系原作者

相关文章
|
编解码 监控 测试技术
如何优化OBS的推流设置以提高直播质量
【10月更文挑战第7天】如何优化OBS的推流设置以提高直播质量
|
Web App开发 Linux 数据安全/隐私保护
Linux curl命令详解
Linux curl命令详解
|
Ubuntu Shell 开发工具
ubuntu/debian shell 脚本自动配置 gitea git 仓库
这是一个自动配置 Gitea Git 仓库的 Shell 脚本,支持 Ubuntu 20+ 和 Debian 12+ 系统。脚本会创建必要的目录、下载并安装 Gitea,创建 Gitea 用户和服务,确保 Gitea 在系统启动时自动运行。用户可以选择从官方或小绿叶技术博客下载安装包。
615 2
|
Kubernetes Linux 容器
如何在centos中关闭swap分区
在CentOS中,关闭swap分区可以通过临时关闭和永久禁用两种方式实现。临时关闭swap分区适用于临时测试和故障排除,而永久禁用swap分区则需要修改 `/etc/fstab`文件。通过遵循上述步骤,可以确保系统在没有swap的情况下稳定运行。这对于某些应用场景(如Kubernetes集群)是必要的配置步骤。
1457 3
|
敏捷开发 定位技术 开发者
poc Proof of Concept
Proof of Concept(简称 POC)是概念验证的意思。在软件开发领域,POC 通常用于验证某个想法或概念是否可行。它通常是一个小型项目或原型,可以通过实际操作来证明某个想法或技术的有效性。POC 可以帮助开发者在项目开始之前确定技术的可行性,减少开发过程中的风险。
2477 3
|
网络协议 算法 网络性能优化
一文带你了解tcp协议
一文带你了解tcp协议
|
安全 算法 中间件
CentOS7下rpm包方式升级openssl到安全版本1.1.1n
CentOS7下rpm包方式升级openssl到安全版本1.1.1n
5902 0
CentOS7下rpm包方式升级openssl到安全版本1.1.1n
|
运维 NoSQL Ubuntu
深入理解Linux中的"crash"命令:内核崩溃的调试利器
`crash`是Linux内核崩溃调试工具,用于分析内核崩溃转储文件,提供GDB-like的交互式CLI。通过加载`vmcore`文件和内核映像,管理员可以查看系统状态、调用栈、内存布局等。安装`crash`可使用包管理器,如`apt-get`或`yum/dnf`。尽管有学习曲线且依赖转储文件,但`crash`在系统故障排查中极其重要。
|
数据采集 存储 数据管理
OneData:阿里巴巴的数据仓库之旅与统一数据治理实践
OneData 为解决大数据时代的挑战提供了一条可行的道路,对于其他企业和组织来说具有重要的参考意义。随着技术的不断进步和应用场景的扩展,OneData 的未来发展值得期待。
|
监控 Linux 网络安全
Linux服务器如何查询连接服务器的IP
【4月更文挑战第15天】Linux服务器如何查询连接服务器的IP
1563 1

热门文章

最新文章