Автор Тема: Малиновый download-сервер на базе Raspberry Pi  (Прочитано 16561 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн ludoed

  • Местный
  • *****
  • Автор темы
  • Сообщений: 861
  • ludoed1970@jabber.ru
Малиновый download-сервер на базе Raspberry Pi
« : Сентябрь 04, 2012, 21:17:55 »
Медиасервер на базе Raspberry Pi

Понимаю, что тема необычная, но хотелось поделиться опытом, не знал, в какой раздел лучше поместить, перенос темы на усмотрение модераторов

   В начале августа мне попался журнал Linux Format со статьей о мини-компьютере Raspberry Pi. Для тех, кто еще не в курсе – это одноплатный мини-компьютер с ARM-процессором, имеющий минимальную стоимость – $35 в модификации B.
   Изначально Raspberry Pi задумывался как дешевая платформа для возбуждения интереса к программированию у школьников. Т.е. его создатели Эбен Аптон и Дэвид Брабен, (кстати - автор легендарной спектрумовской игры Elite), собирались частично заполнить нишу, образовавшуюся в нижнем ценовом сегменте после ухода с массового потребительского рынка компьютера ZX Spectrum. Частично – потому что использовать его в качестве игровой приставки невозможно, а вот для обучения программированию – вполне.

   Технические характеристики:
http://www.raspberrypi.ru/doc/view.29.html

   Особенностью Raspberry Pi является минимальное энергопотребление – около 1 Ватта и бесшумная работа. Запустить Pi можно от 4-х батареек формата АА. При этом Pi имеет достаточно мощный графический чип, которого, якобы, хватает для воспроизведения HD-контента.
   Это, вместе с минимальной ценой, и натолкнуло меня на мысль, что на базе Pi можно сделать медиасервер – круглосуточную качалку для торрентов и их воспроизведения на телевизоре или проекторе.
   Порывшись в залежах компьютерного хлама, я нашел старый винт на 80 Гб с интерфейсом IDE, переходник для подключения винта по USB, с внешним блоком питания, а также зарядное устройство от безвременно почившей в бозе электронной книги Wexler 7001, USB-мышь и кабель LAN. Пришлось докупить: карту памяти SDHC на 16 Гб, с которой будет загружаться система, внешнюю USB-клавиатуру, т.к. у моей основной клавиатуры разъем PS/2, и USB-хаб с внешним питанием, от которого, впрочем, реально толку не было из-за чисто английских странностей пациента.

   Raspberry Pi был приобретен в Wimaxstore по цене 2280 рублей, что, безусловно, очень дорого по сравнению с его исходной ценой. Но из-за бугра я раньше ничего не заказывал, и связываться с этим делом не хотелось, а цена сама по себе не запредельная.

   В качестве операционной системы на офсайте предлагаются 3 варианта: Raspbian Wheezy – сборка Debian для ARM-процессора, ArchlinuxARM, и некий Qtonpi – как я понял, спецсборка с графическим окружением на библиотеках Qt. ОС должна грузиться с карты памяти, и именно исходя из этого был выбран вариант на базе Debian – так как Арч быстро замучает карту своими бесконечными обновлениями, а для сервера важнее стабильность софта, чем его свежесть.
   ОС закатывается на карту памяти командой dd, делается это легко и непринужденно. В результате на карте образуются 2 раздела, один содержит ядро, несколько текстовых конфигов и проприетарные модули для графического чипа, на другом живет стандартная файловая система Unix.
   После чего карта была воткнута в плату, к плате подоткнута клавиатура, мышь, кабель HDMI к LCD-панели и сетевой кабель в роутер. Кабель питания в зарядку от электронной книги, и вперед.
   По умолчанию Pi грузится в текстовую консоль, и в первой текстовой консоли запускается псевдографическая утилита конфигурирования, где можно настроить автозапуск графического окружения при загрузке, старт ssh-сервера, и ещё кое-какие подробности.
   В сборке Raspbian используется LXDE, с pcmanfm в качестве файл-менеджера. Предустановленный софт – Python, Scratch, Idle в качестве среды программирования, Leafpad, Midori.
Скриншот :)


   Фотоаппарат слегка обалдел от непонятных условий съемки, несколько раз менял на лету баланс белого, в итоге остановился на малиновом (кто не в ладах с английским – Raspberry означает “малина”, что наглядно видно на обоях)

   Никакого графического видеоплеера по умолчанию нет. VLC на этом железе висит и тормозит, mplayer при раскрытии на полный экран вешается, и фильмы со звуком mp3 не проигрывает, хотя libmp3lame0 установлена.
   Ещё для Pi существует сборка XBMC, однако эта поделка при монтировании диска с большим количеством фильмов начинает их индексировать и благополучно виснет, :) Звук mp3 она проигрывает, но вот изображение, кодированное стандартным кодеком xvid осилить не может :)
   Оказалось, в Pi установлен по умолчанию какой-то omxplayer, который умеет играть видео на полный экран прямо из текстовой консоли, со звуком mp3. Однако плеер очень непонятный, похоже, еще недоделанный. Стартовать его надо из консоли, или эмулятора терминала, указывая, куда выводить звук — в HDMI или аудио-разъем minijack. Также он не понимает формат mkv, играет только avi и mp4.
   Он действительно воспроизводит HD-видео в формате 1080p в контейнере mp4 с диска, подмонтированного по сети без тормозов.
   Управление play/pause — пробел, громкость – «+» и «-». Для запуска фильма подключать к Pi клавиатуру или мышь необязательно, достаточно лишь воткнуть кабель HDMI и LAN, после чего законнектиться к Pi по ssh, подмонтировать сетевой диск с фильмами и запустить воспроизведение командой
