Всем привет!
Долой унылые речи о том, что это мой первый пост и все такое. Пожалуй лучше я расскажу о том, как выжать все соки из маленькой малютки под названием Raspberry PI (далее RPI), ценой $ 35. Я уверен на 146,6% что здесь уже были посты подобного рода, и этот пост не претендует на твердую пять. Скорее это просто вступительное слово о том: «Как я занял себя делом на пару унылых вечеров». Собственно мы получим в итоге Raspberry PI который можно использовать:
Для тех кому стало интересно прошу под кат (Внимание! Трафик).
Итак, что для всего этого понадобится:
Так же нам понадобятся некоторые программы, PUTTY, WinSCP, XMing. Итак, нам необходимо что бы все что мы задумали работало без выключения/перезагрузки RPI, следовательно сборки типа OpenELEC, RaspBMC, XBian можно исключить. Нам нужно что бы XBMC был «внутри» нашей ОС, как плеер, так что мы сделаем что-то подобное. Мы будем использовать Raspbian. Скачать можно с оф. сайта
Дальше все просто. Разархивируем скачанное, подключаем SD карту к компьютеру, далее нам понадобится программа Win32DiskImager. Устанавливаем, запускаем. Указываем путь к .img файлу с ОС на борту, далее в поле «Device» выбираем из списка носителей нашу SD карту и нажимаем «Write». После в появившемся диалоговом окне выбираем «Yes» и готовимся к первому запуску RPI.
Для работы RPI нам нужен телевизор с HDMI выходом, но на крайний случай можно обойтись и обычным. Для этого нам понадобится вместо HDMI кабеля SCART-RCA кабель и обычные USB колонки со своим питанием! Думаю понятно что и куда нужно втыкать. Если все прошло как-по-маслу, мы увидим окно с настройками нашей ОС.
После перезагрузки вводим логин pi и пароль который вы сделали (по умолчанию raspberry). Рекомендую сразу поменять рутовый пароль:
Первым делом скачиваем WinSCP. Устанавливаем, настраиваем.
В поле host name вводим ip адрес RPI, у меня 192.168.1.100 (узнать можно с помощью Advanced IP Scaner, либо через роутер, думаю не стоит подробно объяснять как это сделать). В поле user name и password указываем данные для авторизации. Лучше всего пользоваться root'ом, далее Save. Далее все просто, указываем название, жмем чекбокс и OK. Все, теперь мы готовы приступить к следующему шагу.
Собственно след. шагом будет установка X-Ming. Он нам нужен скорее для мониторинга, ну и это облегчит нам жизнь в будущем, так как мы поставим Conky для мониторинга и MySqlWorkbench для администрирования БД(но это скорее просто прихоть) на RPI. Тем кому это не нужно, могут смело идти к следующему шагу.
Скачиваем, устанавливаем. Параметры установки:
галка Non US keyboard Support
галка XLaunnch wizard
галка Run Unility
Normal PuTTY Link SSH client
В свойствах ярлыка XMing прописываем
После этого врубаем и можно смело подключаться к RPI посредством SSH, главное напомнить вашему SSH клиенту использовать X-11 Forwarding.
В PuTTY заходим в Connections -> SSH -> X11 -> Включаем X11 Forwarding
X display location — localhost:10.0
Remote X11 authentification protocol — XDM-Authorization-1
Затем сами настройки сессии (Sessions)
HostName (or IP address) — 192.168.1.100 (ваш ip RPI) port 22
Connection type — SSH -> Жмем Save и подключаемся. Запускаем терминал и…
Все приготовления закончены и я думаю мы подошли к главному. Лирическое отступление. До того как я решил сделать так как мы сделаем, я ставил себе и OpenELEC и RaspBMC. Мне это не подошло, потому что приходилось перезагружать RPI что бы запустить или Raspbian или XBMC (В случае с OpenELEC), а с RaspBMC я не смог даже близко сделать что то подобное. Хотя может и найдутся умельцы которые скажут что я дурак, и все такое. Идем дальше. Описание сего процесса не моё, нашлись умельцы которые изобрели колесо за нас, я просто применил на практике. По порядку:
Добавляем пользователя из под которого планируется запускать XBMC в следующие группы (audio video input dialout plugdev tty) командой:
Затем, меняем настройки группы input командой:
В файле должно быть:
Запускать XBMC командой:
Дождаться загрузки и profit!
Если необходимо сделать Автостарт XBMC то нужно редактировать /etc/default/xbmc и изменить ENABLED to 1:
Плагины которые стоят у меня:
— repository.superrepo.org.frodo.al — Огромное количество всяких дополнений к XBMC
— repository.seppius — Русский репозиторий, с дополнениями «наших» сайтов на подобии LostFilm и Seasonvar и не только. Можно найти на любой вкус
— repository.oneevil — Сервис аддон ACEStream для XBMC и Аддон Torrenter в этом репозитории
— repository.nuismons — TSengine api
— plugin.watch.is.latest — Плагин для сайта watch.is (Сайт по приглашениям!!)
— plugin.video.torrenter.1.1.5.5 — Плагин для потокового воспроизведения торрент фильмов, скажем так.
Так же нужно установить libTorrent, для того что бы стримить фильмы с LostFilm:
Все эти плагины можно спокойно найти в интернете, вдаваться в подробности настройки и установки я не буду.
Что бы заработали скреперы — необходимо в настройках TheMovieDB использовать не TMDB а IMDB. Не понял почему так, но после смены у меня заработали скреперы на поиске некоторых русских фильмов, однако некоторые все еще найти не может.
Он нам нужен для мониторинга за температурой, загрузкой CPU и тд. По порядку:
Затем создаем файл .conkyrc командой:
и вставляем туда:
Запускать командой:
Все настройки можно найти в интернете и настроить «на свой вкус».
Просьба за данный пункт сильно не бить. Это не инструкция "как это должно быть", это инструкция "как это работает у меня", конструктивная критика по делу приветствуется, если будут какие-либо дополнения или замечания, приму во внимание, и адаптирую себе для работы.
Перед установкой рекомендую в настройках роутера(на пример, мой ADSL модем 192.168.1.1 — пробросить порты Virtual Rout(Port Forwarding), пробрасываем 80 порт на 80 порт 192.168.1.100(.100 это у меня Raspberry PI))
Итак, поехали. GIT:
Апач:
Теперь php5 с плюшками:
Ребутим апач:
Проверяем. Заходим в браузере на IP_малинки (в моем примере 192.168.1.100). Если появилась надпись «It works!», то я вас поздравляю, если нет — просьба попробоватьвключить-выключить сначала. Для тех кто не пробрасывал порты, можно проверить прямо с RPI. Для этого цепляется через SSH и запускаем браузер:
Затем вводимвключить-выключить сначала.
Далее проверим работоспособность php5, создадим файл test.php:
В него внесем изменения:
CTRL + X -> Y -> Enter, заходим по ссылке
Что бы получить доступ к phphmyadmin, необходимо в файл /etc/apache2/apache2.conf
вписать следующее (необходимо только до версии Squeeze, начиная с версии 6,0 это будет включено в сценарий установки пакета
Перезапускаем апач:
Проверяем, заходим в браузере
Думаю с установкой веб-сервера закончено. Про настройку DNS в bind9 и VIrtual Hosts в апаче будет в другой статье. Скажу еще то, что для себя я поставил так же RhodeCode на RPI и хотел поставить какой нибудь Issue трекер. Выбор пал на YouTrack от JetBrain, но JavaМашина сильно грузит Raspberry, поэтому не стал заморачиваться. Так как я пользуюсь phpstorm — вот небольшое отступление о том Как подружить phpstorm с нашей БД на RPI:
Врубаем PHPStorm заходим в DataBase (кнопка слева) -> new -> DataBase Source
Database URL — адрес и порт удаленной машины, а так же имя БД
User — имя пользователя БД
Password — пароль пользователя БД
SSH tunnel will be opened on localhost and port — порт обязательно должен быть свободным на машине, с которой нужно подключить phpstorm к mysql на удаленной машине.
Втыкаем флешку в RPI, вводим команду:
Результат:
Смотрим, запоминаем, TR16GB, тип «ntfs», устанавливаем поддержку ntfs:
Создаем каталог, куда будем монтировать нашу флешку:
Открываем файл:
Дописываем туда:
Где UUID, это уникальный id нашей флешки, который мы посмотрели командой
Приступаем к установке, Обновим на всякий случай все что мы тут натворили:
Установим сервер Samba:
Теперь откроем /etc/samba/smb.conf и вписываем туда:
Где workgroup, это рабочая группа, скорее всего у вас WORKGROUP. Доступ к серверу будет осуществляться без авторизации. Если необходимо что бы при подключении надо было запрашивать пароль, то вместо
Я «замапил» себе сетевой диск, для удобства. Можно прямо с компа закидывать фильмы на RPI и смотреть уже на огромном телевизоре, который допустим стоит у вас где-нибудь в гостиной.
Сначала поставим rTorrent
Затем создадим папку на нашей флешке, сюда будем качать наши фильмы:
А так же папку, где у нас будет храниться информация о закачках:
Затем переходим в домашнюю папку юзера, под которым будет работать rtorrent, у меня это
Тут создаем файл ".rtorrent.rc", это настройки нашего rtorrent:
Описание настроек можно посмотреть здесь. Настроим автозагрузку и установим screen для работы rtorrent в фоне:
Отредактируем скрип для корректной работы:
в строке
Настроим апач, включим модули:
Отредактируем файл
Пришло время ставить web-морду для нашего rtorrent. Я выбрал ruTorrent, т.к. она простенькая и на русском языке. Сначала поставим Subversion:
Теперь загрузим ruTorrent:
Выставим права на папку:
Осталось проверить работу нашей web-морды, заходим в браузере
Ну вот вроде и все. Теперь мы имеем готовый к работе RPI, для web-разработчиков, которые в ночь с пятницы на субботу могут поставить качать свой любимый сериал и на следующее утро, лежа на диване смотреть все это дело на огромном телике. Спасибо за внимание.
P.S. Хочу принести извинения за отсутствие некоторых ссылок на сторонние ресурсы, материалом которых я руководствовался т.к. делал я это давно, а опубликовал только сейчас.
Долой унылые речи о том, что это мой первый пост и все такое. Пожалуй лучше я расскажу о том, как выжать все соки из маленькой малютки под названием Raspberry PI (далее RPI), ценой $ 35. Я уверен на 146,6% что здесь уже были посты подобного рода, и этот пост не претендует на твердую пять. Скорее это просто вступительное слово о том: «Как я занял себя делом на пару унылых вечеров». Собственно мы получим в итоге Raspberry PI который можно использовать:
- как домашний web-сервер (если ты какой-нибудь PHP-разработчик, и тебе не чуждо веселье);
- как мультимедийную приставку с популярным XBMC Media Center (
или супер-пупер-крутую-шняжкук телевизору за скромные 1800$); - и как ночную торрент качалку, с web-интерфейсом (для ленивых);
Для тех кому стало интересно прошу под кат (Внимание! Трафик).
Подготовка
Итак, что для всего этого понадобится:
- Raspberry PI model B
- SD карта на 8GB, скорость должна быть высокой. (Подойдут 6 и 10 класс)
- USB Flash карта, для того, что бы не забивать и без того малую память SD карты фильмами которые ты захочешь посмотреть
- HDMI или SCART-RCA кабель
- Блок питания, подойдет любой мини-USB зарядник с выходом 5 В и током до 2А, с MicroUSB выходом или MicroUSB переходник для подключения к компьютеру
- Немного свободного времени
- Прямые руки (во всяком случае мне они точно понадобились)
Фото моей модели
Так же нам понадобятся некоторые программы, PUTTY, WinSCP, XMing. Итак, нам необходимо что бы все что мы задумали работало без выключения/перезагрузки RPI, следовательно сборки типа OpenELEC, RaspBMC, XBian можно исключить. Нам нужно что бы XBMC был «внутри» нашей ОС, как плеер, так что мы сделаем что-то подобное. Мы будем использовать Raspbian. Скачать можно с оф. сайта
Дальше все просто. Разархивируем скачанное, подключаем SD карту к компьютеру, далее нам понадобится программа Win32DiskImager. Устанавливаем, запускаем. Указываем путь к .img файлу с ОС на борту, далее в поле «Device» выбираем из списка носителей нашу SD карту и нажимаем «Write». После в появившемся диалоговом окне выбираем «Yes» и готовимся к первому запуску RPI.
Для работы RPI нам нужен телевизор с HDMI выходом, но на крайний случай можно обойтись и обычным. Для этого нам понадобится вместо HDMI кабеля SCART-RCA кабель и обычные USB колонки со своим питанием! Думаю понятно что и куда нужно втыкать. Если все прошло как-по-маслу, мы увидим окно с настройками нашей ОС.
Пункты меню с подробным описанием и фото
— Expand filesystem — Расширить основной раздел на всю SD карту.
— Change User Password — Установка пароля для пользователя «pi» (по умолчанию пароль «raspberry»). Пароль нужно ввести два раза!
— Enable Boot to Desktop — Загружать/не загружать графический интерфейс при запуске. Отключаем, т.к. нам он не нужен, а включить можно командой
— Internationalisation Options — Выбор месторасположения и языка, есть 3 пункта:
— Add to Rastrack — Регистрация устройства в общей базе. Пропускаем.
— Overclock — Разгон процессора. По умолчанию установлена частота 700МГц, можно повысить до 1000МГц. Raspberry Pi теперь можно официально разогнать до 1 ГГц и не потерять гарантию (клик!). Ставим 1000МГц, это даст нам производительности при работе с XBMC.
— Advanced Options — Дополнительные настройки. Есть след. пункты:
Теперь нажимаем TAB, выбираем FINISH.
— Expand filesystem — Расширить основной раздел на всю SD карту.
— Change User Password — Установка пароля для пользователя «pi» (по умолчанию пароль «raspberry»). Пароль нужно ввести два раза!
— Enable Boot to Desktop — Загружать/не загружать графический интерфейс при запуске. Отключаем, т.к. нам он не нужен, а включить можно командой
startx
. После выбора есть еще 2 пункта: первая строка — загружать, вторая строка — не загружать (есть ещё третья строка, но в данной статье она нам не интересна).— Internationalisation Options — Выбор месторасположения и языка, есть 3 пункта:
- Change Locale — Выбор языка, выбираем «ru_RU.UTF-8 UTF-8».
- Change Timezone — Выбор часового пояса, выбираем свой.
- Change Keyboard Layout — Настройки клавиатуры. Оставляем все как есть.
— Add to Rastrack — Регистрация устройства в общей базе. Пропускаем.
— Overclock — Разгон процессора. По умолчанию установлена частота 700МГц, можно повысить до 1000МГц. Raspberry Pi теперь можно официально разогнать до 1 ГГц и не потерять гарантию (клик!). Ставим 1000МГц, это даст нам производительности при работе с XBMC.
— Advanced Options — Дополнительные настройки. Есть след. пункты:
- Overscan — Если у вас по краю изображения имеется широкая чёрная полоса, то необходимо выключить этот режим.
- Hostname — Сетевое имя RPI. Оставляем по-умолчанию.
- Memoy Split — Выделение видеопамяти для работы графического процессора. Ставим 128.
- SSH — Доступ по SSH. Включаем, т.к. далее все будем настраивать по SSH. У меня появились некоторые ошибки.
Initial ssh key generation still running. Please wait and try again.
Лечится простыми действиями после перезагрузки:
sudo rm /var/log/regen_ssh_keys.log
sudo rm /etc/ssh/ssh_host*
sudo ssh-keygen -A
- Update — Обновление ОС. Для этого необходим доступ в интернет.
- About raspi-config — Пропускаем, не интересно.
Теперь нажимаем TAB, выбираем FINISH.
После перезагрузки вводим логин pi и пароль который вы сделали (по умолчанию raspberry). Рекомендую сразу поменять рутовый пароль:
sudo passwd root
Настройка доступа по SSH к файловой системе RPI (из Windows)
Первым делом скачиваем WinSCP. Устанавливаем, настраиваем.
В поле host name вводим ip адрес RPI, у меня 192.168.1.100 (узнать можно с помощью Advanced IP Scaner, либо через роутер, думаю не стоит подробно объяснять как это сделать). В поле user name и password указываем данные для авторизации. Лучше всего пользоваться root'ом, далее Save. Далее все просто, указываем название, жмем чекбокс и OK. Все, теперь мы готовы приступить к следующему шагу.
Xming: X-Server для Windows
Собственно след. шагом будет установка X-Ming. Он нам нужен скорее для мониторинга, ну и это облегчит нам жизнь в будущем, так как мы поставим Conky для мониторинга и MySqlWorkbench для администрирования БД(но это скорее просто прихоть) на RPI. Тем кому это не нужно, могут смело идти к следующему шагу.
Скачиваем, устанавливаем. Параметры установки:
галка Non US keyboard Support
галка XLaunnch wizard
галка Run Unility
Normal PuTTY Link SSH client
В свойствах ярлыка XMing прописываем
путь_до_программы\Xming.exe :10 -clipboard -multiwindow
После этого врубаем и можно смело подключаться к RPI посредством SSH, главное напомнить вашему SSH клиенту использовать X-11 Forwarding.
В PuTTY заходим в Connections -> SSH -> X11 -> Включаем X11 Forwarding
X display location — localhost:10.0
Remote X11 authentification protocol — XDM-Authorization-1
Затем сами настройки сессии (Sessions)
HostName (or IP address) — 192.168.1.100 (ваш ip RPI) port 22
Connection type — SSH -> Жмем Save и подключаемся. Запускаем терминал и…
pi@raspberrypi ~ $ lxterminal&
[1] 2997
pi@raspberrypi ~ $
Вуаля
Установка XBMC на Raspberry Pi под Raspbian
Все приготовления закончены и я думаю мы подошли к главному. Лирическое отступление. До того как я решил сделать так как мы сделаем, я ставил себе и OpenELEC и RaspBMC. Мне это не подошло, потому что приходилось перезагружать RPI что бы запустить или Raspbian или XBMC (В случае с OpenELEC), а с RaspBMC я не смог даже близко сделать что то подобное. Хотя может и найдутся умельцы которые скажут что я дурак, и все такое. Идем дальше. Описание сего процесса не моё, нашлись умельцы которые изобрели колесо за нас, я просто применил на практике. По порядку:
cd /etc/apt/sources.list.d/
deb http://archive.mene.za.net/raspbian wheezy contrib
CTRL + X -> Y -> Enter
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-key 5243CDED
sudo apt-get update
sudo apt-get install xbmc
Добавляем пользователя из под которого планируется запускать XBMC в следующие группы (audio video input dialout plugdev tty) командой:
sudo usermod -a -G имя_группы пользователь
Затем, меняем настройки группы input командой:
sudo nano /etc/udev/rules.d/99-input.rules
В файле должно быть:
SUBSYSTEM=="input", GROUP="input", MODE="0660"
KERNEL=="tty[0-9]*", GROUP="tty", MODE="0660"
Запускать XBMC командой:
xbmc-standalone
Дождаться загрузки и profit!
Клик!
Это уже настроенный XBMC с уже установленными плагинами, список я приведу ниже.
Это уже настроенный XBMC с уже установленными плагинами, список я приведу ниже.
Если необходимо сделать Автостарт XBMC то нужно редактировать /etc/default/xbmc и изменить ENABLED to 1:
ENABLED=1
Плагины которые стоят у меня:
— repository.superrepo.org.frodo.al — Огромное количество всяких дополнений к XBMC
— repository.seppius — Русский репозиторий, с дополнениями «наших» сайтов на подобии LostFilm и Seasonvar и не только. Можно найти на любой вкус
— repository.oneevil — Сервис аддон ACEStream для XBMC и Аддон Torrenter в этом репозитории
— repository.nuismons — TSengine api
— plugin.watch.is.latest — Плагин для сайта watch.is (Сайт по приглашениям!!)
— plugin.video.torrenter.1.1.5.5 — Плагин для потокового воспроизведения торрент фильмов, скажем так.
Так же нужно установить libTorrent, для того что бы стримить фильмы с LostFilm:
sudo apt-get install python-libtorrent
Все эти плагины можно спокойно найти в интернете, вдаваться в подробности настройки и установки я не буду.
Что бы заработали скреперы — необходимо в настройках TheMovieDB использовать не TMDB а IMDB. Не понял почему так, но после смены у меня заработали скреперы на поиске некоторых русских фильмов, однако некоторые все еще найти не может.
Клик!
Установка Conky
Он нам нужен для мониторинга за температурой, загрузкой CPU и тд. По порядку:
sudo apt-get install conky
Затем создаем файл .conkyrc командой:
sudo nano .conkyrc
и вставляем туда:
alignment top_left
background no
border_width 1
cpu_avg_samples 2
default_color white
default_outline_color white
default_shade_color white
double_buffer yes
draw_borders no
draw_graph_borders yes
draw_outline no
draw_shades no
use_xft yes
xftfont DejaVu Sans Mono:size=12
gap_x 5
gap_y 60
minimum_size 5 5
net_avg_samples 2
no_buffers yes
out_to_console no
out_to_stderr no
extra_newline no
own_window yes
own_window_class Conky
own_window_type desktop
stippled_borders 0
update_interval 1.0
uppercase no
use_spacer none
show_graph_scale no
show_graph_range no
TEXT
${color grey}Uptime:$color $uptime
${color grey}Frequency (in MHz):$color $freq
${color grey}Frequency (in GHz):$color $freq_g
${color grey}RAM Usage:$color $mem/$memmax - $memperc% ${membar 4}
${color grey}Swap Usage:$color $swap/$swapmax - $swapperc% ${swapbar 4}
${color grey}CPU Usage:$color $cpu% ${cpubar 4}
${color red}Temp: $color ${alignr 4}${color red}${acpitemp}°С$color
${color grey}Processes:$color $processes ${color grey}Running:$color $running_processes
$hr
${color grey}File systems:
/ $color${fs_used /}/${fs_size /} ${fs_bar 6 /}
${color grey}Networking:
Up:$color ${upspeed eth0} ${color grey} - Down:$color ${downspeed eth0}
$hr
${color grey}Name PID CPU% MEM%
${color lightgrey} ${top name 1} ${top pid 1} ${top cpu 1} ${top mem 1}
${color lightgrey} ${top name 2} ${top pid 2} ${top cpu 2} ${top mem 2}
${color lightgrey} ${top name 3} ${top pid 3} ${top cpu 3} ${top mem 3}
${color lightgrey} ${top name 4} ${top pid 4} ${top cpu 4} ${top mem 4}
Запускать командой:
conky
Все настройки можно найти в интернете и настроить «на свой вкус».
Клик!
Установка и настройка WebServer-а Apache2.2, php5, mysql, phpmyadmin, mysql-workbench
Просьба за данный пункт сильно не бить. Это не инструкция "как это должно быть", это инструкция "как это работает у меня", конструктивная критика по делу приветствуется, если будут какие-либо дополнения или замечания, приму во внимание, и адаптирую себе для работы.
Перед установкой рекомендую в настройках роутера(на пример, мой ADSL модем 192.168.1.1 — пробросить порты Virtual Rout(Port Forwarding), пробрасываем 80 порт на 80 порт 192.168.1.100(.100 это у меня Raspberry PI))
Итак, поехали. GIT:
sudo apt-get install git
Апач:
sudo apt-get install apache2 apache2-doc libapache2-mod-scgi
Теперь php5 с плюшками:
sudo apt-get install php5 libapache2-mod-php5 libapache2-mod-auth-mysql php5 php5-common php5-curl php5-mysql php-image-graph imagemagick
Ребутим апач:
sudo service apache2 restart
Проверяем. Заходим в браузере на IP_малинки (в моем примере 192.168.1.100). Если появилась надпись «It works!», то я вас поздравляю, если нет — просьба попробовать
midori&
Затем вводим
localhost/
или localhost/apache2-default
. Если появилась надпись «It works!», то я вас поздравляю, если нет — просьба попробовать /var/www/
— папочка с вашими сайтами и скриптами./etc/php5/ и /etc/apache2/
— тут лежат конфиги php5 и апача. Далее проверим работоспособность php5, создадим файл test.php:
sudo nano /var/www/phpinfo.php
В него внесем изменения:
<?php
phpinfo();
?>
CTRL + X -> Y -> Enter, заходим по ссылке
IP_адрес_малины/test.php
(если через RPI то localhost/test.php
). Если появилось информация о PHP5 то все хорошо. Далее ставим PHPMyAdmin:sudo apt-get install phpmyadmin
Что бы получить доступ к phphmyadmin, необходимо в файл /etc/apache2/apache2.conf
sudo nano /etc/apache2/apache2.conf
вписать следующее (необходимо только до версии Squeeze, начиная с версии 6,0 это будет включено в сценарий установки пакета
/etc/apache2/conf.d/phpmyadmin.conf
-> ../../phpmyadmin/apache.conf
автоматически):Include /etc/phpmyadmin/apache.conf
Перезапускаем апач:
sudo /etc/init.d/apache2 restart
Проверяем, заходим в браузере
192.168.1.100/phpmyadmin
(c RPI localhost/phpmyadmin
). Думаю с установкой веб-сервера закончено. Про настройку DNS в bind9 и VIrtual Hosts в апаче будет в другой статье. Скажу еще то, что для себя я поставил так же RhodeCode на RPI и хотел поставить какой нибудь Issue трекер. Выбор пал на YouTrack от JetBrain, но JavaМашина сильно грузит Raspberry, поэтому не стал заморачиваться. Так как я пользуюсь phpstorm — вот небольшое отступление о том Как подружить phpstorm с нашей БД на RPI:
Врубаем PHPStorm заходим в DataBase (кнопка слева) -> new -> DataBase Source
Клик!
Database URL — адрес и порт удаленной машины, а так же имя БД
User — имя пользователя БД
Password — пароль пользователя БД
Клик!
SSH tunnel will be opened on localhost and port — порт обязательно должен быть свободным на машине, с которой нужно подключить phpstorm к mysql на удаленной машине.
Монтируем нашу USB флешку
Втыкаем флешку в RPI, вводим команду:
sudo blkid
Результат:
/dev/mmcblk0p1: SEC_TYPE="msdos" LABEL="boot" UUID="993B-8922" TYPE="vfat"
/dev/mmcblk0p2: UUID="fc254b57-8fff-4f96-9609-ea202d871acf" TYPE="ext4"
/dev/sda: LABEL="TR16GB" UUID="D29807B898079A5D" TYPE="ntfs"
Смотрим, запоминаем, TR16GB, тип «ntfs», устанавливаем поддержку ntfs:
sudo apt-get install ntfs-3g
Создаем каталог, куда будем монтировать нашу флешку:
sudo mkdir /mount/flash
Открываем файл:
sudo nano /etc/fstab
Дописываем туда:
"UUID="D29807B898079A5D" /mount/flash ntfs-3g rw,force,exec,users 0 0"
Где UUID, это уникальный id нашей флешки, который мы посмотрели командой
sudo blkid
в самом начале. Перезагружаем RPI:sudo reboot
Установка Samba
Приступаем к установке, Обновим на всякий случай все что мы тут натворили:
sudo apt-get update && sudo apt-get upgrade
Установим сервер Samba:
sudo apt-get install samba samba-common-bin
Теперь откроем /etc/samba/smb.conf и вписываем туда:
[global]
workgroup = WORKGROUP
security = share
guest ok = yes
browseable = yes
[flash]
path = /mount/flash
writeable = yes
readonly = no
browseable = yes
guest ok = yes
Где workgroup, это рабочая группа, скорее всего у вас WORKGROUP. Доступ к серверу будет осуществляться без авторизации. Если необходимо что бы при подключении надо было запрашивать пароль, то вместо
security = share
и guest ok = yes
напишите security = user
. Нужно так же создать нового пользователя, вводим команду sudo smbpasswd -a [имя]
, где [имя] — это имя пользователя. Сохраняем конфиг, перезагружаем:sudo /etc/init.d/samba restart
Я «замапил» себе сетевой диск, для удобства. Можно прямо с компа закидывать фильмы на RPI и смотреть уже на огромном телевизоре, который допустим стоит у вас где-нибудь в гостиной.
Клик!
Установка rTorrent, Screen, RuTorrent
Сначала поставим rTorrent
sudo aptitude install rtorrent
Затем создадим папку на нашей флешке, сюда будем качать наши фильмы:
mkdir /mount/flash/Torrent/
А так же папку, где у нас будет храниться информация о закачках:
mkdir /mount/flash/Torrent/.rt/
Затем переходим в домашнюю папку юзера, под которым будет работать rtorrent, у меня это
/home/pi
:cd /home/pi
Тут создаем файл ".rtorrent.rc", это настройки нашего rtorrent:
min_peers = 1
max_peers = 30
download_rate = 0
upload_rate = 0
directory = /mount/flash/Torrent/
session = /mount/flash/Torrent/.rt/
port_range = 40890-40890
port_random = no
check_hash = yes
session_save = yes
encryption = allow_incoming,enable_retry,prefer_plaintext
use_udp_trackers = yes
dht = auto
dht_port = 6881
encoding_list = UTF-8
scgi_port = 127.0.0.1:5000
Описание настроек можно посмотреть здесь. Настроим автозагрузку и установим screen для работы rtorrent в фоне:
sudo aptitude install screen
sudo wget http://libtorrent.rakshasa.no/attachment/wiki/RTorrentCommonTasks/rtorrentInit.sh?format=raw -O /etc/init.d/rtorrent
Отредактируем скрип для корректной работы:
sudo nano /etc/init.d/rtorrent
в строке
user="user"
пишем user="pi"
. Сохраняем. Теперь все это дело добавим в автозагрузку и запустим:sudo chmod 755 /etc/init.d/rtorrent && sudo update-rc.d rtorrent defaults && sudo /etc/init.d/rtorrent start
Настроим апач, включим модули:
sudo a2enmod scgi
Отредактируем файл
/etc/apache2/apache2.conf
— в самом конце файла нужно добавить строку — "SCGIMount /RPC2 127.0.0.1:5000
". Перезапускаем апач:sudo service apache2 restart
Пришло время ставить web-морду для нашего rtorrent. Я выбрал ruTorrent, т.к. она простенькая и на русском языке. Сначала поставим Subversion:
sudo apt-get install subversion
Теперь загрузим ruTorrent:
cd /var/www/
sudo svn checkout http://rutorrent.googlecode.com/svn/trunk/rutorrent
Выставим права на папку:
sudo chown -R www-data:www-data ./rutorrent/
Осталось проверить работу нашей web-морды, заходим в браузере
ip_адрес_RPI/rutorrent
(если с RPI то localhost/rutorrent
):Вуаля
Ну вот вроде и все. Теперь мы имеем готовый к работе RPI, для web-разработчиков, которые в ночь с пятницы на субботу могут поставить качать свой любимый сериал и на следующее утро, лежа на диване смотреть все это дело на огромном телике. Спасибо за внимание.
P.S. Хочу принести извинения за отсутствие некоторых ссылок на сторонние ресурсы, материалом которых я руководствовался т.к. делал я это давно, а опубликовал только сейчас.