Еще Один Клон Dropbox С Возможностью Установки Собственного Сервера Или Owncloud Вместо Seafile

Давно искал замену Dropbox чем-нибудь, чтобы я мог полностью управлять сервером, размер хранилища был бы ограничен только размером диска на сервере и при этом клиент должен быть интуитивно понятен, запускаться под Linux/MacOS/Windows, иметь возможность синхронизировать каталог на локальном компьютере без необходимости монтирования каких-либо удаленных источников, т. е.

иметь доступ к файлам в автономном режиме.

Ниже я расскажу о своем опыте использования ownCloud и Seafile.



ownCloud

Самый подходящий продукт, который мне попался, — ownCloud. Описание было многообещающим.

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

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

Правда, у ownCloud была куча дополнительных сервисов, которые мне не были нужны, таких как галерея, мп3-плеер, календарь, контакты и многое другое.

Но он знал, как авторизовать пользователей с помощью LDAP.

Сервер
Ну давай попробуем.

Установлены Nginx, php-fpm, PostgreSQL, скачан и настроен ownCloud. Захожу под администратором, настраиваю LDAP, пытаюсь зайти как пользователь LDAP и.

сразу получаю ошибку 500. После долгих поисков выяснилось, что комбинация LDAP+PostgreSQL в ownCloud работает очень плохо, и видимо поддержка PostgreSQL вообще очень плохо реализована, потому что разработчики стараются используйте одни и те же запросы к разным типам БД .

Итак, PostgreSQL был заменен MySQL, и LDAP заработал, как и планировалось.

Правда, через стандартный порт LDAP 389 он не хотел работает, работало только через порт Gloval Catalog 3268.

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

Все идет нормально.

Я помещаю файлы в каталог.

Они загружаются на сервер.

Я захожу в Интернет, делюсь каталогом с другими пользователями и.

ничего.

Они ее не видят. Даже через веб-интерфейс.

После очередных долгих поисков был найден обходной путь, или «костыль» по-русски.

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

Дальше было еще много экспериментов, в ходе которых каталог clientsync то появлялся в веб-интерфейсе, то нет, были найдены отчеты об ошибках, в которых говорилось о проблемах с обновлением кеша в базе данных, но готового «правильного» решения я не нашел.

.

Также с клиентом для Linux обнаружилась довольно неприятная проблема ошибка .

После длительной работы открывал и не закрывал многие файлы /dev/urandom, прекращая работу с сообщением «Слишком много открытых файлов».

В начале я пробовал создавать отчеты об ошибках и использовать версию от master, но потом понял, что критические для меня проблемы, такие как совместное использование каталогов, главное, для чего я собирался использовать ownCloud, решаются крайне медленно.

Так ownCloud постепенно был забыт и заброшен.



Морской файл

Но буквально несколько дней назад на одном из новостных сайтов я увидел Новости о выходе версии 1.3 некоей системы Морской файл , который также пытается заменить Dropbox. Позже выяснилось, что до версии 1.3 он был только на китайском языке и поэтому не был широко известен.

Описание показалось мне заманчивым и я решил попробовать.



Сервер
Сервер для хранилища уже был, поэтому осталось только установить Seafile. Скачал и распаковал.

По привычке я создал новую базу данных и запустил установщик.

Он выругался на отсутствие пары пакетов.

Установил пакеты и снова запустил установщик.

Я ответил буквально на несколько вопросов, таких как имя сервера, URL, порты, пути, логин и пароль администратора и все, сервер установился.

База данных не требуется (в настоящее время Seafile использует sqlite, позже запланировано поддержка других баз данных).

При желании вам даже не понадобится веб-сервер; Seafile имеет собственный встроенный веб-сервер.

Но у меня уже был настроен nginx с действительным сертификатом SSL, поэтому все, что мне нужно было сделать, это настроить его на прокси-запросы к Seafile. Позже нашел готовый, с немного другим принципом конфигурация ngnix для Seafile, но «работает — не трогай».

Заходим на сервер, видим сообщение об отсутствии библиотек и краткую инструкцию как их добавить и как синхронизировать с компьютером

Еще один клон Dropbox с возможностью установки собственного сервера или ownCloud вместо Seafile