omxplayer -o hdmi название_фильмаесли смотрим на телевизоре с выводом звука по HDMI. Если колонки подключены к minijack'у на борту Pi, используется опция -o local
   
      Pi можно подключать не только к телевизору, но и к проектору. Чтобы проектор нормально опознался, он должен быть включен до загрузки Pi. Неудобство заключается в том, что соединение HDMI-кабеля надо производить при полном обесточивании обоих устройств, так что закачку приходится прерывать, все выключать и включать заново.
   Поскольку кабель HDMI был короткий, а перетаскивать Pi на проекторный столик ради проверки 5 минутного ролика не хотелось – в него дофига кабелей воткнуто, я подкатил столик к Pi и спроецировал изображение на белую дверь спальни. Открыв на двери pcmanfm и терминал, я сообразил, что надо взять наушники в спальне.    Пришлось войти в файловую систему Debian непосредственно через дверь :-D

   Если с воспроизведением фильмов у Pi все не слишком безоблачно, то вот с второй  возложенной на него задачей — закачкой торрентов, он справляется на раз, хотя настройка оказалась не слишком интуитивной.
   Download-server на базе Raspberry Pi.

   Необходимо установить пакет transmission-daemon, а затем командой
sudo service transmission-daemon stopостановить демон, и сделать необходимые настройки в файле /etc/transmission-daemon/settings.json
“rpc-whitelist”: “127.0.0.1″, изменить на “rpc-whitelist”: “*.*.*.*”,
“rpc-password”: “password”, изменить на “rpc-password”: “сюда пишем пароль“,
“rpc-username”: “username”, изменить на “rpc-username”: “имя с которым будем входить“,
“download-dir”: “/var/lib/transmission-daemon/downloads”, изменить на “download-dir”: “/путь/куда/будут/сливаться/файлы”
   Необходимо также учитывать, что демон работает под своей учетной записью и к группе, в которую входит пользователь, не относится. Поэтому надо дать разрешение на запись в папку для скачиваемых файлов для пользователя debian-transmission.
sudo chmod g+rw /путь/куда/будут/сливаться/файлы
sudo chgrp -R debian-transmission /путь/куда/будут/сливаться/файлы
Я не стал заморачиваться и дал на папку права 777.
Чтобы подключаемый по USB винт монтировался каждый раз в одну и ту же папку, его надо прописать в /etc/fstab примерно вот так:
UUID=cab05f44-22ba-417c-b77f-716b89149d26 /media/sda1 ext4 rw,users,relatime 0 0
UUID диска можно подсмотреть командой
sudo blkid
   После всех настроек стартуем демон командой
sudo service transmission-daemon start
   Чтобы с удобством кормить нашего домашнего демона свежими торрентами, можно коннектиться к нему через web-интерфейс из любого браузера по адресу:
http://IP_адрес_Pi_в_домашней_сети:9091/
   Особенно приятно делать это лежа в постели, или сидя в туалете, с нетбука, смартфона, или другого портативного устройства – при этом естественным образом осознаешь, что будущее наступило. :)
   В Рунту-Gnome я поставил для управления демоном прогу transgui, чего и всем рекомендую. В ней два основных плюса:
