CentOS7 安装配置rsync

时间:2021-05-13 16:33:50
centos7自带rsync,今天简单记录下。
rsync安装配置步骤
服务器端:
1.修改默认配置文件/etc/rsyncd.conf,该成如下:
# /etc/rsyncd: configuration file for rsync daemon mode
# See rsyncd.conf man page for more options.
# configuration example:
 uid = root                               //设置运行rsync 进程的用户
 gid = root
 use chroot = no
 max connections = 4
# pid file = /var/run/rsyncd.pid        //CentOS7中yum安装不需指定pid file 否则报错
 lock file=/var/run/rsyncd.lock
 log file = /var/log/rsyncd.log      //此文件定义完成后系统会自动创建
 exclude = lost+found/
 transfer logging = yes
 timeout = 900
 ignore nonreadable = yes          //同步时跳过没有权限的目录
 dont compress   = *.gz *.tgz *.zip *.z *.Z *.rpm *.deb *.bz2            //传输时不压缩的文件
# [ftp]   //系统自带例子,没删
#        path = /home/ftp
#      comment = ftp export area
[simba]          //此名字即客户端使用rsync来同步的路径,只是模块名称,无需和文件夹名字相同
path=/usr/local/simba    //实际需要同步的路径
comment=simba    //和中括号里名字一样就行,备注启动进程可以显示的内容
ignore errors
read only=yes    //表示可以pull 
write only=no      //表示可以push
list=no
auth user=rsyncuser    //客户端获取文件的身份此用户并不是本机中确实存在的用户
secrets file=/etc/rsyncd.passwd     //用来认证客户端的秘钥文件 格式 USERNAME:PASSWD 此文件权       
                                                        //限一定需要改为600,且属主必须与运行rsync的用户一致。
hosts allow=*    //允许所有主机访问
2.创建密钥文件
echo 'rsyncuser:123456'>/etc/rsyncd.passwd   //文件用户名和路径为上面定义,别写错,密码自己定
chmod 600 /etc/rsyncd.passwd        //修改权限
3.启动rsync服务
systemctl start rsyncd.service
systemctl enable rsyncd.service
启动后可以查看下日志,是否正常
tail /var/log/rsyncd.log
是否有如下提示:
rsyncd version 3.0.9 starting, listening on port 873
客户端:
1.创建密码文件   
echo '123456' >>/etc/rsyncd.passwd     //注意这里只需要服务器rsyncd.passwd 中的密码
chmod 600 /etc/rsyncd.passwd
2.测试
将服务器这个ip下的simba目录中内容同步到本地客户机 /tmp目录
rsync -auv --password-file=/etc/rsyncd.passwd rsyncuser@10.5.5.235::simba /tmp   
若要在crontab中添加自动同步,则必须指定--password-file 且rsyncuser一定为rsyncd.passwd中定义的,rsynctest 为服务器端【】中定义的