Введение.
Платформа ownCloud относится к порталам общего назначения, способная обрабатывать большой объёмом текстовой и медийной информацией. Пакет включает в себя серверную и клиентскую часть. Серверная — отвечает за общий дизайн рабочих областей клиентов. Клиентская — для рабочих станций, встраивая свой функционал в офисные редакторы. Сервер через клиента «видит» документы на ПК пользователя и синхронизирует их копии с хранящимся на платформы.
Платформа по своим функциям может конкурировать с такими известным цифровыми коммуникациям как Kablink, MS SharePoint, IBM WebSphera, 1С-Битрик…,
Облако ownCloud выходит под лицензией AGPLv3
Подготовка ownCloud.
- Стенд:
- Cервер ALT Linux, имя: lin-owcl; IP 10.0.2.11;
- CPU Intel Core 3 >
- HDD >= 500Gb
- ОЗУ >= 8Gb
- Apache2
- phpX
- ALT Simply Linux, имя lin-sl; ip-10.0.2.33
На момент написания статьи ownCloud поддерживает только PHP7.x
Предварительные условия перед установкой платформы, требуют манипуляций, от характера которых зависит успешная эксплуатация платформы в дальнейшем.
На стенде показаны характеристики ownCloud для малого офис/бизнес.
Для сервера платформы выбираем минимальную конфигурацию, веб-движок запустим на Apache2, а в качестве БД используем библиотеку СУБД SQL. SQLite — встроена в менеджер установочного пакета платформы.
SQLite — легкая СУБД SQL с хранилищем в виде txt. файла, без возможности использования режима клиент-сервер и хранения данных на внешнем носителе.
После установки сервера, необходимо обновить репозиторий.
# apt-get update; apt-get dist-upgrade
Установка пакетов.
Установочные архивы включают в себя базовые PHP библиотеки.
Все действия с rpm архивами можно выполнять с помощью менеджера пакетов Synaptic.
Для стенда используем PHP 7.4, обозначим её как PHP x.x в качестве стартовой.
Ниже перечислены необходимые библиотеки для установки.
# apt-get install php7
# apt-get install php7-fpm-fcgi
# apt-get install php7-imagick
# apt-get install php7-common?
# apt-get install php7-mysqlnd
# apt-get install php7.4-gmp
# apt-get install php7-imap
# apt-get install php7-json
# apt-get install php7-pgsql
# apt-get install php7-ssh2
# apt-get install php7-ldap
# apt-get install php7-curl
# apt-get install php7-mbstring
# apt-get install php7-intl
# apt-get install php7-xmlrpc
# apt-get install php7-gd
# apt-get install php7-xml
# apt-get install php7-cli
# apt-get install php7-zip
# apt-get install php7-pdo
# apt-get install php7-pdo_sqlite
# apt-get install php7-xmlreader
# apt-get install php7-fileinfo
В качестве менеджера для БД SQLite установим интерфейс командной строки sqlite3.
# apt-get install sqlite3
Все команды внутри sqlite вводятся через точку.
$ sqlite3
...
sqlite> .help
Действия с Apache2.
Установив, настроив и протестировав базовую часть веб-сервера, переходим к тонким настройкам взаимодействия Apache2 — ownCloud.
Разместим папку платформы в корень веб сервера /var/www/html и внесём небольшие изменения в файл настроек Apache2.
# vim /etc/httpd2/conf/sites-available/default.conf
Добавим в конец файла default.conf, секцию ifModule отключающею Dav для протокола WebDAV.
...
<IfModule mod_dav.c>
Dav off
</IfModule>
...
WebDAV — совместное управление файлами на удаленных веб-серверах.
Перегрузим веб-сервера.
# systemctl restart httpd2
Выбор редакции.
- Платформа выходит под тремя редакциями:
- Community — бесплатная, содержит основные базовые функции,
- поддержка на форуме
- Enterprise — платная, включены дополнительные функции, поддержка,
- подписка один год
- Standard — платная, базовый функции, поддержка,
- подписка один год
- Community — бесплатная, содержит основные базовые функции,
Для работы стенда воспользуемся редакцией Community (общественная). Скачать архивный пакет можно непосредственно с консоли, требуется подключение к сети Интернет. После получения архива, скачиваем дополнительный файл контрольной суммы для проверки пакета от действий злоумышленника.
# apt-get update
# apt-get install wget
# cd /var/www/html
# wget https://download.owncloud.com/server/stable/owncloud-complete-latest.tar.bz2
# wget https://download.owncloud.com/server/stable/owncloud-complete-latest.tar.bz2.md5
# cat owncloud-complete-latest.tar.bz2.md5
...
# md5sum owncloud-complete-latest.tar.bz2
...
Wget — утилита сетевой загрузки, использует не интерактивный режим работы.
Если возможность прямого соединения с Интернет отсутствует, скачать архив можно с сайта.
Запуск ownCloud.
Скачав пакет платформы одним из выше перечисленных способов, распаковываем его в корне веб-сервера.
# tar -xvf owncloud-complete-latest.tar.bz2
В каталоге /var/www/html создаётся папка owncloud, нам необходимо установить права владельца на эту папку. Делается это в ручную из командной линии или с помощью сценария instance.sh
, который можно использовать для установки и обновления, при получения новой версии. Мы выполним установку прав в ручную, а действиям с помощью скрипта instance.sh
будет посвящена отдельная статья.
Устанавливаем права и владельца для каталога owncloud.
# chmod -R 755 /var/www/owncloud/
# chown -R apache2:apache2 /var/www/html/owncloud/
Открываем любимый браузер, набираем URL html://ip/owncloud.
Придумайте имя и надёжный пароль для администратора.
После успешного прохождения процедуры регистрации пользователя с правами администратора, система предложит войти под именем нового зарегистрированного пользователя.
Теперь платформа, после настройки и изучения, готова к работе.
Каталоги.
Дерево папок платформы представлено большим количеством каталогов, в низу показаны основные:
- Навигация в дереве папок платформы.
- /var/www/html/owncloud — домашний каталог
- ../owncloud/config/config.php — файл настроек
- ../owncloud/date — хранилище БД SQLite и папок пользователей
- /var/www/html/owncloud — домашний каталог
Заключение
Коммуникационная платформа успешно установлена и работает, после ознакомления с интерфейсом, необходимо решить важный вопрос, на какой БД будет работать ваше облако. Для небольшой организации до ~10 чел. достаточно БД SQLite — имеет ряд ограничений. Для расширения возможностей и перспективы роста облачной платформы необходимо усилить БД, перейдя на MySQL. В следующих частях будет рассказано о действиях после установки и миграции с БД SQLite на MySQL.
Ещё один важный вопрос — создание надёжного механизма резервного копирования. Это надо решать сразу, не дожидаясь перето…Вы можете успешно внедрить облако в организации, но без возможности восстановления из резервной копии все усилия будут напрасны. В дальнейшем вопросу backup / restore будет посвящена отдельная часть.