lsyncd-当源是共享文件夹时立即同步

lsyncd-当源是共享文件夹时立即同步

我有一个 Ubuntu 12.10 客户机,它在 Windows 7 主机上的 VMware Workstation 中运行。

我创建了一个共享文件夹,以便 Ubuntu 可以看到我的 Windows 7 主机上的文件夹。然后我将其设置为每次 Ubuntu 启动时,共享文件夹都会挂载在 下/files

到目前为止,一切运行良好。但是,我创建了第二个文件夹,名为 ,/files2并希望将其用于lsyncd同步/files/files2

  • lsyncd 是使用 安装的sudo apt-get install lsyncd
  • 安装后,我创建了/etc/lsyncd/lsyncd.conf.lua

这是我的配置文件(etc/lsyncd/lsyncd.conf.lua

sync {
    default.rsync,
    source    = "/www",
    target    = "/www2",
    rsyncOpts = "-ltuspogX",
    delay=0
}

问题是同步似乎永远不会发生,即使我重新启动或启动/停止lsyncd

最后,如果我在主机(Windows 7)上的共享文件夹中创建一个文件,我可以在中看到它/files,但它永远不会同步到/files2

当我在 Ubuntu 客户机或 Windows 中lsyncd创建/修改/删除文件夹时,我需要进行同步。/files

我的配置中是否遗漏了任何内容,导致同步无法进行?

答案1

rsyncOpts已弃用,您需要使用rsync {}lua 配置文件中的结构

此链接应该有帮助:https://github.com/axkibe/lsyncd/wiki/Lsyncd%202.1.x%20%E2%80%96%20Layer%204%20Config%20%E2%80%96%20Default%20Behavior

查看“default.rsync”部分,那里有一些示例代码,下面是可用的 rsync 选项列表。

答案2

尝试此配置

settings {
    logfile = "/var/log/lsyncd.log",
    statusFile = "/var/log/lsyncd-status.log",
    statusInterval = 20,
    nodaemon = true
}
sync {
   default.rsync,
   source="/files1/",
   target="/files2/",
   rsync = {
     archive = true,
     compress = true,
     whole_file = false,
     _extra = { "-ltuspogX" },
     verbose = true
   },
   delay=5,
   log=all,
}

相关内容