12 лет назад 16 августа 2012 в 0:49 1841

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

Доступ к такому импровизированному хранилищу легко было получить с любого подключенного к интернету компьютера. Никаких почтовых программ, только браузер – и вуаля, файл скачан. Было это еще до того, как слово «облачный» вошло в жизнь простого юзера. Короткое и понятное определение «облачного» хранения данных есть в «Википедии»: «модель онлайн-хранилища, в котором данные хранятся на многочисленных распределенных в сети серверах, предоставляемых в пользование клиентам, в основном третьей стороной».

Самым кардинальным отличием этих сервисов от, например, изобретенных еще в доисторическую эпоху FTP-серверов является прозрачность и незаметность для конечного пользователя. На компьютере выделяется папка, куда складываются все файлы, к которым нужно иметь доступ. В дальнейшем вы просто редактируете эти файлы (текстовые, графические или любые другие), а резидентная программа-клиент, постоянно находящаяся в памяти, сама заметит, что файл изменился, и закачает его в «облако».

Садясь за другую машину, вы либо устанавливаете на нее клиент, который заберет с сервера ваши данные, либо через браузер получаете необходимые файлы. Количество таких «точек синхронизации» ограничивается только тарифным планом, а иногда вообще никак не лимитируется.

Почувствовав невероятную перспективность рынка, открывать свои сервисы кинулись многие компании. Те, кто успел предоставить сервис одними из первых, получили и разделили большую его часть, оставив конкурентов далеко позади. Среди «грандов» нельзя не упомянуть Box.net, Dropbox, Windows Live SkyDrive. Менее раскрученные – SpiderOak, SugarSync, Bitcasa, Syncplicity. Интернет-гиганты тоже не могли остаться в стороне.

Кроме упомянутого сервиса от Microsoft общественность ждала Google Drive и гадала о том, какими плюшками компания будет завлекать людей. Но совершенно неожиданно «Яндекс» представил свой «Яндекс.Диск», который многие ругают за практически полное копирование Dropbox. Справедливости ради стоит заметить, что именно с последнего чаще всего «срисовывают» свои продукты и остальные. Уж очень удачно у него все устроено. Не исключением является и делегат от движения OpenSource и герой этой статьи – проект ownCloud за авторством разработчиков KDE.

Вообще говоря, это не единственный на рынке проект с открытым кодом. Как минимум есть Ubuntu One от Canonical, а также проекты, основанные на Git, – DVCS-Autosync (mayrhofer.eu.org/dvcs-autosync) и SparkleShare (sparkleshare.org). Клиент под Windows есть только у последнего – он заодно установит и консольный клиент для Git.

Недостатки сервисов плавно вытекают из их достоинств. Самым главным, на мой взгляд, является абсолютная «несекьюрность» ваших данных – все файлы лежат «где-то там, на забугорных серверах», и неизвестно, кто к ним имеет доступ кроме владельца. И если для домашнего пользователя это просто некомфортно, то для корпоративного приватность – жизненно важный для компании вопрос.

Для установки ownCloud на сервер потребуется наличие PHP версии 5.3 или старше, а также модулей php5-json, php-xml, php-mbstring, php5-zip, php5-gd, php5-sqlite (тоже версии 3 или старше), curl, libcurl3, libcurl3-dev, php5-curl, php-pdo. Предположим, что хостинг, удовлетворяющий этим требованиям, у вас есть и на нем крутится сайт example.com. Все, что нужно для инсталляции, – забрать архив с официальной страницы (owncloud.org/install), распаковать и закачать папку owncloud в корневую директорию сайта и открыть в браузере (example.com/owncloud).

Запустится скрипт на русском языке, который сообщит о найденных ошибках и неудовлетворенных зависимостях. Если таковых нет, он предложит указать аккаунт администратора и учетные данные для доступа к базе данных MySQL, которую вы должны создать заранее (если не знаете как, читайте раздел помощи на сайте хостера или используйте SQLite). Сразу после этого вы попадете в веб-интерфейс вашего свежеиспеченного «облака». Настоятельно рекомендую обновить браузер до последней версии, а бедолагу IE не стоит трогать совсем – есть проблемы даже в девятой версии. Можно, кстати, его и не устанавливать. За отсутствием сервера или ради «просто посмотреть» можно открыть демостраницу по адресу: demo.owncloud.org.

