目录
rsync同步服务器搭建(CentOS7)
参数:
服务器IP:192.168.221.136
客户端IP:192.168.221.138
1.环境准备
服务器端安装,启动
[root@localhost ~]# yum -y install rsync
[root@localhost ~]# systemctl start rsyncd
[root@localhost ~]# systemctl enable rsyncd
关闭SeLinux、关闭防火墙
[root@localhost ~]# setenforce 0
[root@localhost ~]# systemctl stop firewalld
[root@localhost ~]# systemctl disable firewalld
2.配置文件
[root@localhost ~]# vim /etc/rsyncd.conf
uid = root
gid = root
use chroot = no //不允许切换用户
read only = no //关闭只读
hosts allow=192.168.221.0/255.255.255.0 //允许连接的网络地址
#hosts deny=* //关闭黑名单
max connections = 5 //允许最大连接数5个
pid file = /var/run/rsyncd.pid
secrets file = /etc/rsyncd/rsyncd.passwd //用户密码文件下面详细介绍
log file = /var/log/rsync.log
transfer logging = yes
log format = %t %a %m %f %b
syslog facility = local3
timeout = 300
[backup] //标签
path = /data/backup/ //存放同步文件的路径
list=yes
ignore errors=yes
auth users = backup //用户名可以自己设置
#exclude = cache/
3.配置rsyncd.passwd口令文件及同步写入目录权限
[root@localhost ~]# mkdir -p /etc/rsyncd/ /data/backup/
默认rsync不开启服务,所以配置文件都是空的
注意:
secrets file文件的权限必须为600,否则同步会失败
rsyncd.passwd口令文件格式为:
用户名1:密码1
用户名2:密码2
[root@localhost ~]# echo 'backup:123456' >>/etc/rsyncd/rsyncd.passwd
[root@localhost ~]# chmod 600 /etc/rsyncd/rsyncd.passwd
4.启动rsync服务(开机自启)
[root@localhost ~]# systemctl restart rsyncd
5.查看端口号
[root@localhost ~]# ss -ntpl | grep rsync
873
6.客户端同步
/etc/rsyncd/rsyncd.passwd
文件记录密码值,在rsync服务器A和rsync客户端B上对于密码文件的写法是不一样的,服务器A的密码文件需要记录用户名与口令,而客户端B的密码文件不需要记录用户名,只记录口令。
设置权限为600.
[root@localhost ~]# echo '123456' >/rsyncd.passwd
[root@localhost ~]# chmod 600 /rsyncd.passwd
6.1.同步本地目录至服务器
示范命令:
[root@localhost ~]# rsync -avz --progress /website backup@192.168.221.136::backup --password-file=/rsyncd.passwd
保持原与目标目录一致命令:
[root@localhost ~]# rsync -avz --delete /website backup@192.168.221.136::backup --password-file=/rsyncd.passwd
6.2.从服务器同步本地目录/website
示范命令:
[root@localhost ~]# rsync -avz --progress backup@192.168.221.136::backup /website --password-file=/rsyncd.passwd
保持原与目标目录一致命令:
[root@localhost ~]# rsync -avz --delete backup@192.168.221.136::backup /website --password-file=/rsyncd.passwd
参数解释:
–progress 表示详细进度,可以省略
–delete 表示目标同步位置的数据与原位置一致
/website 表示本机同步位置
backup@192.168.221.136::backup
backup@192.168.221.136 表示使用用户为backup,加上服务端IP
::backup 表示在服务器的配置文件中创建的同步项名称
–password-file 在同步客户端本地保存密码文件/rsyncd.passwd,只记录密码
密码为服务器/etc/rsyncd/rsyncd.passwd文件记录的密码值。