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 обрабатывает это как "исключить /", и тогда все исключается.