Первый пункт главного меню, «Файлы», по сути, список всего, что лежит на сервере. Тут можно их скачать, переименовать, залить с компьютера, создать папку или текстовый файл, расшарить документ, чтобы получить на него публичную ссылку. Онлайновый редактор текста поддерживает подсветку синтаксиса 35 языков программирования, Drag-n-Drop, автоматические отступы. Возможность редактирования документов Word и OpenDocument планируется внедрить позже. PDF-файлы просматриваются с помощью библиотеки на JavaScript.

И тут мы натыкаемся на самый главный на данный момент косяк – проблему с русскими именами файлов. В создаваемых TXT-файлах кириллические символы видны до перезагрузки страницы, а при синхронизации клиентом (о нем ниже) превращаются в кракозябры. Залитые файлы, а также созданные папки в веб-интерфейсе отображаются нормально, но локальные копии тоже приобретают нечитаемые имена. Проблема кодировок поднималась на местном форуме (forum.owncloud.org/viewtopic.php?f=3&t=2185), было предложено несколько вариантов выхода из ситуации.

Самый простой из них – вставить строку setlocale(LC_ALL, ‘ru_RU.UTF-8’) или setlocale(LC_ALL, ‘ru_RU.CP1251’) в файл lib/files.php сразу после открывающего тега«Подключить сетевой диск» – адрес тот же, что и для Windows XP. Если логин и пароль не будут приниматься, попробуйте установить галочку «Использовать другие учетные данные». При низкой скорости работы с диском авторы советуют в Internet Explorer («Сервис» > «Свойства обозревателя» > «Подключения» > «Настройка сети») cнять галочку «Автоматическое определение параметров».

Все это замечательно, скажет внимательный читатель, но где обещанная аналогия с Dropbox, где незаметная для пользователя синхронизация? Совсем недавно, с выходом версии 3.0.2, разработчики основали коммерческую компанию и планируют предоставление платных сервисов на базе своей платформы. И отсутствие десктопного приложения свело бы на нет все надежды на привлечение клиентов. Поэтому был представлен ownCloud Client версии 1.0, скачать который можно со страницы owncloud.org/sync-clients.

Сразу после установки он сообщит, что нет ни одного настроенного соединения. Закроем это окно кнопкой OK и кликнем правой клавишей мыши на иконке в системном трее. Нажатие на пункт Configure вызовет мастер настройки. В первом окне необходимо указать адрес ownCloud, в нашем случае это example.com/owncloud, далее имя и пароль пользователя. После успешной авторизации появится локальная папка C:\Documents and Settings\Имя_Пользователя\ownCloud и удаленная папка clientsync на сервере.

Они-то и будут синхронизироваться между собой. Если этого не случилось, то кликом по иконке вызовем окно со списком синхронизируемых папок. Нажмем Add Sync, укажем локальную папку и alias (псевдоним) под которым она будет видна в меню. На следующем шаге зададим удаленную папку на сервере, выбрав первый пункт – To Your ownCloud.

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

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

Если базовых функций вам мало, полезность ownCloud можно увеличить за счет расширений. Список доступных можно найти в меню настроек, в пункте «Приложения». Перечисленные в начале, черным шрифтом – это те, что уже установлены. Например, среди них есть уже упомянутые календарь, галерея, контакты. Серым шрифтом написаны неактивные дополнения. Список сторонних плагинов доступен по адресу: apps.owncloud.com. Для установки необходимо распаковать папку с плагином из архива в директорию apps внутри owncloud на сервере.

Рассмотрим некоторые самые любопытные. Первым идет Bookmarks, то есть закладки. Простая база, содержащая название ссылки и саму ссылку. Им можно присваивать теги, чтобы было легче ориентироваться. LDAP и openID user backend дадут возможность подключаться к соответствующим серверам. Настройки для подключения появятся после активации в разделе «Администратор». Плагин Webfinger включит поддержку одноименного протокола. Shorty поможет сделать свой сервис «коротких ссылок».

Compress добавит возможность упаковывать файлы прямо через веб-интерфейс в ZIP- и GZIP-архивы. File Move позволит перемещать файлы в другую папку, ocDownloader скачивает файлы на сервер по протоколам HTTP, FTP и с сервиса RapidShare. Очень интересный Playstreaming с помощью известного JWplayer проигрывает аудио- и видеофайлы в браузере. Правда, для его использования нужно будет убрать строку deny from all из файла .htaccess в папке data, иначе плагин сообщит об ошибке доступа.

