环境
两台虚拟机
192.168.0.71 源服务器
192.168.0.77 目标服务器
都是CentOS7,并安装宝塔面板
目的
A作为源服务器
B作为备份服务器,去拉取A的数据
现A上有test项目需要进行备份
192.168.0.71 源服务器A&主服务器A 有目录 /opt/test
192.168.0.77 目标服务器B&备份服务器B 有目录 /opt/bak/test
操作
为两台机器都安装rsync
安装rsync
yum -y install rsync
安装完成启动rsync
# 启动rsync
/usr/bin/rsync --daemon --config=/etc/rsyncd.conf
源服务器A操作
开放873端口
到/etc下 找到rsync相关的文件
我们先新建密码配置文件
rsync_server.pas
编辑->输入
root:123456
格式 用户名:密码
保存
设置这个文件的权限为600所有者为root
这个文件定义了用户和密码,备份服务器请求的时候需要用到它做鉴权
接下来设置配置文件 rsyncd.conf
直接打开编辑
新的文件是只有注释的那些内容的
我们需要自己加上相关的配置
[backup] #module名称 事务的名称
path=/opt/test/ #备份的路径 记得一定在结尾加/
use chroot=no
max connections=10
read only=yes #这里是只读
write only=no
list=no
uid=root #密码配置文件里的用户名一致
gid=root
auth users=root #密码配置文件里的用户名一致
secrets file=/etc/rsync_server.pas #密码配置文件的路径
strict modes=yes
hosts allow=* #只允许某个IP进行访问 *代表全部
#hosts deny=1.1.1.1
ignore errors=yes
timeout=120 #超时 秒
加上事务配置之后保存
备份服务器B操作
一样的 到/etc目录下找到相关的rsync文件
新建备份服务器端的密码配置文件
rsync_client.pas
内容只需要填上你在源服务器上设置的密码就可以了
保存
相同的权限设置为600 所有者为root
开始测试
打开备份服务器192.168.0.77的SSH终端
输入
rsync -aqzrtopg --delete rsync://root@192.168.0.71/backup /opt/bak/test --password-file=/etc/rsync_client.pas
没有报错的话一般是成功了
扩展
停止Rsync
ps -ef | grep rsync
kill -9 进程号
rm -rf /var/rsync/rsync.pid
使用宝塔的计划任务调用脚本命令即可实现定时同步同步文件
已知错误
密码文件不存在
检查密码文件的路径设置对了没有
module不存在
检查rsync配置文件的书写 module模块的名称是否写对