Lsyncd 2.0.4:从同步中排除文件

Lsyncd 2.0.4:从同步中排除文件

我想阻止我的 robots.txt 文件同步到前端服务器。这是我的 /etc/lsyncd.conf 文件:

settings = {
        logfile    = "/tmp/lsyncd.log",
        statusFile = "/tmp/lsyncd.stat",
        statusInterval = 1,
}
sync{
        default.rsync,
        source="/var/www/html/blog",
        target="sync:/var/www/html/blog",
        rsyncOpts="-ltus",
        excludeFrom="/var/www/html/blog/robots.txt",
}

/tmp/lsyncd.log 告诉

Normal: recursive startup rsync: /var/www/html/blog/ -> sync:/var/www/html/blog/ excluding
HELLO WORLD
Normal: Startup of '/var/www/html/blog/' finished.
Normal: Calling rsync with filter-list of new/modified files/dirs
/robots.txt
/
Normal: Finished a list = 0

这个设置好像不起作用。

答案1

我猜测excludeFromdir 与 dir 是相关的source;因此,excludeFrom="/robots.txt"可能会起作用。

编辑:天哪,忘记我上面写了什么了。excludeFrom是一个 rsync 参数,它指定一个文本文件,其中包含要排除的文件列表,每行一个文件或模式。因此,您excludeFrom应该包含一个文件的路径,然后该文件包含这个/var/www/html/blog/robots.txt/robots.txt

答案2

在的配置参数中使用rsync的指令,或者,取决于您使用的版本。--excludelsyncdrsyncOpts_extralsyncd

答案3

https://axkibe.github.io/lsyncd/manual/config/layer4/

excludeFrom 是 FILENAME 参数,从此文件加载排除规则,每行一条规则

注意https://community.rackspace.com/general/f/34/t/3503

警告!使用 excludeFrom 和文件时,请确保文件中没有空行。如果是,lsyncd 会将其视为“排除 /”,然后所有内容都会被排除。

相关内容