Как синхронизировать домашнюю папку между несколькими компьютерами?

Я имею три компьютера дома и хотел бы иметь /home/ дерево папки синхронизируется между тремя.
Любые файлы/папки (кроме скрытых), которые изменяются/добавляются/удаляются в одном из этих трех компьютеров, обновляются в других двух.

rsync достаточно сделать это?еще как?

119
задан 25.08.2011, 01:19

12 ответов

PowerFolder - Синхронизируйте Файлы, Синхронизирующие Папки, Удаленную систему хранения, Резервный и Частный Совместный доступ к файлам. Синхронизация домой и офис ПК, поделитесь праздничными фотографиями или сотрудничайте на документах. Безопасная технология одноранговой связи PowerFolder работает по Интернету или в LAN.

0
ответ дан 07.12.2019, 07:50

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

1
ответ дан 07.12.2019, 07:50

Если Вы также хотите синхронизировать конфигурации - упомянутые выше инструменты полностью беспомощны: конфигурации часто изменяются, и много файлов журнала сделают конфликты, таким образом, они не смогут быть объединены.
Мой deceision прост, и глуп :) У меня есть Основная рабочая станция, и все файлы от "~" просто копируются во второй "Ведомый". Момент я понимаю, что должен изменить что-то - я делаю это на Ведущем устройстве, и Ведомое устройство ловит эти изменения на синхронизации.

Кроме того, некоторые сценарии удара должны работать отличающийся на этих машинах, таким образом, я отредактировал свой/etc/bash.bashrc:

export OOHOST=Master

Теперь, сценарии знают, какому хосту они служат ;)

1
ответ дан 07.12.2019, 07:50

Это не полностью предоставит решение, но оно даст Вам запуск:

Настройте задание крона время от времени к rsync файлы. Я использую команду как следующее:

rsync -alhz --stats --progress --exclude-from '/etc/rsync_backup_excludes.conf' / -e ssh user@10.10.0.1:/path/to/home/

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

- статистика и - прогресс является дополнительным и должен, вероятно, быть исключен из Ваших сценариев

содержание моего rsync_backup_excludes.conf файла:

dev/*
proc/*
lost+found/*
mnt/*
sys/*
4
ответ дан 07.12.2019, 07:50

Ваша основная проблема при попытке сделать это решает, как объединить изменения, распространить, удаляет, и конфликты твердости. Это трудно сделать полностью автоматизированным способом, особенно если у Вас есть 3 компьютерных установки, используемые несколькими людьми.

Если Вы вещи отдельных пользователей становитесь намного более простыми. Поскольку один пользователь не может быть в двух местах сразу (и поэтому генерировать конфликты), Вы могли затем установить rsync задание для работы входа в систему, чтобы "заставить изменения" и выход из системы "продвигать изменения"... в одном из компьютеров, которые будут ведущим устройством... так на этом уровне гранулярности, Вы синхронизировали бы/home/myuser каждый раз, а не весь/home/. Добавленное улучшение (в случае людей, не выходящих из системы), было бы запущено скрипт нажатия после короткого периода неактивности.

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

6
ответ дан 07.12.2019, 07:50

Как насчет поместить Ваши файлы в систему управления версиями как SubVersion или мерзавец?

Я не присваиваю версию своему всему домашнему dir, но только небольшому количеству subdirs с некоторым важным материалом. Но я думаю о преобразовании в мерзавца начиная с него, кажется, лучше для этого типа задания. (быстрый поиск собирается отправить Вас в правильном направлении).

Удачи


Обновление: хороший побочный эффект с мерзавцем состоит в том, что легко иметь компьютер определенные файлы, так как у Вас только должно быть ответвление для того компьютера (и в мерзавце Вы получаете это по умолчанию). Таким образом, у Вас не должно быть точно тех же файлов во всем компьютере, они только должны быть подобными, и иметь общее "основное" ответвление с материалом, который Вы хотите на всех различных компьютерах.

19
ответ дан 07.12.2019, 07:50

Унисон мог бы быть хорошим кандидатом:

Унисон является инструментом синхронизации файлов для Unix и Windows. Это позволяет двум копиям набора файлов и каталогов быть сохраненными на различных хостах (или различных дисках на том же хосте), измененными отдельно и затем осовремененными путем распространения изменений в каждой копии к другому.

Это уже делает синхронизации с 2 путями. Посмотрите, что обновление ревет.

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

Обновление: Да, Унисон может синхронизировать больше чем 2 машины. Из их руководства пользователя:

Использование унисона для синхронизации больше чем Двух машин

Унисон разработан для синхронизации пар копий. Однако возможно использовать его для хранения более многочисленных групп машин в синхронизации путем выполнения нескольких попарных синхронизаций.

Если необходимо сделать это, самый надежный способ настроить вещи состоит в том, чтобы организовать машины в “звездообразную топологию” с одной машиной, определяемой как “концентратор” и остальные, поскольку “спицы”, и с каждым говорили машину, синхронизирующуюся только с концентратором. Большое преимущество звездообразной топологии состоит в том, что она устраняет возможность запутывающих “побочных конфликтов”, являющихся результатом того, что отдельный архив сохраняется Унисоном для каждой пары хостов, которые она синхронизирует.

28
ответ дан 07.12.2019, 07:50

Смотрите на Dropbox http://www.getdropbox.com/ Кросс-платформенная Победа / Linux / Mac

2
ответ дан 07.12.2019, 07:50

Выезд lsyncd

Lsyncd наблюдает локальный интерфейс контроля события деревьев каталогов (inotify или fsevents). Это агрегировало и комбинирует события в течение нескольких секунд и затем порождает одну (или больше) процесс (процессы) для синхронизации изменений. По умолчанию это - rsync. Lsyncd является таким образом легким живым зеркальным решением, которое сравнительно легко установить не требующие новые файловые системы или blockdevices и не препятствует производительности локальной файловой системы.

Rsync+ssh является усовершенствованной конфигурацией действия, которая использует SSH для действия, файл и каталог перемещаются непосредственно в цель вместо того, чтобы ретранслировать место назначения перемещения по проводу.

Мелкомодульная настройка может быть достигнута через файл конфигурации. Конфигурации пользовательского действия могут даже быть записаны с нуля в каскадных слоях в пределах от сценариев оболочки для кодирования записанный в Lua language.layers в пределах от сценариев оболочки для кодирования записанный на языке Lua.

4
ответ дан 07.12.2019, 07:50

Я думаю, что можно достигнуть того, что Вы хотите лучше NFS, монтирующим общую домашнюю папку. Проверьте эту статью http://www.linuxjournal.com/article/4880

5
ответ дан 07.12.2019, 07:50

Я использую SyncTwoFolders для Mac и Syncback для ПК - первый для моих трех макинтошей дома (содержащий ноутбук), и второе для моего ПК на работе. И программа имеет различные резервные и синхронизирующие опции, делающие это бриз, после того как предварительные установки были настроены. Легкий-peasy! Я уверен, что существуют другие версии подобного программного обеспечения, доступного для Linux и Ubuntu.

0
ответ дан 07.12.2019, 07:50

Обходные решения я рассмотрел бы:

  • Dropbox.
    Основные недостатки: это не свободно ни для какого разумного объема данных. Иначе это работает безупречно, по моему скромному мнению,

  • Сервер NAS. Поместите свои файлы на сервер NAS, они стали довольно доступными в последнее время (приблизительно от 150$), и хороший не расходует много энергии. Никакие синхронизирующие проблемы когда-либо.
    Основной недостаток: медленнее, чем локальная копия

0
ответ дан 07.12.2019, 07:50

Теги

Похожие вопросы