ownCloud - это проект, в рамках которого развивается система для организации хранения, синхронизации и обмена данными, размещёнными на внешних серверах. От похожих сервисов, таких как Google Docs, Dropbox, box.net и Ubuntu One система ownCloud отличается предоставлением пользователю полного контроля над своими данными - информация не привязывается ко внешним закрытым облачным системам хранения, а размещается на подконтрольных пользователю системах. Изначально проект развивался сообществом KDE, но недавно основатели проекта создали коммерческую компанию ownCloud Inc, которая взяла в свои руки разработку ownCloud и намерена начать предоставление сервисов на базе данной платформы.

Установка

Инструкция для Ubuntu 12.04
  1. Ставим все зависимости:
    sudo apt-get install apache2 php5 php-pear php-xml-parser php5-sqlite php5-json sqlite php5-mysql mp3info curl libcurl3 libcurl3-dev php5-curl zip php-db

  2. Теперь сам ownCloud:

    sudo apt-get install owncloud

Настройка

  1. Редактируем файл /etc/apache2/sites-enabled/000-default
    sudo gedit /etc/apache2/sites-enabled/000-default

    и меняем AllowOverride None на AllowOverride All

  2. Перезапускам apache:

    sudo /etc/init.d/apache2 restart

  3. Задаем права(иначе не сможете заливать файлы не через webui):

    sudo chown -R www-data:www-data /var/lib/owncloud/

По умолчанию размер файла ограничен в 2Mb. Чтобы это изменить, идем в /etc/php5/apache2/php.ini

sudo gedit /etc/php5/apache2/php.ini

и меняем значения параметров upload_max_filesize и post_max_size, к примеру на 2048mb.

Теперь необходимо ввести localhost/owncloud или ip_сервера/owncloud в адресной строке браузер. В появившейся странице необходимо настроить учетную запись администратора и указать базу данных mysql.

Для создания базы данных необходимо выполнить следующую последовательность действий:

sudo apt-get install mysql-server
mysql -u root -p
create database имя_базы_mysql;
grant all privileges on owncloud.* to <имя_пользователя_mysql>@localhost  identified by 'пароль_пользователя_mysql';
exit

После этого в полях необходимо ввести:
DATABASE USER– имя_пользователя_mysql;
DATABASE PASSW– пароль_пользователя_mysql;
DATABASE– имя_базы_mysql;
LOCALHOST– оставить без изменений.

Использование

Монтирование раздела через webdav

Подробно о монтировании через webdav описано в данной статье

Автомонтирование при старте ОС

Это не лучший способ, но он работает…
  1. Копируем конфиг davfs2 в домашнюю папку, что бы не нужны были права суперпользователя для монтирования:
    cp /etc/davfs2/davfs2.conf ~/.davfs2

  2. Открываем полученный файл:

    gedit ~/.davfs2/davfs2.conf

  3. Меняем в нем строку

    # ask_auth        1

    на

    ask_auth        0

  4. Создаем в ~/.config/autostart/ файл automount:

    touch ~/.config/autostart/automount

  5. Добавляем туда:

    #!/bin/bash
    mount ~/owncloud

  6. Перезагружаемся и проверяем наличие файлов в папке ~/owncloud

Клиент ownCloud

Клиент ownCloud представляет собой приложение, производящее синхронизацию выбранных папок с указанной в настройках учетной записью owncloud Для установки необходимо добавить репозиторий:

sudo su
echo 'deb http://download.opensuse.org/repositories/isv:ownCloud:community/xUbuntu_12.04/ /' >> /etc/apt/sources.list
wget http://download.opensuse.org/repositories/isv:ownCloud:community/xUbuntu_12.04/Release.key
apt-key add - < Release.key
apt-get update
apt-get install owncloud-client
exit

Проблемы

Кодировка имен файлов

Может возникнуть ситуация, когда имя файла в кириллице отображается кракозябрами, это из за того, что функция basename() чувствительна к локали, поэтому нужно сначала её указывать с помощью setlocale(). В файл lib/files.php вставить строчку

setlocale(LC_ALL, 'ru_RU.UTF-8');

После этого необходимо перезапустить сервер

sudo service apache2 restart

Распознавание ID3 тэгов

В файле /var/www/owncloud/3rdparty/getid3/getid3.php изменить

public $option_max_2gb_check = null;

на

public $option_max_2gb_check = false;

Ссылки