Pull to refresh

Делаем backup Google или паранойя по поводу санкций. Owncloud и другие открытые решения

Configuring Linux *Backup *
Tutorial


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

Для начала давайте подумаем, что является наиболее ценным для большинства пользователей сервисов Google? В первую очередь, это личный контент, который хранится в облаке, почта и другие материалы. Во вторую очередь, это сервисы, которым нужно найти замену в кратчайшие сроки. Мы не будем рассматривать нужды профессиональных разработчиков под Android и корпоративные нужды.

Подготовительная работа


Для начала неплохо бы определиться куда мы будем складывать эти данные и во что нам это обойдется? Есть два основных подхода — взять всю инфраструктуру на себя и получить разовые расходы на железо или арендовать в облаке чужие мощности под свои нужды. Но так, как мы и так пытаемся избавиться от зависимости от внешних факторов, попробуем рассмотреть вариант полностью своей инфраструктуры.
Итак, наш текущий выбор — домашний сервер с Linux. Не умаляя талантов людей, собирающих сервер из палок, изоленты и китайского утюга, я бы настаивал на классическом x86-64 решении. В этом случае мы будем иметь следующие преимущества:
  • Масштабируемость — легко поменять добавить процессорной мощности, RAM или дискового пространства
  • Совместимость компонентов — не будет проблемы с заменой деталей, вышедших из строя
  • Совместимость софта — под x86-x64 архитектуру значительно проще найти необходимые пакеты, чем под редкий вариант ARM или MIPS.
  • Нет ограничений по пропускной способности SATA и LAN-интерфейсов, характерных для многих компактных ARM-платформ

С концепцией определились. Так как мы хотим легкого расширения компонентов, то разного рода mini-ITX формфакторы тоже не совсем укладываются в концепцию. Для себя я выбрал стандартный PC в корпусе BitPhenix Prodigy:

image

Также считаю крайне удачной серию HP Microserver Gen8, которая отличается компактностью, симпатичным внешним видом и возможностью замены процессора в рамках теплового пакета.

image

Цена обоих решений в районе 20 000 рублей. Немало, но домашний сервер может выполнять очень много различных функций. Чтобы не перегружать статью, будем считать, что железо у нас уже есть, а на его базе стоит Debian Wheezy или любой другой стабильный дистрибутив по вкусу.

Поднимаем Owncloud




Почему именно owncloud? Этот софт относится к открытому ПО и уже достаточно стабилен для повседневного использования. Есть клиенты под любые платформы, включая мобильные. Главный девиз проекта — веб-сервисы под вашим управлением. Это очень многофункциональный инструмент, который совмещает в себе серверную и клиентские части по типу Dropbox, календари, контакты, совместное редактирование документов, галереи фото и много чего еще. Если вам чего-то не хватает — к вашим услугам огромный ворох плагинов, которые, впрочем, часто не отличаются стабильностью.

Развертывание owncloud весьма несложно.

Ubuntu 14.04 и его форки
wget http://download.opensuse.org/repositories/isv:ownCloud:community/xUbuntu_14.04/Release.key
sudo apt-key add - < Release.key  
sudo sh -c "echo 'deb http://download.opensuse.org/repositories/isv:/ownCloud:/community/xUbuntu_14.04/ /' >> /etc/apt/sources.list.d/owncloud.list"
sudo apt-get update
sudo apt-get install owncloud

Debian stable
wget http://download.opensuse.org/repositories/isv:ownCloud:community/Debian_7.0/Release.key
apt-key add - < Release.key 
echo 'deb http://download.opensuse.org/repositories/isv:/ownCloud:/community/Debian_7.0/ /' >> /etc/apt/sources.list.d/owncloud.list 
apt-get update
apt-get install owncloud


Первичная настройка также не отличается сложностью. Сам owncloud базируется на PHP, нужные версии подтягиваются по зависимостям без проблем. Настройка Apache также не отличается особенностями. Подробнее можно почитать в разделе конфигурирование официального мануала. Основные грабли там описаны. Крайне желательно завести нормальный домен у недорогого регистратора и оформить себе ssl-сертификат, например, у StartSSL или сгенерировать его самостоятельно, но тогда понадобится добавлять сертификат на клиентских машинах.

Основные сервисы


Хорошо, сервер мы подняли, доступ снаружи есть. Что дальше? Рассмотрим основные возможности веб-интерфейса:



В новом интерфейсе меню выбора теперь скрывается за компактной кнопкой в верхнем левом углу. Рассмотрим основную часть возможностей.



Раздел файлы — здесь отображаются ваша структура каталогов.



Крайне удачно реализована система расшаривания файлов и каталогов. Можно сгенерировать публичную ссылку, защитить ее паролем и, при необходимости добавить срок действия. Также можно разрешить upload в данный каталог и возможность выкачать содержимое одним архивом.



Календарь. Классический с разделением на отдельные календари, группами и всеми прочими плюшками.



Контакты. Импорт в стандартных форматах, редактирование. Вроде есть возможность подключить к синхронизации к Android, как и календари вместо Google-сервисов, но я, к сожалению, не пробовал.



Для тех, кому не хватает стандартного функционала — любые плагины, включая шифрование, RSS и прочие.



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

Забираем свои данные




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

Все основные разделы доступны для включения в архив. Стандартный vcard формат с успехом импортируется в любой удобный софт, в частности в тот же owncloud.



Почта выгружается в универсальном формате mbox, который можно скормить тому же Mozilla Thunderbird.

Вместо резюме


Возможно это просто приступ паранойи. Возможно. Но каждый админ знает о важности бэкапов и уменьшении точек потенциального отказа. Всем добра и по галаперидолинке.

UPD
Не забывайте, что сервер становится точкой отказа. Есть несколько вариантов:
1) Забить. Если умрет цетральный сервер, то полные копии файлов останутся на всех клиентах.
2) Добавить RAID для увеличения отказоутстойчивости
3) Географически разнести копии сервера. Либо холодный бэкап через тот же BTSync, либо репликация KVM-контейнера в рамках ProxMox кластера из нескольких машин.
4) Любые другие идеи, которые увеличат отказоустойчивость.
Tags:
Hubs:
Total votes 126: ↑111 and ↓15 +96
Views 106K
Comments Comments 165