Сервер в кармане, или просто о сложном!

главная - Статьи - Разное



Синхронизация избранного с помощью Dropbox

Дата обновления: 17.03.2020

Теги: Резервное копирование

Dropbox для синхронизации данных

Вступление

Я в большой степени не сторонник всего "самого-самого". Один из последних среди друзей стал использовать кредитки в интернете, один из последних стал поглядывать во вконтакт и все такое. Поэтому многочисленные социальные сервисы хранения закладок и прочие online фишки проходят до поры до времени мимо меня. Поэтому в этой статейке речь не пойдет о том, например, как прикрутить Google Bookmarks куда-либо. Мы будем делать примитивно и просто: синхронизировать содержимое папки (или файла) избранного. Для примера возьмем Internet Explorer и Windows 7.

Задача: иметь дома и на работе одинаковое избранное, при этом ничего не копируя (например, на флешку или еще куда-либо). Синхронизировать избранное мы будем с помощью Dropbox в качестве online-хранилища и:

  1. Символьной ссылки (команда mklink в Windows)
  2. Allway Sync в качестве простой и без выкрутасов программы синхронизации файлов.

Теория

Dropbox

Для тех, кто не в курсе - Dropbox это веб-сервис, бесплатно предоставляющий 2 Гб для хранения файлов. Сейчас 2 Гб это уже не так и много, но для большинства нужных файлов этого достаточно - я имею ввиду текстовые документы по работе, избранное и пр. не-видео контент. На Dropbox-е можно оплачивать 50 Гб и более, но это уже стоит от $10/месяц.

Работа с Dropbox проста - устанавливаете программу-клиент (есть версии для Windows, Mac и Linux), вводите свой логин/пароль (если их нет, регистрируетесь). Программа спросит вас, какую папку использовать для синхронизации. Все. В дальнейшем просто копируете файлы в эту папку и они доступны для доступа с другого компьютера. Причем есть режим для разрешения доступа к файлам (в папке Public) любому пользователю Интернет (дальше параноикам можно НЕ ЧИТАТЬ!). В общем, все просто. Осталось только мелочь - периодически обновлять содержимое папки Dropbox свежими версиями файлов. Например, если вы хотите иметь общее избранное на нескольких компьютерах, вам надо будет вручную копировать избранное в папку синхронизации Dropbox-а. Как правило, вы будете вспоминать об этом сразу после нажатия кнопки завершения работы на рабочем компьютере в 18:05, т.е. домой вы едете устаревшим.

 Предположим, что вы скачали версию для Windows и установили в каталог C:SyncDataDropbox.

Символьные ссылки

Символьная ссылка (также симлинк от англ. Symbolic link, символическая ссылка) — специальный файл в UNIX-подобных операционных системах, для которого в файловой системе не хранится никакой информации, кроме одной текстовой строки. Эта строка трактуется как путь к файлу, который должен быть открыт при попытке обратиться к данной ссылке. Символьная ссылка занимает ровно столько места на файловой системе, сколько требуется для записи её содержимого (нормальный файл занимает как минимум один блок раздела).

Целью ссылки может быть любой объект — например, другая ссылка, или даже несуществующий файл (в последнем случае при попытке открыть его должно выдаваться сообщение об отсутствии файла). Ссылка, указывающая на несуществующий файл, называется висячей.

Практически символьные ссылки используются для более удобной организации структуры файлов на компьютере, так как позволяют одному файлу или каталогу иметь несколько имён и свободны от некоторых ограничений, присущих жёстким ссылкам (последние действуют только в пределах одного раздела и не могут ссылаться на каталоги).

Символьные ссылки в Windows, в отличие от жестких ссылок, могут указывать на файлы и директории в других томах.

Виды символьных ссылок в Windows:

  • Символьные связи (junction points) — доступна с Windows 2000 (файловая система NTFS 5). Может указывать только на директории.
    Команда — linkd (Microsoft Windows Resource Kit)
  • Символическая ссылка (symbolic links) — доступна с Windows Vista. Может указывать и на файлы, и на директории.
    Команда — mklink

Вот с командой mklink мы и будем работать. Запуск команды возможен с правами администратора. Запуск команды без параметров даст следующий вывод:

Создание символической ссылки.
 
MKLINK [[/D] | [/H] | [/J]] Ссылка Назначение
 
	/D		Создание символической ссылки на каталог.
			По умолчанию создается символическая ссылка на файл.
	/H		Создание жесткой связи вместо символической ссылки.
	/J		Создание соединения для каталога.
	Ссылка		Имя новой символической ссылки.
	Назначение	Путь (относительный или абсолютный), на который ссылается новая ссылка.

Нас будет интересовать режим /D - создание символической ссылки на каталог.

Обратите внимание на то, что если имя новой символьной ссылки в команде mklink совпадет с уже существующей папкой на диске, то команда не будет выполнена. Т.е. если у нас есть папка d:folder1, который мы хотим залинковать в папку c:copy, то если у нас уже есть папка c:copy, команда не выполнится! В таком случае нам надо удалить папку c:copy (или переместить ее в другое место), выполнить команду "mklink /D c:copy d:folder1" и после этого перенести содержимое старой папки c:copy в созданную символьную ссылку c:copy. Звучит трудновато, но как только начнете работать с mklink, сразу поймете!

1. Автоматическая синхронизация с помощью символьных ссылок

Важно: метод скорее напоминает костыли в 21 веке - ознакомтесь с комментариями.

Наша задача состоит в том, чтобы при создании/удалении записи в папке "Избранное" на вашем рабочем компьютере эти изменения сразу же отображались бы в Dropbox.

Для начала давайте примем политическое решение: создадим в папке Избранное папку Местное. В эту папку мы будем помещать те ссылки, которые не предназначены для синхронизации. Далее с помощью команды mklink создадим в папке Избранное символьную ссылку с именем Синхронизировать, в которую будем сохранять только те ссылки, которые будут нас приследовать дома и на работе. OK, поехали.

Запускаем cmd. Если вы не администратор, выполняем команду:

runas /user:administrator cmd

Вводим пароль администратора, в новом окне cmd от имени администратора выполняем команду:

C:Windowssystem32>
mklink /D C:UsersUserNameFavoritesСинхронизировать C:SyncDataDropboxСинхронизированноеИзбранное

где:

  • /D - режим создания символьной ссылки,
  • C:SyncDataDropboxСинхронизированноеИзбранное - имя папки, которую Dropbox будет синхронизировать с сервером Amazon (где, собственно, Dropbox и хранит все, что мы ему отдаем),
  • C:UsersUserNameFavoritesСинхронизировать - символьная ссылка (а по-простому, ярлык-папка), в которую мы будем сохранять все ссылки, которые хотим увидеть на другом компьютере.

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

2. Автоматическая синхронизация с помощью бесплатных программ

Тоже своего рода "костыль" :) Да, не элегантно, не модно. Но - работает.

Например, с помощью Allway Sync. Фактически, просто создаем задачу синхронизации двух каталогов: папки Избранное на компьютере и папки СинхронизированноеИзбранное в Dropbox. Сейчас раздел в разработке (хотя что там разрабатывать? Просто словосочетание красивое) - надо сделать скриншот :) Собственно, все.

В использовании Dropbox есть плюс в том, что им и так часто кто пользуется, а так мы просто немного расширяем его область применения.



Авторизуйтесь для добавления комментариев!


    забыли пароль?    новый пользователь?