服务器同步解决方案Rsync+Inotify

 

 

两台服务器 192.168.2.3(源服务器),192.168.2.5(目标服务器)

服务器环境centos8

 

源服务器:

https://github.com/inotify-tools/inotify-tools/tags

下载inotify-tools最新tar.gz包并解压

tar -xvf inotify-tools-xxx.tar.gz

cd notify-tools-xxx

./configure --prefix=/usr/local/inotify-tool-x

make && make install

 

vi /home/test/rsync.conf #自定义路径

uid=root #设置rsync运行权限为root
gid=root #设置rsync运行权限为root
use chroot=no #默认为true,修改为no,增加对目录文件软连接的备份
port=873 #默认端口,不填就是默认端口
max connections=10 #最大连接数
strict modes=yes
pid file=/var/run/rsyncd.pid
lock file=/var/run/rsync.lock
log file=/home/test/rsyncd.log
[web] #自定义名称
path=/home/wwwroot/test #rsync服务端数据目录路径
comment=web#模块名称,与上面[web]名字相同
ignore errors
read only=no #设置rsync服务端文件为读写权限
write only=no
hosts allow=192.168.2.5 #允许ip,多个以英文逗号分割
host deny =* #禁用ip,多个以英文逗号分割
list=false
auth users=root #执行数据同步的用户名,可以设置多个,用英文状态下逗号隔开
secrets file=/home/test/rsync.passwd #用户认证配置文件,里面保存用户名称和密码,后面会创建这个文件

 

vi /home/test/rsync.passwd

123456

chmod 600 /home/test/rsync.passwd

chmod 600 home/test/rsync.conf

 

 

 

所有目标服务器安装:

yum install rsync xinetd  # CentOS中是以xinetd来管理Rsync服务的

vi /home/test/rsync.conf

uid=root
gid=root
use chroot=no
max connections=10
strict modes=yes
pid file=/var/run/rsyncd.pid
lock file=/var/run/rsync.lock
log file=/home/test/rsyncd.log
[web]
path=/home/wwwroot/test
comment=web file
ignore errors
read only=no
write only=no
hosts allow=192.168.2.3
host deny =*
list=false
auth users=root
secrets file=/home/test/rsync.passwd

 

vi /home/test/rsync.passwd

root:123456

 

chmod 600 /home/test/rsync.passwd

chmod 600 /home/test/rsync.conf

rsync --daemon --config=/home/test/rsync.conf #启动,要注意的是源服务器不需要启动rsync服务

ps -ef |grep rsync #查看是否有rsync服务进程

 

切换到源服务器192.168.2.3

在/home/wwwroot/test目录下新建一个文件,再用下面到命令执行,查看目标服务器是否有文件新增

rsync -vzrtopg --delete  --password-file=/home/test/rsync.passwd /home/wwwroot/test root@192.168.2.5::web

 

 未完待续


上一篇:rsync+inotify远程同步部署实验(图文详解)


下一篇:rsync远程同步(下行同步,图文注解详细)