Lsyncd 排除文件或文件夹不起作用

Lsyncd 排除文件或文件夹不起作用

我使用 lsyncd 在主服务器和从服务器之间进行实时同步,并且我想将 .htaccess 和 git 文件等文件排除到从服务器。我的配置如下:

同步 {

默认.rsync,

源=“/home/test/”,

目标="202.63.240.146:/home/test",

excludeFrom="/home/test/public_html/.htaccess",

rsync = {archive = true,perms = true,owner = true,_extra = {“ -a”},rsh =“/usr/bin/ssh -l root -i /root/.ssh/id_rsa”,}

}

但似乎不起作用。有人可以纠正我的配置吗?我的 lsyncd 版本是 2.2。

答案1

excludeFrom=需要一个包含要排除的文件/目录的简单列表的文件。您似乎想要排除 .htaccess 文件,在这种情况下您需要exclude = { '.htaccess' }。请参阅lsyncd 手册

顺便说一句,你_extra={'-a'}可能不是你想要的。-a相当于-rlptgoD请参阅 rsync 手册页)。这些选项的 lsyncd 默认值为

  • [-r]recurse = true
  • [-l]links = true
  • [-t]times = true
  • [-p]perms = false
  • [-G]group = false
  • [-o]owner = false
  • [ -D/ --devices] <= lsyncd 不支持

由于您已经覆盖了perms// ,因此您的group实际上相当于。[=在目的地重新创建字符和块设备]owner-a--device

相关内容