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
Эта настройка, кажется, не работает.
3 ответа
Я думаю, excludeFrom DIR относительно source реж; Таким образом, excludeFrom="/robots.txt" может работать.
РЕДАКТИРОВАТЬ: Боже мой, забудь, что я написал выше. excludeFrom является параметром rsync, который указывает текстовый файл, содержащий список исключаемых файлов, по одному файлу или шаблону на строку. Так что ваши excludeFrom должен содержать путь к файлу, который затем содержит это /var/www/html/blog/robots.txt или же /robots.txt,
Использование rsync"s --exclude директива в lsyncdпараметр конфигурации rsyncOpts, или же _extra, в зависимости от lsyncd версия, которую вы используете.
По https://axkibe.github.io/lsyncd/manual/config/layer4/:
excludeFrom - параметр FILENAME, загружает правила исключения из этого файла, по правилам на строку
обратите внимание, что https://community.rackspace.com/general/f/34/t/3503:
ВНИМАНИЕ! При использовании excludeFrom и файла убедитесь, что в нем нет пустых строк. Если это так, lsyncd обрабатывает это как "исключить /", и тогда все исключается.