1. Можно задать параметры соединения, чтобы не вводить каждый раз логин и пароль
2. Интерфейс у нее похож не на стандартный transmission, а на deluge, что гораздо удобнее — в нижней части окна на 4-х вкладках отображается полная информация по выделенной закачке, и не надо лазить в свойства, как в стандартном transmission. Это как раз то, чего мне так не хватало в transmission-gtk.

   Как я упоминал, у Pi есть некоторые чисто английские странности. У него всего 2 USB-порта, поэтому я пробовал подключать к нему USB-концентратор с внешним питанием, а уже в него втыкать клавиатуру, мышь, флешки и внешние винты. Так вот, концентратор он видит нормально, клавиатура и мышь через концентратор работают, а ни винты ни флешки не определяются. Притом, что один из опробованных винтов — 3,5'' IDE Seagate –  запитывался через собственный блок питания.
   Если же втыкать винт или флешку не в концентратор, а во второй, остающийся свободным USB-порт, винт некоторое время виден в системе, но недоступен, а потом он отваливается.
   Das ist fantastish.

Но, тем не менее, игрушка оказалась недорогая и весьма полезная.
все юниксы очень дружелюбны.. они просто очень разборчивы в друзьях ;)

Настоящее труЪ: самописное ядро, выращенные на кухне кристаллы и программирование перемычками :)

Оффлайн vita

  • Местный
  • *****
  • Сообщений: 974
  • Fiat lux! (Да будет Свет!)
    • Форум проекта Matuntu
Re: Малиновый download-сервер на базе Raspberry Pi
« Ответ #1 : Сентябрь 04, 2012, 22:11:05 »
Уважаемый ludoed ! Интересная реализация download-сервер на базе Raspberry Pi у Вас получилась. И описана Вами великолепно. У меня тоже была такая задача превратить маломощный нетбук RoverBook в интернет-шлюз + торрент-сервер. Всё получилось, но не устраивала низкая скорость торрентов. Выяснилось, что его сетевая карта имела ограничения в 10 Mb/s. По этой причине пришлось приобрести внешнюю сетевую карту, а позднее и оборудование для этих целей поменяла на более производительное. Также имется возможность "повесить" работу торрента на аппаратные медиаплееры типа IconBit или PowerZest или аналогичные, которые могут эти задачи выполнять без подключения компьютера и монитора лишь при включенных LAN-кабеле или Wi-Fi адаптере (в зависимости от спецификации плеера). Да и с количеством видео/аудио форматов у них гораздо богаче будет, если подключить их к телевизору.  И в цене они сейчас стали более доступными. А программное обеспечение для этих девайсов имеется в сети в виде обновляемых "прошивок".
Per aspera ad astra! (Через тернии к звездам!)

Оффлайн ludoed

  • Местный
  • *****
  • Автор темы
  • Сообщений: 861
  • ludoed1970@jabber.ru
Re: Малиновый download-сервер на базе Raspberry Pi
« Ответ #2 : Сентябрь 04, 2012, 22:34:16 »
Vita
Я согласен, вариантов - масса, меня заинтересовал этот. Скорость вполне приличная, кстати.

Здесь тоже ни большой комп ни монитор не включены, лежит себе винт, в него воткнут кабель, на другом конце плата размером  с визитку, в нее только питание и LAN к роутеру воткнуты. Винт и переходник уже были в наличии, затрат минимум, а повозиться интересно

К тому же на Pi еще и другие задачи решать можно, например, программировать на Питоне, медиаплеер на это не способен.
Насчет форматов - это не проблема, mkv на телевизор я могу вывести и с компа и с ноута

Вы ж сами понимаете, в нашем деле процесс часто важнее, чем результат :)
все юниксы очень дружелюбны.. они просто очень разборчивы в друзьях ;)

Настоящее труЪ: самописное ядро, выращенные на кухне кристаллы и программирование перемычками :)

Оффлайн calambus

  • Местный
  • *****
  • Сообщений: 1465
  • calambus@jabber.ru
Re: Малиновый download-сервер на базе Raspberry Pi
« Ответ #3 : Сентябрь 04, 2012, 23:02:21 »
Цитировать (выделенное)
Автор: ludoed
Вы ж сами понимаете, в нашем деле процесс часто важнее, чем результат Улыбающийся
Категорически согласен с этим мнением , спасибо за подробный комментарий ...
опыт увеличивается пропорционально количеству выведенных из строя Систем и оборудования...
Руководство по добавлению изображений на Форум

