У меня есть две машины Ubuntu, ноутбук и рабочий стол. Я хочу создать папку на обеих машинах с путями path1 и path2. Я хочу настроить синхронизацию между двумя папками, когда они подключены к одной локальной сети (рабочий стол через Ethernet и ноутбук через WLAN). Так, например, если я создаю файл path1 / x, он также появится в path2 как path2 / x.
Есть ли способ, которым я могу сделать это? [Это нормально, если синхронизация удаления не работает, и я должен вручную удалить файл из обоих каталогов одновременно]
networking
sync
file-sharing
shared-folders
аксолотль
источник
источник
Ответы:
[Отвечая на мой собственный вопрос, когда я нашел хороший способ сделать это]
Используйте
unison
инструмент, разработанный Бенджамином Пирсом в U Penn.Допустим, у вас есть два каталога,
/home/user/Documents/dirA/
и/home/user/Documents/dirB/
Для синхронизации этих двух вы можете использовать:
~ $
unison -ui text /home/user/Documents/dirA/ /home/user/Documents/dirB/
В выходных данных
unison
будет отображаться каждый каталог и файл, которые отличаются в двух каталогах, которые вы просили синхронизировать. Она будет рекомендовать аддитивно синхронизировать (повторность отсутствует файл в обоих местах) на начальный период, а затем создать и поддерживать дерево синхронизации на вашем компьютере, так и на последующих запусках он будет осуществлять истинную синхронизации (то есть, если вы удалите файл.../dirA
, его также будут удалены из.../dirB
. Вы также можете сравнить каждое изменение и, при желании, выбрать прямую или обратную синхронизацию между двумя каталогами.При желании, чтобы запустить графический интерфейс, просто удалите
-ui text
опцию из вашей команды, хотя я считаю, чтоcli
проще и быстрее в использовании.Подробнее об этом: учебник по Unison в пользовательской документации Unison .
источник
Ознакомьтесь с этим руководством, как синхронизировать папки с помощью rsync .
ура
источник