假设ip为192.168.1.100
rsync的配置文件是/etc/rsyncd.conf。注意这个文件默认是不存在的,需要手动创建。
# 非系统虚拟用户
uid = root
gid = root
# 防止出现安全问题
use chroot = no
# 最大连接数
max connections = 200
# 超时时间
timeout = 600
# 进程pid所在的文件
pid file = /var/run/rsyncd.pid
# 锁
lock file = /var/run/rsync.lock
# 出错的日志文件
log file = /var/log/rsyncd.log
# 忽略错误
ignore errors = true
read only = false
# 是否允许列表
list = false
# 允许的主机
hosts allow = 192.168.1.1/24
hosts deny = 0.0.0.0/32
# 虚拟用户
auth users = rsync_backup
# 用户对应的密码文件
secrets file = /etc/rsync.password
exclude=tmp etc
[proto] # 模块
comment = user 10:00 2019-7-1
# 共享目录
path = /mnt/data/Files/
[www]
comment = user 14:18 2012-1-13
path = /data/path2
rsync_backup:password
rsync_backup为同步传输用到的虚拟账号,这个账号仅为rsync的账号,不需要是系统账号,后面的password为密码,不超过8位
chmod 600 /etc/rsync.password #权限必须为600
如果rsyncd.conf中设置的uid和gid是其他用户,比如
uid = rsync ----非系统虚拟用户
gid = rsync
则需要创建用户并且修改共享的目录到该用户下
[root@A /]#ls -dl /data/path2
drwxr-xr-x. 2root root 4096 Jan 9 12:06 /data/path2
[root@A /]# useradd rsync -s /sbin/nologin
[root@A /]# chown -R rsync.rsync /data/path2
rsync –daemon
可以到/var/log/rsyncd.log查看执行日志,可以看到默认监听的端口是873
netstat -lntup|grep 873
也可以查看下该端口的监听状况
tcp 0 0 0.0.0.0:873 0.0.0.0:* LISTEN 25241/rsync
tcp6 0 0 :::873 :::* LISTEN 25241/rsync
rsync -avz rsync_backup@192.168.1.100::proto /data/
上面命令ip即为上一步的ip,双冒号跟着要同步文件夹的模块名字,这样输入第一步服务器上rsyncd.conf配置的密码后,即可将第一步服务器上/mnt/data/Files/下的所有内容同步到本地/data/目录下
将密码文件添加到/etc/rsync.password下
password
rsync.password文件中只需要密码就可以,不需要用户,然后执行
rsync -avz rsync_backup@192.168.1.100::proto /data/ --password-file=/etc/rsync.password
重起rsync的组合命令
[root@A-Server58 ~]# pkill rsync #关闭rsync服务
[root@A-Server58 ~]# rsync --daemon #启动rsync服务
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。