lsyncd 和 rsync 的附加参数

lsyncd 和 rsync 的附加参数

目前我使用 lsyncd 来监视数据并同步它们(同一台机器)

 settings{
    logfile      = "/var/log/lsyncd/lsyncd.log",
    statusFile   = "/var/log/lsyncd/lsyncd_status.log",
    maxDelays    = 10,
    maxProcesses = 15,
 }

sync{
default.rsync,
source="/home/user/data/source_data/",
target="/home/user/data/synced_data/",
delete=false,
rsyncOpts={
"--remove-source-files",
"--delay-updates",
"--checksum"
}
}

问题是我无法传递 rsync 的这些参数(删除源文件、延迟更新和校验和)

我使用 lsyncd 2.1.4

这是错误:

Starting lsyncd: Error: error preparing /etc/lsyncd.conf: Parameter "rsyncOpts" unknown. (if this is not a typo add it to checkgauge)

答案1

信息基于2.1.x 版本的文档。基于此,您的同步部分应如下所示:

sync{
    default.rsync,
    source="/home/user/data/source_data/",
    target="/home/user/data/synced_data/",
    delete=false,
    rsync={
        checksum = true,
        _extra = { "--remove-source-files", "--delay-updates" }
        }
    }

我假设您知道这个额外的 rsync 参数的作用。尤其--remove-source-files

lsyncd此 _extra参数基于rsync.如果有效的话你应该亲自尝试一下。

答案2

rsyncOpts 不是有效的指令。

应该是这样的:-

rsync     = {
                links = true,
                archive  = true,
                delete = false,
                compress = true,
                verbose = true,
                _extra   = {"--omit-dir-times","-e ssh -i /root/lsync/source_rsa","--progress"}
            }

相关内容