Оффлайн vita

  • Местный
  • *****
  • Сообщений: 974
  • Fiat lux! (Да будет Свет!)
    • Форум проекта Matuntu
Re: Малиновый download-сервер на базе Raspberry Pi
« Ответ #4 : Сентябрь 05, 2012, 08:48:11 »
Вы ж сами понимаете, в нашем деле процесс часто важнее, чем результат :)
ludoed! Конечно, понимаю и всецело поддерживаю таких людей как Вы. Поэтому и с Линуксом подружилась. Просто сейчас мне приходится задействовать в торрентах два трёхтеррабайтника с 3D (огромнейшие файлы) и такое решение стало бы не приемлемым. А так идея очень замечательная!  ;)
Per aspera ad astra! (Через тернии к звездам!)

Оффлайн jobless

  • Активист
  • ****
  • Сообщений: 252
Re: Малиновый download-сервер на базе Raspberry Pi
« Ответ #5 : Сентябрь 05, 2012, 09:55:36 »
Пока без комментариев :)
http://www.cl.cam.ac.uk/freshers/raspberrypi/tutorials/os/
Runtu Lite of this insight!!! ... она такая Lite !!!

Оффлайн vita

  • Местный
  • *****
  • Сообщений: 974
  • Fiat lux! (Да будет Свет!)
    • Форум проекта Matuntu
Re: Малиновый download-сервер на базе Raspberry Pi
« Ответ #6 : Сентябрь 05, 2012, 12:20:57 »
Пока без комментариев :)
http://www.cl.cam.ac.uk/freshers/raspberrypi/tutorials/os/

Так было бы лучше. Одним словом, речь идёт об обучении работе с использованием данного девайса.
Per aspera ad astra! (Через тернии к звездам!)

Оффлайн ludoed

  • Местный
  • *****
  • Автор темы
  • Сообщений: 861
  • ludoed1970@jabber.ru
Re: Малиновый download-сервер на базе Raspberry Pi
« Ответ #7 : Сентябрь 05, 2012, 19:03:11 »
jobless

Для этого я уже стар  :( Не осилить
все юниксы очень дружелюбны.. они просто очень разборчивы в друзьях ;)

Настоящее труЪ: самописное ядро, выращенные на кухне кристаллы и программирование перемычками :)

Оффлайн gvitaly

  • Местный
  • *****
  • Сообщений: 516
Re: Малиновый download-сервер на базе Raspberry Pi
« Ответ #8 : Сентябрь 05, 2012, 20:27:33 »
Интересно, эта малина потянет небольшой игровой сервер, + одновременно небольшой сайтик игры?
(Для этого и хочу его приобрести).

Оффлайн ludoed

  • Местный
  • *****
  • Автор темы
  • Сообщений: 861
  • ludoed1970@jabber.ru
Re: Малиновый download-сервер на базе Raspberry Pi
« Ответ #9 : Сентябрь 05, 2012, 21:17:50 »
Интересно, эта малина потянет небольшой игровой сервер, + одновременно небольшой сайтик игры?
(Для этого и хочу его приобрести).

Мнение с форума Малинки
http://www.raspberrypi.ru/forum/viewtop.83.html
все юниксы очень дружелюбны.. они просто очень разборчивы в друзьях ;)

Настоящее труЪ: самописное ядро, выращенные на кухне кристаллы и программирование перемычками :)

Оффлайн gvitaly

  • Местный
  • *****
  • Сообщений: 516
Re: Малиновый download-сервер на базе Raspberry Pi
« Ответ #10 : Сентябрь 05, 2012, 21:23:49 »
Я так понял, что сайт потянет, а вот как игровой сервер даже не знай.

Оффлайн calambus

  • Местный
  • *****
  • Сообщений: 1465
  • calambus@jabber.ru
Re: Малиновый download-сервер на базе Raspberry Pi
« Ответ #11 : Сентябрь 05, 2012, 21:50:12 »
 Raspberry Pi в России
Цитировать (выделенное)
Raspberry Pi это
Микросхема одноплатного компьютера на базе процессора ARM 11 c тактовой частотой 700 mhz.
Особенностью данной микросхемы является её низкая стоимость - 25$ за версию со 128 MB оперативной памяти
и малый размер - примерно с кредитную карту.

