Звездная топология в Unison с выборочной двунаправленной синхронизацией?

Допустим, у меня есть сервер, на котором я хотел бы хранить свой центральный репозиторий Unison, и у меня есть две машины с каталогами Documents а также .config на каждой. Я хотел бы синхронизировать Documents а также .config на сервер, но только Documents должны быть синхронизированы между обеими клиентскими машинами. Таким образом, на сервере должно быть три каталога,Documents, .config_machine1, .config_machine2, где Documents является общим для двух клиентских машин, и каждый .config Конкретно два каждой клиентской машины. Это возможно в унисон?

2 ответа

Решение

Вы можете запустить два разных профиля Unison на каждой машине. Итак, на вашем сервере ваши файлы будут выглядеть примерно так

Unison
 \_Common
 |  \_Documents
 \_Machine1
 |  \_.config
 \_Machine2
    \_.config

а затем на каждой машине у вас будет два разных профиля Unison, common.prf синхронизировать папку "Документы" и specific.prf синхронизировать эту машину .config папка.

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


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

Unison
 \_Documents
 \_.config_machine1
 \_.config_machine2

и затем на каждом клиентском компьютере вы можете переименовать .config папка для .config_machine1 и создать символическую ссылку с именем .config в .config_machine1,

cp /path/to/the/dotconfig/folder
mv .config .config_machine1
cd /tmp
ln -sd /full/path/to/.config_machine1 
mv .config_machine1 /path/to/the/dotconfig/folder/.config 

Тогда у вас есть каждая машина синхронизировать свою Documents папка и своя .config_machine${i} папка. И с символическими ссылками, когда программа на вашем компьютере идет искать свои настройки в .config папка, она будет связана с .config_machine${i},

Другие вопросы по тегам