Добавляем «библиотеку».

Вы можете указать пароль для его шифрования, но я это еще не проверял.



Еще один клон Dropbox с возможностью установки собственного сервера или ownCloud вместо Seafile

И так, у нас есть библиотека, в которой будут храниться файлы от клиентов.

Как видите, с русским языком проблем нет. Забегая вперед скажу, что с файлами на кириллице они недоступны.

Библиотеку можно скачать (добавить в клиент), поделиться или удалить.



Еще один клон Dropbox с возможностью установки собственного сервера или ownCloud вместо Seafile



Клиент
Теперь очередь клиента.

Я скачал deb-пакет для своего kubuntu 12.10, установил его и по привычке хотел запустить из консоли, но команда seafile показала лишь пример его использования.

Позже я обнаружил, что мне нужно запустить seafile-applet. Или через меню KDE, где он называется Seafile с оранжевым логотипом.

И вот, клиент запустился.

В KDE он встроен в трей с непонятным значком, а точнее без него, и меню выглядит как-то непонятно:

Еще один клон Dropbox с возможностью установки собственного сервера или ownCloud вместо Seafile

Возвращаемся на наш сервер, нажимаем «Загрузить» рядом с библиотекой.

В зависимости от браузера открывается новое окно или вкладка с адресом локальный хост :13420/repo/download/ и дополнительную служебную информацию, а также страницу следующего содержания:

Еще один клон Dropbox с возможностью установки собственного сервера или ownCloud вместо Seafile

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

Вы также можете указать существующий каталог данных, нажав «Синхронизировать с существующей папкой».

В этом случае вам придется вручную ввести или скопировать полный путь к каталогу; кнопки Обзор нет. Файлы в каталоге будут объединены с файлами в библиотеке, если таковые имеются.

Вот и все! Seafile начнет автоматическую синхронизацию и отправку или загрузку файлов с/на сервер.

Поделиться библиотекой также не составит труда.

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

Общие библиотеки для группы можно просмотреть, щелкнув имя группы в правом нижнем углу в разделе «Мои группы».

В будущих версиях они воля также будет отображаться в разделе «Мой дом -> Общий».

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

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

Файлы, измененные на стороне пользователя, скорее всего, будут перезаписаны файлами с сервера, но я еще не проверял.

Пользователю достаточно скачать и установить клиент, зайти на сервер и скачать библиотеку.

Все очень просто и уже после первого раза становится интуитивно понятным.



Полученные результаты
На данный момент Seafile мне кажется наиболее подходящей заменой Dropbox. Отсутствие LDAP не позволяет внедрить его в компании, но для личного использования, если у вас есть лишний сервер, он вполне подойдет. Минусы:
  • отсутствие поддержки LDAP. Обещают сделать это сразу после того, как закончат писать клиенты для iOS и Android. Без LDAP внедрение в компании несколько проблематично, потому что… всех пользователей придется добавлять вручную;
  • невозможность совместного использования каталога в «библиотеке».

    Планируется добавить в будущих версиях;

  • не все переведено и иногда в сообщениях появляются иероглифы;
Плюсы:
  • возможность синхронизации существующих каталогов, причем не важно, где этот каталог находится;
  • клиент для всех популярных операционных систем.

    Мобильные клиенты уже в пути;

  • интуитивно понятный интерфейс и процесс;
  • универсальный сервер;
  • возможность синхронизации с/на несколько серверов в одном клиенте;
Не знаю, плюс это или минус, но все хранится в git-подобном scm, так что если файл случайно будет удален или перезаписан, всегда есть возможность его восстановить.

Правда, только через веб-интерфейс.

Это плюс.

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

Пока писал статью, обнаружил еще пару мелких ошибок, таких как, например, при удалении библиотеки в клиенте и/или сервере она не удаляется ни из «Задач загрузки» клиента, ни из Seafile. клиент не загружается автоматически при запуске Windows, хотя эта опция включена, но все они никак не влияют на синхронизацию файлов и общую работу системы, и Seafile я считаю вполне подходящим, по крайней мере, для личного использования в качестве замены для Дропбокса.

Теги: #Облачные вычисления #owncloud #dropbox-killer #seafile

Вместе с данным постом часто просматривают: