173

Домашний сервер

Скорее всего, куча народу занимались подобным до меня, но я напишу.


Как-то раз стало лень мне вставать с дивана, чтобы переключить музыку на колонках в другом конце комнаты. Через пару дней я увидел окончательную реализацию своей идеи.

Была поставлена цель: создать устройство, позволяющая удаленно контролировать воспроизведение музыки на аудиосистеме.


Исходные данные: Одноплатный компьютер Raspberry Pi, MicroSD карта на 4 Гб, USB HDD (я взял терабайтник), USB звуковая карта.


В процессе настройки я добавил к этому устройству некоторые дополнительные функции, а конкретно файлопомойки и торрентокачалки.


Я выбрал Raspberry Pi, так как она не издает шума от слова совсем и недорогая, по сравнению с обычными компьютерами.

Купил ее я на aliexpress(https://ru.aliexpress.com/item/Original-Raspberry-Pi-3-Model...)


После того, как мне пришла плата, я записал на sd карту операционную систему raspbian, подключил usb-клавиатуру, hdmi монитор и включил. Сразу, чтобы не возникало вопросов: стандартная пара логин/пароль - "pi" / "raspberry".

Подробно об этом написано здесь: https://geekelectronics.org/raspberry-pi/raspberry-pi-pervyj...


После того, как вы получили доступ к командной консоли, необходимо настроить работу сети. Гайд подразумевает, что вы имеете доступ к домашней wifi сети, способны изменить конфигурацию роутера.


До этого вы проводите начальную конфигурацию устройства в псевдографической утилите raspi-config. Если при первом входе в систему она не запустилась - войдите в консоль и наберите команду sudo raspi-config


В этой утилите вы настраиваете все под себя как вам угодно, однако не забудьте включить сервер SSH для более удобной настройки устройства через Interfaces > SSH > Enable


Первым делом, подключаемся к wifi. Вот хорошая статья: http://robocraft.ru/blog/electronics/3162.html


После того, как подключились к wifi, нам необходимо получить статический адрес в локальной сети. Я знаю два способа сделать это.

1) Наилучшем вариантом будет настройка роутера

Необходимо найти настройку DHCP сервера и сделать так, чтобы он выдавал нашему устройству определенный IP-адрес. В моем роутере это делается в таком окошке, у вас может быть по другому.

Домашний сервер

2) Прописать статические настройки в системе. Для этого редактируем файл /etc/network/interfaces(это делается командой sudo nano /etc/network/interfaces)

В файле находим строку, которую меняли при настройке wifi, а именно

"iface wlan0 inet manual"

и меняем manual на static, а сразу после этой строки дописываем

"address 192.168.123.254 # ip-address

netmask 255.255.255.0 # маска подсети

network 192.168.123.0 # подсеть

broadcast 192.168.123.255 #широковещательный адрес

gateway 192.168.123.1 # шлюз"


Я, тем не менее, рекомендую вам использовать первый метод, так как он практически исключает возможность конфликта адресов в сети.


Поскольку мы получили статический адрес в сети, мы можем спокойно отключить монитор от Raspberry Pi и пойти за свой домашний компьютер. Или остаться у монитора с raspberry pi. Вариативно.


Если вы захотели посидеть за вашим компьютером, то подключитесь к Raspberry Pi по SSH. В линуксовых системах введите команду ssh pi@192.168.1.231(Вместо него статический ip, который вы дали микрокомпьютеру. В windows скачайте ssh-клиент PUTTY(или какой-нибудь другой) и подключитесь подобным образом к Raspberry Pi.


Самое время научить наш сервер правильно монтировать жесткий диск. Сначала, разумеется, нужно подключить его к одному из USB-портов.

Для поддержки NTFS необходимо установить пакет ntfs-3g. Для этого в консоли набираем команду:


sudo apt-get install ntfs-3g


Создаем каталог, в который будем монтировать наш USB HDD


sudo mkdir /mnt/usbdrive


Устанавливаем права на запись на этот каталог


sudo chmod 777 /mnt/usbdrive


Прописываем в конец файла /etc/fstab команду авто монтирования нашего USB HDD:


/dev/sda1 /mnt/usbdrive ntfs-3g defaults,rw 0 1


Перезагружаем устройство:


sudo reboot


После перезагрузки вы сможете увидеть все файлы с диска, зайдя в папку /mnt/usbdrive



Установим драйвер звуковой карты:


sudo apt-get update

sudo apt-get install alsa-utils -y

sudo modprobe snd_bcm2835

sudo amixer cset numid=3 1


В самый конец файла /etc/modules добавим строку snd_bcm2835


Проверим звук. Не забудьте воткнуть наушники/колонки


Скачаем аудиофайл с интернета:


wget http://dl1-1.mp3party.net/download/7128


sudo apt-get install mplayer -y


mplayer 7128


Как вы можете слышать, звук не очень качественный. Объясняется это тем, что звуковая карта Raspberry Pi работает по очень своеобразной схеме: вместо стандартного преобразователя цифрового сигнала в аналоговый там установлен широтно-импульсный модулятор, управляемый непосредственно процессором. Эта технология значительно уступает обычной по качеству. Выход - подключение внешней audio карты.


У меня внешняя аудиокарта заработала после того, как я создал файл /etc/modprobe.d/alsa.conf и добавил в него "options snd slots=snd_usb_audio,snd_bcm2835"


Далее - настройка плеера. Я выбрал плеер mpd, поскольку им можно управлять практически с любого устройства, в частности с android смартфона.


sudo apt-get install mpd -y

Далее необходимо отредактировать файл конфигурации mpd( /etc/mpd.conf)

Я лишь дам вам ссылку на свою конфигурацию, а вы поменяйте ее под себя.

https://pastebin.com/cEiJnVzd


sudo reboot


mpc update


mpc listall | mpc add


mpc play


После этого вы можете установить приложение mpdroid(например) на свой телефон, ввести настройки подключения к raspberry pi и управлять воспроизведением.


Если будет кому-то интересно, я допишу часть с настройкой файлового сервера и торрент-клиента.

Arduino & Pi

1.5K постов20.9K подписчиков

Правила сообщества

В нашем сообществе запрещается:

• Добавлять посты не относящиеся к тематике сообщества, либо не несущие какой-либо полезной нагрузки (флуд)

• Задавать очевидные вопросы в виде постов, не воспользовавшись перед этим поиском

• Выкладывать код прямо в посте - используйте для этого сервисы ideone.com, gist.github.com или схожие ресурсы (pastebin запрещен)

• Рассуждать на темы политики

• Нарушать установленные правила Пикабу

Вы смотрите срез комментариев. Показать все
16
DELETED
Автор поста оценил этот комментарий

На мой взгляд не очень хорошее применение малинки и не очень хороший топик.

1) Зачем городить костыли raspbian'ом для создания медиа-центра, когда уже есть готовый XBMC http://www.armlinux.ru/%D0%B4%D0%B5%D0%BB%D0%B0%D0%B5%D0%BC-...

2) Использовать малинку под nas? в интернете 1001 статьей почему это делать не стоит. Вас устраивает скорость работы такой системы?

3) И если уж взялись писать мануалы: Либо описывайте параметры комаднд, которые пишите, либо описывайте их общее назначение:

>iface wlan0 inet manual - не факт что сработает. системд и прочее.

>/dev/sda1 /mnt/usbdrive ntfs-3g defaults,rw 0 1 - а если он у меня вдруг sdb?


