Свое облачное хранилище — ownCloud
Что такое ownCloud?
ownCloud — это персональное облачное хранилище данных, подобное Google Drive или Dropbox, но интересно это решение не только возможностью хранить файлы и получать доступ к ним с любого устройства. ownCloud — это гораздо больше:
- Синхронизация календарей на всех устройствах
- Хранилище контактов
- Фотоархив
- Персональное файловое хранилище
- Синхронизация с другими облачными хранилищами — DropBox, Swift, Google Docs, Amazon S3
- Встроенный модуль просмотра PDF
- Музыкальный проигрыватель
Полный список возможностей ownCloud представлен на официальном сайте проекта — owncloud.org
Установка ownCloud
Традиционно с заказа SSD VDS или выделенного сервера — это зависит от того, какой объем данных будет храниться. В качестве операционной системы выберем Ubuntu, однако при желании можно поэкспериментировать с другими ОС.
Apache, PHP, MySQL
Установим «джентельменский набор» из актуальных версий PHP, MySQL и Apache. В выбранной нами Ubuntu это можно сделать одной командой:
1 |
apt-get install lamp-server^ |
При установке MySQL нужно будет указать пароль для администратора СУБД. Я рекомендую создать новый сложный пароль с помощью, например, сайта strongpasswordgenerator.com. Не забудьте сохранить этот пароль в надежном месте (например, в специальном файле или в документе Evernote).
Следующим этапом произведем инсталляцию дополнительных модулей для PHP и вспомогательных утилит. Для этого нам необходимо выполнить одну команду:
1 |
apt-get install smbclient curl libcurl3 php5-gd php-xml-parser php5-intl php5-curl |
Настройка Apache
Теперь нам нужно немного изменить штатные настройки Apache. Для начала включим модули mod_rewrite и mod_headers:
1 2 |
a2enmod rewrite a2enmod headers |
Второй необходимый шаг — небольшое изменение конфигурационного файла вэбсервера. Откроем в текстовом редакторе vi или nano файл /etc/apache2/sites-available/default и найдем в нем секцию, которая начинается строкой <Directory /var/www/>. Мы должны разрешить обработку .htaccess внутри директории /var/www, поэтому исправим значение параметра AllowOverride с None на All. В итоге секция должна выглядеть так:
1 2 3 4 5 6 |
<Directory /var/www/> Options Indexes FollowSymLinks MultiViews AllowOverride All Order allow,deny allow from all </Directory> |
Так как мы изменили настройки Apache, перезапустим его и перейдем после этого к настройке MySQL:
1 |
service apache2 restart |
Настройка MySQL
ownCloud использует MySQL, поэтому нам необходимо создать базу данных и пользователя с необходмыми правами. Подключимся к серверу СУБД (нам понадобится пароль, который мы задали в самом начале, при установки MySQL):
1 |
mysql -uroot -p |
Теперь выполним пару SQL-запросов, а секретный пароль пользователю owncloud рекомендуем придумать свой:
1 2 3 4 |
CREATE DATABASE owncloud; GRANT ALL ON owncloud.* TO 'owncloud'@'localhost' IDENTIFIED BY 'sEcReTpA$sv0rd'; FLUSH PRIVILEGES; QUIT; |
Установка ownCloud
Инсталляция ownCloud выполняется буквально несколькими командами:
1 2 3 |
cd /var/www wget -O - http://download.owncloud.org/community/owncloud-latest.tar.bz2 | tar -xjf - chown -R www-data:www-data owncloud |
Теперь запускаем любимый вэб-броузер и переходим по URL http://ip-адрес-сервера/owncloud/. Указываем желаемый логин-пароль администратора нашего облачного хранилища и параметры доступа к базе данных. На этом установка закончена и можно начинать использовать облачные технологии собственного приготовления: