centos7下面rsync实现服务器的文件同步
环境部署:服务器1:192.168.1.99,作为客户端
服务器2:192.168.1.10,作为服务端
实现功能:每当99服务器中的文件发生改变时,就同步到10服务器中。
一,服务sync端配置(即10服务器的配置)需要防火墙开放873端口,可以根据自己需要修改:
(1)软件安装
yum -y install rsync
(2)为 rsyncd 服务编辑配置文件,默认没有,需自己编辑
vim /etc/rsyncd.conf
写入以下内容:
uid = root
gid = root
use chroot = no
max connections = 5
timeout = 600
pid file = /var/run/rsyncd.pid
lockfile = /var/run/rsyncd.lock
log file = /var/log/rsyncd.log
[zzzyk]
path = /home/zzzyk.com/
ignore errors = yes
read only = no
write only = no
hosts allow = 192.168.1.99
hosts deny = *
list = yes
auth users = web
secrets file = /home/zzzyk.com.passwd
(3)创建文件同步的目录,上面配置里的path,如果有就不用创建了
mkdir /home/zzzyk.com/
(4)创建配置中的密码文件,并增加权限:
echo "web:yizuotu.net" > /home/zzzyk.com.passwd
chmod 600 /home/zzzyk.com.passwd
(5)重新启动
systemctl restart rsyncd.service
二,配置sync客户端(即99服务器的配置):
(1)安装软件
yum -y install rsync
(2)配置一下文件为 rsyncd 客服端编辑配置文件,默认没有,需自己编辑
vim /etc/rsyncd.conf
uid = root
gid = root
use chroot = no
max connections = 100 # //最大连接数为100
# // pid file = /var/run/rsyncd.pid #pid文件的存放位置
# //CentOS7中yum安装不需指定pid file 否则报错
lock file=/home/tmp/rsyncd.lock
log file =/home/tmp/rsyncd.log # //此文件定义完成后系统会自动创建
exclude = lost+found/
transfer logging = yes
timeout = 900
ignore nonreadable = yes
dont compress = *.gz *.tgz *.zip *.z *.Z *.rpm *.deb *.bz2 # //传输时不压缩的文件
(3)创建web目录
(4)设置密码并设置权限
echo "yizuotu.net"> /home/yizuotu.net.password
chmod 600 /home/yizuotu.net.password
systemctl restart rsyncd.service
在客户端测试(即99服务器):
rsync -auv --password-file=/home/yizuotu.net.password /home/yizuotu.net/ web@192.168.1.10::zzzyk
如果看到文件同步过去表示成功。
centos6 启动rsync方法
1. 以 xinetd 运行 rsync 服务
CentOS 默认以 xinetd 方式运行 rsync 服务。rsync 的 xinetd 配置文件在 /etc/xinetd.d/rsync。要配置以 xinetd 运行的 rsync 服务需要执行如下的命令:
# chkconfig rsync on
# service xinetd restart
2. 独立运行 rsync 服务
最简单的独立运行 rsync 服务的方法是执行如下的命令:
# /usr/bin/rsync --daemon
您可以将上面的命令写入 /etc/rc.local 文件以便在每次启动服务器时运行 rsync 服务