2

Возможный дубликат:
Лучший способ синхронизации двух компьютеров?

Я хотел бы иметь возможность синхронизировать файлы на моих компьютерах (Ubuntu, Windows XP и Windows 7). В идеале моей семье было бы достаточно легко пользоваться. Реальная синхронизация (не только общая папка) важна для того, чтобы мой брат мог получать доступ к файлам на своем ноутбуке, куда бы он ни шел.

К сожалению, у меня довольно ограниченный лимит загрузки / выгрузки через Интернет, и поэтому я не хочу проверять использование синхронизации. Их в любом случае синхронизировать только по локальной сети?

5 ответов5

2

rsync может сделать это, и он (или порт) доступен для всех перечисленных вами платформ.

  • Windows XP и Windows 7 могут использовать cwRsync
  • Ubuntu поставляется с предустановленным rsync, если по какой-то причине его нет, на этой странице есть ссылки, которые помогут вам с его установкой и зависимостями.

Так как вы хотите, чтобы это было легко для других, я бы предложил просто создавать общие ресурсы и синхронизировать запланированные задания с интервалом по вашему выбору (Запланированные задачи в Windows, Cron в Ubuntu Linux), чтобы этот процесс был невидим для ваших пользователей. Вы можете использовать cp с ключом -u в Ubuntu для копирования только новых и несуществующих файлов. В Windows вы можете использовать XCOPY с переключателями /E /I /H /Y и /Z Примеры:

для Ubuntu:

cp -u /home/john/stuff/* //Winshare/somefolder

и для Windows (пакетно, вы, вероятно, захотите, чтобы это запустилось скрытно, чтобы проверить этот вопрос):

XCOPY /E /I /H /Y /Z C:\Source D:\Ubuntu\Dest

Для этого вам понадобится Samba, установленная в Ubuntu, и вам понадобится сделать общий доступ на компьютерах с Windows. Кроме того, из-за того, что ноутбук вашего брата иногда перемещается, вам понадобится способ (вы могли бы написать небольшой скрипт), чтобы удалить запись cron, которую он должен будет запустить, прежде чем переместить свой ноутбук. Что-то простое, например, crontab -r подойдет для скрипта с именем disconnect.sh reconnect.sh может быть crontab /path/to/premadetab.txt . В premadetab.txt будет просто ваша запись, указывающая, как часто синхронизировать. Если вы не знакомы с cron, вы можете использовать генератор crontab .

2

Как описано в этом ответе, последняя экспериментальная сборка Dropbox позволяет синхронизировать локальную сеть, чтобы сохранить некоторую пропускную способность.

1

если это внутри локальной сети, почему бы не создать папку smb на одной из систем и использовать ее? Если вам действительно нужно, вы можете использовать различные нативные инструменты для хранения локальной копии, но для меня это звучит проще всего.

0

Разрешите всем вашим компьютерам принимать входящие FTP-соединения, оставьте его заблокированным в маршрутизаторе из Интернета или, если вы не защитите свой компьютер, оставьте его открытым, и вы можете подключиться с помощью DyneDNS. Но локально, установите synctoy на компьютере с Windows, который остается дома.

0

Я бы, вероятно, сам использовал rsync, но здесь должен быть хотя бы один ответ с рекомендацией Unison.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .