Разработчик(и) | Бенджамин Пирс и соавторы |
---|---|
Первоначальный выпуск | 1998 ( 1998 ) | [1]
Стабильный релиз | 2.53.6 [2] / 4 ноября 2024 г.; 5 ноября 2024 г ( 4 ноября 2024 г.; 5 ноября 2024 г. ) |
Репозиторий |
|
Написано в | OCaml |
Операционная система | Linux , MacOS , Windows |
Тип | Синхронизация |
Лицензия | GPLv3 |
Веб-сайт | github.com/bcpierce00/unison |
Unison — это инструмент синхронизации файлов для Windows и различных Unix -подобных систем (включая macOS и Linux ). [3] Он позволяет хранить две реплики набора файлов и каталогов на разных хостах (или на разных дисках на одном хосте), изменять их по отдельности, а затем обновлять путем распространения изменений в каждой реплике на другую. [4] [5] [6] [7] Синхронизация реплик напрямую Unison не зависит от сторонних поставщиков.
Возможности Unison включают обработку изменений файлов на обеих сторонах репликации; конфликты (один и тот же файл изменен на обеих сторонах) отображаются и могут быть разрешены вручную, при желании создавая резервные копии измененных файлов. Unison позволяет синхронизировать через компьютерные сети (LAN, Интернет) путем прямого подключения (сокет) или туннелирования через ssh. [8] При использовании алгоритма rsync необходимо передавать только измененные блоки файлов, что экономит полосу пропускания.
Unison можно вызывать через командную строку с параметрами или управлять через файлы профилей. [9] [10] Его можно выполнять интерактивно или автоматически в пакетном режиме. В пакетном режиме уникальные изменения автоматически синхронизируются. Файлы с конфликтами репликации пропускаются.
После запуска Unison проверяет инвентаризацию файлов по каталогам или компьютерам и сравнивает временные метки файлов. Если он обнаруживает изменения, изменения в соответствующих файлах анализируются более подробно. После этого Unison создает список репликации с предложениями по их синхронизации и отмечает конфликты, которые не могут быть разрешены автоматически.
Существуют версии Unison с графическим интерфейсом для интерактивного использования. Под Windows и Linux они, как правило, основаны на GTK+. Версии с графическим интерфейсом позволяют проще просматривать реплики и предлагаемую синхронизацию. Изменения можно отмечать по отдельности с помощью клавиатуры или мыши, а затем внедрять в пакеты.
По сравнению с rsync, Unison является полностью двунаправленным и позволяет пользователю обнаруживать и разрешать конфликты, когда обе копии файла были изменены с момента последней синхронизации.
До версии 2.52 частой проблемой для пользователей было то, что на обоих компьютерах должна была работать одна и та же версия Unison, скомпилированная с одной и той же версией библиотек OCaml . [11] Это создавало проблемы, поскольку, например, система APT Debian Linux не предоставляла возможности установки произвольно выбранной версии программного обеспечения или версии, скомпилированной с любой желаемой версией библиотек OCaml, если это требуется второй машине, работающей под управлением другой операционной системы или системы упаковки. Это было решено в версии 2.52: и клиент, и сервер могут работать с разными версиями Unison, скомпилированными с разными версиями OCaml, если обе стороны работают как минимум с версией 2.52. Если на одном конце установлена версия 2.48 или 2.51, на другом конце может работать любая версия из 2.52, но версия OCaml должна совпадать. [12]
Unison отличается от Syncthing несколькими способами, главным из которых является то, что Syncthing разработан для постоянной автоматической синхронизации, тогда как Unison разработан для синхронизации, которая запускается и контролируется пользователем. Syncthing является одноранговым, а Unison — нет.
{{cite web}}
: Отсутствует или пусто |title=
( помощь )