rsync同步文件

一.服务端(需要被同步文件的主机)
    1. 安装rsync
            yum install -y rsync

    2. 配置,新增配置文件/etc/rsyncd.conf

[global]
uid = root
gid = root
use chroot = no
max connections = 10
list = yes
pid file = /var/run/rsyncd.pid
lock file = /var/run/rsyncd.lock
log file = /var/log/rsyncd.log
hosts allow = 192.168.217.130 //白名单,允许同步的机器IP地址

[data] //数据目录别名,同步时需要用到
path = /usr/local/src //别名对应的同步目录
ignore errors
read only = yes
auth users = vicxiang //同步时用到的用户名
secrets file = /etc/sery.pass //同步时用到的账号密码配置文件

    3. 配置,新增配置文件/etc/sery.pass

vicxiang:123456

         修改文件权限
         chmod 600 /etc/sery.pass

    4. 启动rsync服务
       rsync --daemon --config=/etc/rsyncd.conf

    5. 防火墙设置,端口需要开放tcp 873

二.客户端(文件同步到的目的机器)
    1. 配置密码文件/etc/sery_client.pass

123456

            修改文件权限
            chmod 600 /etc/sery_client.pass
    2. 同步命令
            rsync -avr -P  vicxiang@192.168.217.128::data /usr/local/src/ --password-file=/etc/sery_client.pass
            其中vicxiang是同步时使用的用户名;
            192.168.217.128是服务端IP;
            data是服务端配置的数据目录别名;
             /usr/local/src/是同步到本机的目录;
             /etc/sery_client.pass是配置密码文件

三.配合crontab定时同步 
        编写脚本rsync.sh

log_file=rsync.log

function sync(){
ip=${1}
path=${2}
t=date +%Y%m%d-%H%M%S
echo "${t} start to sync data from ${ip}…" >> ${log_file}
rsync -avr -P vicxiang@${ip}::data ${path} –password-file=/etc/sery_client.pass
echo "done" >> ${log_file}
}

sync ip path

原创文章,作者:kepupublish,如若转载,请注明出处:https://blog.ytso.com/182835.html

(0)
上一篇 2021年11月1日
下一篇 2021年11月1日

相关推荐

发表回复

登录后才能评论