一. 配置服务端
1. 创建 /etc/rsyncd.conf
uid=rsync
gid=rsync
use chroot=no
max connections=200
timeout=300
pid file=/var/run/rsyncd.pid
lock file=/var/run/rsync.lock
log file=/var/log/rsync.log
[label] #客户端以rsync://auto user@ip/label的方式访问标签里的目录
path=/home/wzz/rsync_share
read only=false
list=false
hosts allow=192.168.76.0/24
hosts deny =0.0.0.0/32
auth users=rsync_backup #服务端认证可以登录的用户
secrets file=/etc/rsync.password #服务端创建保存用户密码的文件
2. 创建本地用户
useradd rsync -s /sbin/nologin
3. 创建并授权共享目录
1.mkdir /home/wzz/rsync_share -p
2.chown -R rsync.rsync /home/wzz/rsync_share
4. 为客户端登录用户创建密码文件
echo “rsync_backup:oldboy” > /etc/rsync.password
chmod 600 /etc/rsync.password
6.启动Rsync服务端守护进程
rsync --daemon #lsof -i :873
7. 关闭防火墙和SELinux
8. 服务端日志文件
/var/log/rsyncd.log
二. 配置客户端
1. 检查是否安装rsync
rpm -qa rsync
2. 建立登录用户的密码文件
echo “oldboy” > /etc/rsync.password # 只放置密码
chmod 600 /etc/rsync.password
3. 推送文件到服务端
1) 法1:格式是rsync://
rsync -avz date.txt rsync://rsync_backup@192.168.76.133/label --password-file=/etc/rsync.password
2) 法2:格式是auth_user@ip::label
rsync -avz date.txt rsync_backup@192.168.76.133::oldboy --password-file=/etc/rsync.password
4.拉取文件到客户端
rsync -avz rsync_backup@192.168.76.133::oldboy /data --password-file=/etc /rsync.password
#同步服务端共享目录下的所有文件到客户端data目录,如果没有data目录会自动创建
如果是 rsync -avz --delete
则删除客户端目录里比源目录多余的文件
附:错误问题
问题1:ERROR: cannot overwrite non-directory with a directory
拉取文件放后面、上传文件放前面,如果拉取时源目录里没有该文件会报上述错误