设为首页 收藏本站
查看: 197|回复: 0

[经验分享] rsync+inotify

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2016-5-9 09:25:19 | 显示全部楼层 |阅读模式
                      一、环境
    192.168.10.2上的/data目录下的数据要同步备份到192.168.10.5上/data

二、部署
1、192.168.10.5
    1)、安装rsync并配置
    yum -y install rsync


    vim /etc/xinetd.d/rsync
    service rsync
    {
            disable = no
            flags           = IPv6
            socket_type     = stream
            wait            = no
            user            = root
            server          = /usr/bin/rsync
            server_args     = --daemon
            log_on_failure  += USERID
    }

    vim  /etc/rsync/rsyncd.conf
    uid = root
    gid = root
    use chroot = false
    read only = false
    hosts allow=192.168.10.0/255.255.255.0
    hosts deny=*
    max connections = 8
    pid file = /var/run/rsyncd.pid
    lock file = /var/run/rsync.lock
    log file = /var/log/rsync.log
    transfer logging = yes
    log format = %t %a %m %f %b
    syslog facility = daemon

    timeout = 20
    [data]
    path = /data
    list=no
    comment = backup_data
    auth users = backup
    secrets file = /etc/rsync/rsyncd.passwd
    strict modes = true
    ignore errors = true

    2)、配置密码文件

    echo "backup:backup@123" > /etc/rsync/rsyncd.passwd
    chmod 600 /etc/rsync/rsyncd.passwd

    3)、启动rsync服务

    usr/bin/rsync --daemon --config=/etc/rsync/rsyncd.conf

2、192.168.10.2 配置
    1)、inotify安装
    tar xf inotify-tools-3.14.tar.gz
    cd inotify-tools-3.14
    ./configure --prefix=/usr/local/services/inotify-3.14
    make && make install
    cd /usr/local/services
    ln -sf inotify-3.14 inotify

    2)、监控脚本
    vim inotify.sh
    #!/bin/bash
    host=192.168.10.5  #备份主机ip
    src=/data/        #本地监控目录
    dst=data         #备份主机上rsync的模板
    user=backup      #备份主机的rsync服务的虚拟用户
    rsync_passfile=/usr/local/services/rsyncd.passwd   #本地调用rsync服务的密码文件(只有密码)
    inotify_home=/usr/local/services/inotify    #inotify的安装目录

    if [ ! -e "$src" ] || [ ! -e "${rsync_passfile}" ] \
        || [ ! -e "${inotify_home}/bin/inotifywait" ] || [ ! -e "/usr/bin/rsync" ];then
        echo "Check File and Folder"
    exit 9
    fi
    ${inotify_home}/bin/inotifywait -mrq --timefmt '%y/%m/%d %H:%M' --format '%T %w%f' -e modify,attrib,moved_to,move,create,delete,unmount,close_write,moved_from,delete_self $src \
| while read file
do
    cd $src && rsync -aruz -R --delete ./  --timeout=5  $user@$host::$dst --password-file=${rsync_passfile} >/dev/null 2>&1
    done
    exit 0

    3)、配置密码文件
    echo "backup@123" > /usr/local/services/rsyncd.passwd
    chmod 600 /usr/local/services/rsyncd.passwd

    4)、后台运行脚本
    /usr/local/services/inotify.sh &
                   


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.iyunv.com/thread-214494-1-1.html 上篇帖子: linux双网卡绑定+单网卡多IP绑定 下篇帖子: centos ffmpeg 加水印
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表