Ubuntu使用lsyncd实现远端目录实时同步

Ubuntu使用lsyncd实现远端实时同步配置,用它可以来实时备份重要的目录

实例

gerrit代码服务器有代码更新时,实时同步到gerrit备份服务器:

  1. 200服务器和172.30.50.68代码备份服务器建立ssh信任

    ssh-keygen -t rsa    #200服务器生产密钥
    ssh-copy-id gerrit@172.30.50.60    #copy密钥到备份服务器
    
  2. 安装lsyncd

    sudo apt-get install lsyncd
    
  3. 定义配置文件

    sudo mkdir /etc/lsyncd/
    sudo vim /etc/lsyncd/lsyncd.conf.lua
    

    配置文件具体内容如下:

    settings  {
    
        logfile = "/var/log/lsyncd/lsyncd.log",    #定义日志文件
        statusFile = "/var/log/lsyncd/lsyncd.status",    #定义状态文件
        maxProcesses = 1    #同步进程的最大个数。假如同时有20个文件需要同步,而maxProcesses = 8,则最大能看到有8个rysnc进程
    }
    
    sync {
            default.rsyncssh,    #同步到远程主机目录,rsync的ssh模式,需要使用key来认证
            source = "/data/review_site/git",    #同步的源目录,使用绝对路径
            host = "gerrit@172.30.50.60",
            targetdir = "/home/gerrit/review_site/git",    #定义目标目录
            init = false,    #这是一个优化选项,当init = false,只同步进程启动以后发生改动事件的文件,原有的目录即使有差异也不会同步。默认是true
            delay = 0,
    
    rsync  = {
            binary    = "/usr/bin/rsync",
            archive   = true,
            compress  = true,    #压缩传输默认为true。在带宽与cpu负载之间权衡,本地目录同步可以考虑把它设为false
            verbose   = true
    },
    
     ssh   = {
            port  = 22
             }
    }
    
  4. 启动lsyncd

    /etc/init.d/lsyncd restart
    
  5. 如果数据已同步,但是gerrit备份服务器页面不显示已更新的内容,请重建Gerrit索引。

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值