На плате также располагаются порты ввода/вывода, 2 разъёма USB 2.0, отсек для карт памяти SD/MMC/SDIO,
Ethernet-контроллер, композитный и HDMI видеовыходы.
Поддерживается открытое ПО - Ubuntu, Iceweasel, KOffice, Python и т.д
Основные компоненты Raspberry Pi

    SoC: медиапроцессор Broadcom BCM2835, включающий в себя:
        Процессор: ARM1176JZF-S ARM11, тактовая частота 700MHz;
        Видеопроцессор: Broadcom VideoCore GPU с поддержкой OpenGL ES 1.1, OpenGL ES 2.0, аппаратного ускорения OpenVG 1.1,
         Open EGL, OpenMAX и видеодекодера H.264.
        Цифровой сигнальный процессор: на плате есть ЦСП, но пока без открытого API для разработчиков
        (работы в этом направлении ведуться)
        Оперативная память: 128MB (Модель A) или 256MB (Модель B)
   1: Разъём для подключения питания (6-20v)
   2: UART
   3: Слот для карт памяти SD/MMC/SDIO
   4: Разъём HDMI
   6: Audio разъём: 3.5mm stereo jack
   7: Композитный видеовыход RCA
   8: 1x USB 2.0 или LAN9512 (для Модели А) и 2x USB 2.0 (J10: модель B)
 10: 10/100Mb RJ45 Ethernet
 11,14: 1.27mm колодка выводов, включающая ~16 портов ввода/вывода (3.3v), интерфейсы I2C и SPI и интерфейс ARM JTAG.
  12: интерфейс DSI interface
  13: интерфейс MIPI CSI-2
  Магазин

Ожидаемая дата начала продаж - февраль 2012 года.
Приобрести RaspberryPi можно будет на официальном сайте Raspberry Pi Foundation (raspberrypi.org).
Первые 10.000 устройств должны поступить в продажу в феврале.
опыт увеличивается пропорционально количеству выведенных из строя Систем и оборудования...
Руководство по добавлению изображений на Форум

Оффлайн Rasidel

  • Прохожий
  • *
  • Сообщений: 1
Re: Малиновый download-сервер на базе Raspberry Pi
« Ответ #12 : Август 21, 2014, 15:58:37 »
Скажите пожалуйста, если на великолепном устройстве Raspberry Pi B+ поднять DLNA и transmission, причем он будет своими ресурсами перекодировать видео в понятный для ТВ формат, то будут заметны потери качества, торможение может и т.д., или это все будет конфетой?

Оффлайн ivm ®

  • Местный
  • *****
  • Сообщений: 934
  • ivm@jabber.at
    • Matuntu
Re: Малиновый download-сервер на базе Raspberry Pi
« Ответ #13 : Август 21, 2014, 16:44:40 »
Поскольку ... отсутствие топикастера тоже уже начинает беспокоить, то отвечу так. Как скажется на качестве видео зависит от тех настроек кодирования видео, которые Вы выставите, а от нагрузки будет зависеть время перекодирования. То бишь никаким образом на качество не влияет. Многие пользователи сети обмениваются файлами через торрентклиенты. Эта задача не требует больших ресурсов процессора и памяти, но нуждается в больших объёмах дискового пространства. То, что Raspberry Pi справляется с этой задачей, проверено, а вот насчёт перекодирования видео, точнее сказать, как быстро это будет происходить, проверьте на практике. Слабые машины перекодируют видео со скоростью несколько кадров в секунду, в то время как мощные и реальное время и 70-80 кадров в секунду, то есть более, чем в два раза быстрее длительности видео.
« Последнее редактирование: Сентябрь 02, 2014, 10:52:08 от HsH »
© ivm 1991 - настоящее время. All Rights Reserved.
OS Matuntu-Best/Matuntu-Trusty/Matuntu-TT64-M16

Оффлайн ludoed

  • Местный
  • *****
  • Автор темы
  • Сообщений: 861
  • ludoed1970@jabber.ru
Re: Малиновый download-сервер на базе Raspberry Pi
« Ответ #14 : Август 28, 2014, 21:09:57 »
Топикстартер в порядке, чего не скажешь о его Raspberry Pi  :'(
все юниксы очень дружелюбны.. они просто очень разборчивы в друзьях ;)

Настоящее труЪ: самописное ядро, выращенные на кухне кристаллы и программирование перемычками :)