Если вы решили поставить OwnCloud на маршрутизатор с OpenWRT - не стоит. Серьёзно, лучше откажитесь от этой идеи. Он будет тормозить, полностью загружать девайс по CPU и по памяти (мои 128мб улетели враз!).
Если же вы всётаки решились, то я замечу, что эта статья не претендует быть исчерпывающей. Всё написанное здесь, скорее версия того, как можно быстро всё развернуть. Возможно вам будет лучше прочесть статью об этом в OpenWRT wiki. Тем не менее всё изложенное ниже может послужить хорошим фундаментом для дальнейших улучшений и никак не перечит написанному в wiki.
Если же вы всётаки решились, то я замечу, что эта статья не претендует быть исчерпывающей. Всё написанное здесь, скорее версия того, как можно быстро всё развернуть. Возможно вам будет лучше прочесть статью об этом в OpenWRT wiki. Тем не менее всё изложенное ниже может послужить хорошим фундаментом для дальнейших улучшений и никак не перечит написанному в wiki.
Также вам необходимо сначала прочесть статью по сборке своего образа OpenWRT, т.к. иначе ничего не получится, ведь важным требованием для установки OwnCloud является наличие локали, которая отсутствует в стандартном образе прошивки. Кстати собирать можно не только trunk версию дистрибутива, но и вполне стабильную. Так как на моём роутере доступно всего 16Мб памяти, я воспользовался встроенной особенностью расширения пространства с помощью оверлея. Подробнее можно прочесть в этой статье. Как только у вас будет собран и настроен должным образом дистрибутив, переходите к пункту ниже.
1. Установка lighttpd и php
Для OwnCloud мы будем устанавливать lighttpd. Так после его установки у нас будет два web-сервера в системе - uhttpd и lighttpd. В сети можно найти методы как установки OwnCloud на uhttpd, так и переноса Luci на lighttpd, но у меня не получилось это сделать сразу, а потом, глядя на жуткие тормоза OwnCloud, и желания не возникло.
Также замечу, что для хранения данных был использован sqlite. Есть возможность использовать что-то получше (MySQL/MariaDB, PostgreSQL), и разработчики настроятельно рекомендуют так и делать, но попробовать можно и так.
Установим необходимые пакеты:
opkg install lighttpd lighttpd-mod-cgi lighttpd-mod-fastcgi lighttpd-mod-access php5-fastcgi php5-mod-xmlwriter php5-mod-zip php5-mod-json php5-mod-curl php5-mod-pdo-sqlite sqlite3-cli php5-mod-simplexml php5-mod-mbstring php5-mod-xml zoneinfo-core php5-mod-iconv php5-mod-gd php5-mod-ctype php5-mod-dom php5-mod-hash php5-mod-session php5-mod-pdo-sqlite php5-mod-pdo php5-mod-sqlite3 php5-mod-fileinfo
Настроим lighttpd. Для этого изменим конфигурацию сервера для отдачи данных через 81 порт. Ниже привожу листинг всего файла.
Настроим php изменив в файле php.ini следующую строку:
Добавим ассоциацию для отработки файлов php через mod_fastcgi.
2. OwnCloud
Теперь загрузим сам OwnCloud. Скачать архив с последней версией можно на сайте https://owncloud.org/install/#instructions-server. Скопируем ссылку указывающую на архив tar.bz2. Так как скачивать мы собираемся используя wget, упростим себе задачу заменив в ссылке https на http, благо сервер загрузок OwnCloud отдаёт данные в том числе и по нешифрованному соеденению.
Теперь запустим необходимые сервисы:
На этом всё. Я писал в основном по-памяти, так что если вдруг каким-то невероятным образом я чего забыл - пишите в комментариях.
p.s. если у вас возникают проблемы с доступом к сайту, проверьте права на директорию /www/oc.
vim /etc/lighttpd/lighttpd.conf server.modules = ( ) server.document-root= "/www/oc" server.upload-dirs = ( "/tmp" ) server.errorlog = "/var/log/lighttpd/error.log" server.pid-file = "/var/run/lighttpd.pid" server.username = "http" server.groupname = "www-data" index-file.names = ( "index.php", "index.html", "index.htm", "default.htm", "index.lighttpd.html" ) static-file.exclude-extensions = ( ".php", ".pl", ".fcgi" ) server.port = 81 include "/etc/lighttpd/mime.conf" include_shell "cat /etc/lighttpd/conf.d/*.conf"
Настроим php изменив в файле php.ini следующую строку:
vim /etc/php.ini doc_root = "/www/oc"
Добавим ассоциацию для отработки файлов php через mod_fastcgi.
vim /etc/lighttpd/conf.d/fastcgi.conf server.modules += ( "mod_fastcgi" ) fastcgi.server = ( ".php" => (( "bin-path" => "/usr/bin/php-fcgi", "socket" => "/tmp/php.socket", "max-procs" => 1 )) )
2. OwnCloud
Теперь загрузим сам OwnCloud. Скачать архив с последней версией можно на сайте https://owncloud.org/install/#instructions-server. Скопируем ссылку указывающую на архив tar.bz2. Так как скачивать мы собираемся используя wget, упростим себе задачу заменив в ссылке https на http, благо сервер загрузок OwnCloud отдаёт данные в том числе и по нешифрованному соеденению.
wget http://download.owncloud.org/community/owncloud-8.1.0.tar.bz2Установим tar (тот, что поставляется по-умолчанию не умеет работать с bz2) и распакуем архив. Поместим файлы в необходимую директорию.
opkg install tar tar xvjf owncloud-8.1.0.tar.bz2 -C /www/ rm owncloud-8.1.0.tar.bz2Поместим файлы в необходимую директорию.
mv /www/owncloud/ /www/oc/
Теперь запустим необходимые сервисы:
/etc/init.d/lighttpd start /etc/init.d/lighttpd enable /etc/init.d/php5-fastcgi start /etc/init.d/php5-fastcgi enable
На этом всё. Я писал в основном по-памяти, так что если вдруг каким-то невероятным образом я чего забыл - пишите в комментариях.
p.s. если у вас возникают проблемы с доступом к сайту, проверьте права на директорию /www/oc.
>мои 128мб улетели враз
ОтветитьУдалитьКакое устройство использовали?
TP-Link Archer C7v2. Никогда не покупайте это барахло (если планируете использовать OpenWRT). Сейчас там 5Ghz wifi нормально не работает.
Удалить