主服务器: 192.168.1.8
备份服务器: 192.168.1.9
要求:主服务器上文件变动时能实时同步到备份服务器上。
方法:
在备份服务器上开启sync服务端,监听主服务器发送过来的文件传输请求,存储到相应位置。
主服务器开启sersync2服务端,监听某个目录文件变动并通知备份服务器的sync服务端。
操作步骤:
1、备份服务器开启sync服务:首先配置:vim /etc/rsyncd.conf
# rsync服务端配置
uid = root
gid = root
use chroot = no
max connections = 200
timeout = 1000
transfer logging = yes
pid file = /var/run/rsyncd.pid
lock file = /var/run/rsyncd.lock
log file = /var/log/rsyncd.log
log format = %t %a %m %f %b
port = 873
ignore errors
[dnoa]
path = /web/www
ignore errors = yes
read only = no
write only = yes
hosts allow = 192.168.1.8
hosts deny = *
list = yes
auth users = dnoa
secrets file = /etc/rsyncd.passwd
启动服务: /usr/bin/rsync --daemon
服务建议写入自动启动脚本:/etc/rc.local
2、主服务器上配置sersync2(目录自己创建):vim /web/etc/confxml.xml
注意:这个文件比较复杂,但是需要配置的仅仅是彩色字体部分:
<?xml version="1.0" encoding="ISO-8859-1"?>
<head version="2.5">
<host hostip="localhost" port="8008"></host>
<debug start="false"/>
<fileSystem xfs="false"/>
<filter start="false">
<exclude expression="(.*)\.svn"></exclude>
<exclude expression="(.*)\.gz"></exclude>
<exclude expression="^info/*"></exclude>
<exclude expression="^static/*"></exclude>
</filter>
<inotify>
<delete start="true"/>
<createFolder start="true"/>
<createFile start="true"/>
<closeWrite start="true"/>
<moveFrom start="true"/>
<moveTo start="true"/>
<attrib start="true"/>
<modify start="true"/>
</inotify>
<sersync>
<localpath watch="/web/www">
<remote ip="192.168.1.9" name="dnoa"/>
</localpath>
<rsync>
<commonParams params="-artuz"/>
<auth start="true" users="dnoa" passwordfile="/etc/rsyncd.passwd"/>
<userDefinedPort start="false" port="874"/><!-- port=874 -->
<timeout start="false" time="100"/><!-- timeout=100 -->
<ssh start="false"/>
</rsync>
<failLog path="/tmp/rsync_fail_log.sh" timeToExecute="60"/><!--default every 60mins execute once-->
<crontab start="false" schedule="600"><!--600mins-->
<crontabfilter start="false">
<exclude expression="*.php"></exclude>
<exclude expression="info/*"></exclude>
</crontabfilter>
</crontab>
<plugin start="false" name="command"/>
</sersync>
<plugin name="command">
<param prefix="/bin/sh" suffix="" ignoreError="true"/> <!--prefix /opt/tongbu/mmm.sh suffix-->
<filter start="false">
<include expression="(.*)\.php"/>
<include expression="(.*)\.sh"/>
</filter>
</plugin>
</head>
启动服务: sersync2 -d -r -o /web/etc/confxml.xml
为了调试方便,可以将<debug start="false"/>改为<debug start="true"/>,再前端启动(去掉-d选项): sersync2 -r -o /web/etc/confxml.xml。
在主服务器创建文件 touch /web/www/test.file
看备份服务器是否也有了这个文件:ll /web/www/test.file
从主服务器上删除这个文件 rm -f /web/www/test.file,看备份服务器是否也一并删除。
如果成功了,基本上文件增加、修改和删除就都可以同步到备份服务器了。
因为sersync2不好下载,所以我把它放到附件里了,可以下载使用。
相关推荐
Allway Sync文件自动同步可以两台服务器之间文件自动同步,非常好用,自动检测
linux下Rsync+sersync实现文件数据实时同步
Allway Sync 是一个非常容易使用的 Windows 文件同步软件。 它可以在几个文件夹之间进行文件同步。 同步方式有源文件夹同步和各向同步两种方式: 一、源文件夹同步方式将以一个文件夹为基准,删除或覆盖其余文件夹...
AllwaySync文件同步工具,文件很好同步到另外服务器上。
Java文件同步开源项目Sync 使用简单的命令即可完成文件系统的同步,可以在其上自己包装业务 含源码和jar
AllwaySync 强大的文件同步软 ,可以自己设置同步规则和同步执行时间,内有注册码。
亲测,有疑问可以加我,共同讨论学习!
2、进行真正的双向和n - way文件和文件夹同步,忘了备份和恢复程序。 3、文件的修改和删除进行跟踪在本地数据库。因此,荃威同步知道您的文件的真实历史 - 没有不必要的质疑。 4、生成一个文件夹之间的同步...
网络文件同步软件 AllwaySync 可双向/单向同步,可只同步特定的文件或文件夹等。。。。。。,文件少时,可不注册长期使用
sync和synctoy同步工具,实现时时同步和备份功能,sync和synctoy同步工具,实现时时同步和备份功能
AllwaySync 9.1.7 Pro 文件同步 工具
找一些书的共享,非常方便。BitTorrent Sync 是一款免费...它不需第三方服务器即可让多台电脑之间直接互相同步和共享文件,而且全程AES加密。它采用基于类似BT下载的P2P分布式技术而来,速度快而且可通过密钥文件共享!
同步方式有源文件夹同步和各向同步两种方式: 一、源文件夹同步方式将以一个文件夹为基准,删除或覆盖其余文件夹与源文件相比较不相同的文件。 二、各向同步方式则自动将更新的文件覆盖几个同步文件夹中的旧文件...
本程序用于同步两台服务器之间的文件系统,需要CURL支持 使用方法:将本程序放在两台服务器的根目录下,登陆其中一台服务器的filesync.php,然后输入另一台服务器中filesync.php的链接地址,勾选同步类型并点击同步.
文件同步文件同步文件同步文件同步文件同步
SyncToy微软自己的文件同步工具 配置好后文件夹之间按条件进行同步
群晖NAS和OSS远程文件夹同步Cloud Sync的安装与使用教程
它通过分析、同步文件夹来进行文件备份,在同步 文件夹中建立 _SYNCAPP 隐藏文件夹,记录同步文件的相关信息,方便 以后同步更新。原版默认采用的方案是“双方同步模式”,个人认为 此方案有可能导致文件误删除,...
IncreSync是多文件夹批量处理的文件增量同步软件,它支持两种同步方式,在线同步和离线同步。在线同步是两台联网机器之间的文件同步,通过共享访问另一台电脑;离线同步是通过U盘等第三方介质进行两台电脑之间的文件...
filesync实时同步系统是对任意文件发生的所有事件进行实时检测和同步的软件。 filesync实时同步系统(以下简称filesync)以Linux内核作为基础,采用C++ 11编程技术,将事件扫描技术和文件传输技术加载在操作系统底层,...