p.s. простите что придрался :-[

раскрыть ветку (9)
6
Автор поста оценил этот комментарий
Не придрался, а по теме.
Если человек пишет ман, пусть думает о тех, кто его будет курить.
99% юзернеймов будут копипастить и удивляться, почему не работает. А команды типа ls -lha /dev/sd* - нет.
2
Автор поста оценил этот комментарий

Похоже вы шарите. Нужна небольшая плата меньше microITX главное что бы с 4-6 выходами на SATA 3.0 под файловик, существует такое? Идеально если с RG-45 двумя портами USB и в размер диска 3.5 дюйма.

раскрыть ветку (6)
0
DELETED
Автор поста оценил этот комментарий

>Похоже вы шарите

Ну есть немного.

>что бы с 4-6 выходами на SATA 3.0

среди одноплатников братьев-близнецов малинки таких нету. есть orange pi и banana pi, но там по одной сате.

Если брать обычную платформу интел, то там полно таких плат в формате mini-itx(не знаю что вы именно имели ввиду microATX или mini-itx). На яндекс.маркете поставьте в фильтрах sata 6gb/s от 4 и форм-фактор mini-itx - куча предложений.

раскрыть ветку (5)
0
Автор поста оценил этот комментарий

у orange pi+ usb-to-sata, и скорость эзернета говно. Так что не очень советую в плане файлопомойки

0
Автор поста оценил этот комментарий

Ох, вот я облажался, куча этих формфакторов с похожими названиями. Имел в виду mini itx. Просто мало ли кто то придумал удобные аналоги NAS на атомах/селеронах по не конской цене.

раскрыть ветку (3)
1
Автор поста оценил этот комментарий

Что значит "не конской". Дешевле, чем собрать самому, купить готовый NAS не получится скорее всего никогда. ИМХО готовые решения NAS - только для далеких от техники людей. Если руки растут откуда надо, то лучше собрать самому - спокойно можно получить цену такого сборного NAS с дисками аналогичную готовому, но без дисков. Линуксовых сборок под NAS не мало. А если прицеливаетесь на будущее (медиаконтент начинает хавать дисковую память не по-детски), то брать готовый NAS - вообще бессмыслица. За вполне вменяемые деньги можно собрать комп с корпусом на 8-10 дисков и докупать их по мере исчерпания объема уже стоящих. При этом аппаратная часть не устареет по крайней мере лет 10 - ну нет и не предвидится пока сетей (я не беру в расчет всякие FibreChannel и прочие решения для ЦОД), пропускная способность которых выше, чем у SATA интерфейса.

раскрыть ветку (2)
0
Автор поста оценил этот комментарий

Ну смотри.
*Можно собрать пеку, она выйдет дешевле любого NAS с более чем 2 дисками, однако компактным его не назвать даже на miniITX.
*Видел всякие нишевые продукты с разумной ценой но совсем не для этого, контроллеров как и портов SATA просто нет.
*В идеале хочу видеть одноплатник в габаритах 145/100/25 питание 12-24V с одной стороны пара USB с другой выводы на питание, 4-10 SATA, RG-45. Внутри на плате было бы что то вроде CPU 1-2 ядра, схемы питания, ОЗУ 1-2Gb, и флэш память ~8Gb.

Идея в чём, что бы конструкция была модульная, что бы человек мог распечатать на 3d-принтере корпус, салазки и обычными шлейфами подключить диски (что делать с питанием уже их без понятия). В общем такое я и ищу, но увы.

раскрыть ветку (1)
0
Автор поста оценил этот комментарий
Freenas zfs, 1Tbhdd=1Gbram
Работает как часы.
Так же перепаивал tplink mr3020 с 32 ram на 64.
По факту для nas нужен itx с одним pciexpress, и найти pciexpress-sata контроллер. (китайские nas так работают)
До определенных нагрузок тянет, но если нужна 10g сеть, то freenas вполне подходит.
Информация актуальна на 2014 год. Сейчас занимаюсь другим.
1
Автор поста оценил этот комментарий
Я с вами согласен, да.
Вы смотрите срез комментариев. Чтобы написать комментарий, перейдите к общему списку

Темы

Политика

Теги

Популярные авторы

Сообщества

18+

Теги

Популярные авторы

Сообщества

Игры

Теги

Популярные авторы

Сообщества

Юмор

Теги

Популярные авторы

Сообщества

Отношения

Теги

Популярные авторы

Сообщества

Здоровье

Теги

Популярные авторы

Сообщества

Путешествия

Теги

Популярные авторы

Сообщества

Спорт

Теги

Популярные авторы

Сообщества

Хобби

Теги

Популярные авторы

Сообщества

Сервис

Теги

Популярные авторы

Сообщества

Природа

Теги

Популярные авторы

Сообщества

Бизнес

Теги

Популярные авторы

Сообщества

Транспорт

Теги

Популярные авторы

Сообщества

Общение

Теги

Популярные авторы

Сообщества

Юриспруденция

Теги

Популярные авторы

Сообщества

Наука

Теги

Популярные авторы

Сообщества

IT

Теги

Популярные авторы

Сообщества

Животные

Теги

Популярные авторы

Сообщества

Кино и сериалы

Теги

Популярные авторы

Сообщества

Экономика

Теги

Популярные авторы

Сообщества

Кулинария

Теги

Популярные авторы

Сообщества

История

Теги

Популярные авторы

Сообщества

Недвижимость и ремонт

Теги

Популярные авторы

Сообщества