Повышение производительности с помощью инструментов inotify и унисон.

Я использую inotify-tools а также unison синхронизировать папки между машинами. Поскольку у меня есть большая папка для синхронизации, я просто пишу inotifywait скрипт для выполнения работы автоматически. Разумно ли inotifywait контролировать подкаталоги большой папки, чтобы получить лучшую производительность?

1 ответ

Решение

Вы должны получить лучшую производительность, если вы бросите inotify-tools и просто используйте встроенную поддержку Unison для отслеживания изменений в ваших папках. Используя inotify-tools а потом звонит unison когда происходит изменение, unison должензаново найти изменения, прежде чем они синхронизируются. Вы могли бы вместо этого добавить строку repeat = watch в ваш унисон профиль и unison будет работать постоянно и синхронизироваться всякий раз, когда есть изменения. Он обнаруживает изменение с помощью своей собственной утилиты наблюдения за файлами unison-fsmonitor который общается напрямую с унисон.

Для получения дополнительной информации ознакомьтесь с последним журналом изменений для Unison 2.48.3 с основными изменениями в unison-fsmonitor,

В unison-fsmonitor до сих пор не предоставляется пакетом ubuntu:

Если вы хотите быстро на месте


UNISON_VERSION=2.51.2
echo "Install Unison." \
    && apt install wget ocaml
    && pushd /tmp \
    && wget https://github.com/bcpierce00/unison/archive/v$UNISON_VERSION.tar.gz \
    && tar -xzvf v$UNISON_VERSION.tar.gz \
    && rm v$UNISON_VERSION.tar.gz \
    && pushd unison-$UNISON_VERSION \
    && make \
    && cp -t /usr/local/bin ./src/unison ./src/unison-fsmonitor \
    && popd \
    && rm -rf unison-$UNISON_VERSION \
    && popd
Другие вопросы по тегам