четверг, 17 февраля 2011 г.

Не совсем обычная синхронизация документов

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

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

Вопрос возник в синхронизации документов между пользователями домашнего компьютера, потому как идея организовать просто общий Dropbox была отметена как неизящное решение, у каждого пользователя должна быть своя учетная запись и своя папка в своих же документах. В такой ситуации, если организовать синхронизацию через доступ к папкам в Dropbox одни и те же документы будут хранится как минимум в двух, а то и в трех местах, что совсем неправильно, потому что место на диске не бесконечно, да и не надо несколько копий одного и того же. Избежать дублирования и организовать красивое и простое решение помогла прекрасная утилита junction от великого Марка Руссиновича - просто создаем два симлинка на папку в "Общих документах "в локальные папки Dropbox пользователей. Создается симлинк следующей командой:

junction -s (Путь к симлинку) (Путь к папке),

более подробно можно прочитать на странице Марка Руссиновича.

Идея решения изображена на схеме (словами получается долго и не очень понятно):



Практически, получается вывернутая наизнанку схема Dropbox - обычно общая точка организовывается в облаке, т.е. в самом сервисе, а в моем случае - на локальной машине. Но - так работает только та папка, на которую организованы симлинки, все остальное работает как обычно.

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

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

Утилита Junction от Марка Руссиновича

Dropbox

4 комментария :

  1. Этот комментарий был удален автором.

    ОтветитьУдалить
  2. Интересная идея с симлинками, друган тож показывал как у него на Suse и Ubuntu через симлинки папка Home синхронизируется а с другими компами через дропбокс. Яб ещё криптование добавил, а то всё таки там пароли хранятся как никак.

    ОтветитьУдалить
  3. Криптование штука довольно интересная, есть несколько схем для реализации, в том числе через веб. Но вопрос в том - что в этом случае надо всегда синхронизировать контейнер полностью, а это довольно долго, да и нет у меня в Dropbox ничего такого сверхсекретного. Еще в этой схеме есть одно слабое место - если изменяется документ в папке, на которую ведут симлинки - то надо рестартануть синхронизацию - иначе не подхватится - симлинки сделаны через junction в Windows XP, в Windows 7 все проще.

    ОтветитьУдалить
  4. Вообще - через Dropbox можно много чего накрутить, ограничение - только собственная фантазия.

    ОтветитьУдалить