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 .