После установки Storage Charts в меню появится новый пункт – DL Charts, где плагин с красивыми графиками будет отображать трудолюбиво собранную статистическую информацию о деятельности «облака». Перед активацией плагина, при копировании папки с ним, переименуйте ее из storage_charts-v2.0 в storage_charts.

SVG Editor – полноценный редактор векторных изображений в формате SVG. Можно в таком виде его (изображение) и сохранить или конвертировать в PNG или PDF. Содержимое архива с плагином следует распаковывать в папку apps/files_svgedit. Если на сервере установлен любой почтовый демон с поддержкой IMAP и веб-клиент RoundCube, то плагин mail интегрирует его в интерфейс ownCloud. В конце статьи принято подводить итоги и делать какие-то выводы, но, думаю, большинство читателей из тех, что добрались до этих строк, уже все для себя решили.

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

Что нового в четвертой версии?
Пока статья готовилась к печати, вышла четвертая версия ownCloud. Помимо закрытых дыр в безопасности и исправленных мелких багов добавлена версионность файлов – то есть сервер будет хранить все изменения в них и всегда можно «откатиться» к любой предыдущей версии или восстановить удаленные данные.

Также появилась функция шифрования данных под мастер-паролем. Вкупе с SSL-соединением это повышает надежность при размещении «облака» на ненадежных хостингах. Поддержка загрузки Drag-n-Drop позволяет отказаться от десктопного клиента и закачивать файлы через браузер простым перетаскиванием. Темы оформления дадут возможность заменить стандартные шрифты, цвета и иконки. Файлы типа OpenDocument (ODT, ODP, ODS) теперь можно просмотреть, не загружая их на компьютер. Улучшен открытый API для написания своих встраиваемых приложений.

Если у вас имеется несколько «облаков», построенных на ownCloud, теперь можно перенести пользовательскую базу из одного в другое или просто экспортировать ее для бэкапа. Календари можно расшаривать между отдельными клиентами или целыми группами. А при расшаривании файлов юзерам придет соответствующее оповещение. В разделе «Фото» вы вольны предоставить доступ к отдельным галереям для просмотра неавторизованными посетителями.

В экспериментальном режиме доступна возможность подключения Dropbox и Google Drive – они будут видны как внешние носители. Интеграция с демоном syslog позволит сохранить историю событий. Настольный клиент для Windows тоже был улучшен, и в нем обещают решение проблем с файлами с нелатинскими буквами в названии – вероятно, шаманские пляски с бубном, описанные в статье, скоро станут неактуальны.

Комментарий для сисадминов
Раз уж в статье речь зашла о корпоративных пользователях, нелишним будет посмотреть, какие коммерческие перспективы есть у ownCloud. На официальной станице ownCloud Inc по адресу owncloud.com фирма предлагает бесплатную Community Edition и две расширенные редакции – Business и Enterprise Edition. Все они распространяются по лицензии AGPL и подразумевают поддержку разной степени оперативности через электронную почту или даже по телефону (в Америке или Германии).

Бизнес-версия может выступать прокси-сервисом для других хранилищ – локальных или подключенных через NFS, CIFS либо находящихся в ином «облаке». Enterprise Edition знаком с проприетарными плагинами, содержит панель управления, поддерживает десктопные и мобильные клиенты, дает возможность отправить запрос команде инженеров на добавление новых функций и может обслуживать неограниченное количество пользователей. Также можно стать «поставщиком услуги» на основе программного обеспечения ownCloud. Такие, между прочим, в Сети уже есть, несмотря на молодость проекта, – owncube.com, getfreecloud.com и еще несколько.

Благодаря помощи от сообщества opensuse.org, на серверах которого разработчики ownCloud разместили репозитории с пакетами RPM и DEB, «облако» можно проинсталлировать на свой сервер не только вручную из tar.bz2-пакета. На странице owncloud.com/download нажмите кнопку Download рядом с заголовком ownCloud 2012 Server и выберите используемую вами ОС. Все самые популярные Debian- и Red Hat-подобные системы там есть. Далее просто следуйте указаниям. Также сообщество уже успело сделать готовые образы на разных дистрибутивах Linux – от загрузочных CD до предназначенных для записи на флэшки. Список вы найдете по адресу: owncloud.org/support/setup-and-installation/appliance.

Никто не прокомментировал материал. Есть мысли?