лучший инструмент синхронизации

лучший инструмент синхронизации

rsync
zsync
Есть ли другой лучший инструмент синхронизации/резервного копирования, доступный на Linux? У меня есть локальная установка моего сайта, вики. Я хочу внести изменения в мой локальный сайт, а затем просто хочу нажать кнопку :D или запустить команду над папкой, она должна проверить разницу между моими локальными файлами и файлами на живом сайте и сделать необходимое в нужном мне направлении.
Вот почему filezilla/cuteFTP не подойдет, так как они не выполняют никакой разницы, будут очень неэффективно просто заменять всю папку. Было бы здорово, если бы был какой-либо интерфейс, доступный для rsync/zsync. Предпочтительно zsync в качестве сайта, он настроен для http-передач.

решение1

SiteCopyможет быть решением. Это сработало для меня в похожей ситуации. К сожалению, у него нет графического интерфейса, но было бы достаточно просто создать ярлык для его запуска.

решение2

Похоже, вы хотите использовать инструмент управления версиями, например svn/Subversion или gitвместо rsync. Он идеально подходит для ваших нужд, плюс есть возможность отката, если редактирование что-то испортит.

Взгляните наДомашняя страница Subersionи/илиgit КАК.

решение3

Вики, как правило, имеют встроенный контроль версий, и многие из них основаны на файлах (а не хранятся в базе данных), поэтому rsync должен работать отлично. Я знаю людей, которые делают это для 'TWiki' для репликации своих установок на несколько серверов.

Возможно, у вас есть доступ только по протоколу «ftp» к файлам wiki? Вы можете рассмотреть вариант использования «wget» для извлечения данных с ftp (а не с http-интерфейса) с установленными флагами рекурсии (-r) и временной метки (-N), чтобы передавать только «более новые» файлы (что не совсем соответствует diff).

Как только у вас появится «копия» того, что находится на ftp-сервере, вы как-то отметите время обновления (часто просто «касанием» определенного файла маркера). Затем вы отредактируете обычным образом через локальную установку того же вики, затем используете «find $dir --newer touchmarkerfile», чтобы идентифицировать обновления для ftp и передать их через скрипт вокруг инструмента доставки ftp.

Я уже использовал подобное решение раньше (хотя у меня было преимущество в виде возможности отправлять изменения обратно на главный сервер через «wget»), поэтому я снова применил подход с рекурсивной отметкой времени.

Оглядываясь назад, если бы у меня был доступ по протоколу «ssh» (а у меня его не было), я бы просто использовал «rsync -globtru[n]cv», чтобы просто извлечь (или отправить) файлы в каждом направлении.

решение4

Я не вижу, в каком формате данных находится ваша вики. Если вы используете бэкэнд базы данных, вы, вероятно, можете обойтись какой-то репликацией. MySQL и PostgreSQL поддерживают это из коробки, как и другие.

Связанный контент