Трябва да забавлявате хората, докато сте извън мрежата? Настройте своя Raspberry Pi като медиен сървър с помощта на Jellyfin.
Къмпингуването или караванирането извън мрежата е чудесен начин да избягате от суматохата и безпокойството на ежедневието. Но докато животът без мобилен сигнал може да ви помогне да се отпуснете, някои членове на вашата група може да копнеят за поточно видео и музика, с които са свикнали. Ето как да ги зарадвате...
Къмпингуването или караваната ви извън мрежата ви позволява да се доближите до природата и да изпитате живота, както нашите предци са правили преди хиляди години.
Вашата идея за добро прекарване може да е да изследвате изоставени пътеки и да изживеете спокойствието на древни гори, но ние можем гарантирано, че ако сте взели деца със себе си, те ще скучаят, когато настроите преместваемото си жилище на вечер.
Обратно у дома, те ще бъдат свикнали да се свързват с Netflix на своите телефони и да гледат най-доброто удобни за деца стрийминг услуги или слушане на мелодии от Spotify.
Разбира се, въпреки че вероятно планирате всички да носят телефони със себе си, е много малко вероятно да успеете да получите 5G или 5G+ сигнал от дълбините на дерето, което сте избрали за своя база.
Ще ви покажем как да настроите Raspberry Pi 4B като медиен сървър за филми, аудиокниги, музика и телевизионни предавания и как да се свържете с него от вашия телефон.
Всъщност не е нужно много, за да създадете идеалния офлайн медиен сървър и след като сте го настроили, можете да оставите захранването и интернет връзката у дома. За да започнете, уверете се, че имате:
- Raspberry Pi 4B
- SD карта с голям капацитет или USB флаш памет
- USB захранване
- интернет връзка
- Захранвана от слънчева енергия банка с голям капацитет и USB-C изход
- Захранвани със слънчева енергия батерии с голям капацитет за вашите телефони
- Цифрови медии, които искате да вземете със себе си. Филмите и предаванията трябва да бъдат в MP4 формат, за да избегнете напрежението на Pi с прекодиране.
След като разполагате с всичките си консумативи, можете да започнете да изграждате вашия офлайн медиен сървър Raspberry Pi.
За да започнете, инсталирайте операционна система на вашия Raspberry Pi. Препоръчваме Raspberry Pi OS Lite (64 бита) за този проект. Уверете се, че сте запомнили да щракнете върху иконата на зъбно колело в инструмента Raspberry Pi Imager, за да зададете потребителско име и парола, както и SSID и парола на вашата домашна Wi-Fi мрежа. Изключително важно е да зададете и своя Безжична LAN страна правилно.
Трябва също така да зададете приятелско име на хост, за да улесните свързването във вашата локална мрежа – ние избрахме „vanpi“, което първоначално ще ни позволи да се свързваме през SSH към [email protected]. След като операционната система е написана, поставете вашата SD карта или флаш устройство в Raspberry Pi и го свържете към вашето захранване.
Тъй като настройвате Pi като сървър, няма смисъл да го свързвате към монитор. Вместо това ще имате достъп до него чрез Secure Shell (SSH) и Сигурно копие (SCP). Ако използвате Linux или macOS, можете да използвате тези инструменти от вашия терминал. Ако сте на Windows, ще използвате PowerShell. Ако не сте сигурни как да използвате SSH, консултирайте се с нашето ръководство за как да осъществявате достъп и да контролирате своя Raspberry Pi дистанционно чрез SSH.
Свържете се с вашия Pi с:
ssh pi@vanpi.local
Ако сте избрали друго име на хост или потребител, трябва да използвате това вместо това.
Актуализирайте и надстройте всички предварително инсталирани пакети с:
sudo apt update && sudo apt upgrade -y
Jellyfin е безплатен софтуер за поточно предаване на медии с отворен код, който ще работи добре на вашия Raspberry Pi. С актуализирания софтуер вече можете да добавите ключа за хранилище Jellyfin:
sudo apt install curl gnupg
curl -fsSL https://repo.jellyfin.org/ubuntu/jellyfin_team.gpg.key | sudo gpg --dearmor -o /etc/apt/trusted.gpg.d/jellyfin.gpg
Следващата команда ще отрази вашия тип процесор и операционна система в текстов файл, който ще се използва за инсталиране на правилната версия на Jellyfin:
echo"deb [arch=$( dpkg --print-architecture )] https://repo.jellyfin.org/$( awk -F'=' '/^ID=/{ print $NF }' /etc/os-release )$( awk -F'=' '/^VERSION_CODENAME=/{ print $NF }' /etc/os-release ) main" | sudo tee /etc/apt/sources.list.d/jellyfin.list
Актуализирайте още веднъж и можете да инсталирате Jellyfin от новото хранилище:
sudo apt update
sudo apt install jellyfin
Когато се върнете към командния ред, стартирайте и активирайте Jellyfin като услуга:
sudo systemctl start jellyfin
sudo systemctl enable jellyfin
Вече трябва да имате вашите MP3 и MP4 файлове, готови за прехвърляне. Уверете се, че те са разделени в различни папки на вашия локален компютър и че папките имат лесни за запомняне имена като филми, показва, и музика.
Затворете SSH връзката, след което прехвърлете тези папки от вашия локален компютър на вашия Pi с:
scp -r movies/ shows/ music/ pi@vanpi.local:~
В зависимост от размера на вашата колекция, това прехвърляне може да отнеме няколко часа. Когато приключи, отворете браузър и въведете името на хоста на вашия Pi в URL лентата, след което натиснете Въведете. В нашия случай това би било vanpi.local: 8096.
Избери своя Език на дисплея, след което щракнете Следващия за да изберете потребителско име и парола за администраторския акаунт.
След това ще бъдете подканени да добавите вашите медийни библиотеки. Кликнете върху голямото синьо + и изберете типа медия от падащия списък, след което щракнете върху Добавяне на папки бутон.
Ще видите два елемента в списък: „/“ и „/boot“. Щракнете върху "/" тогава начало > пи > филми. След това натиснете голямото синьо Добре бутон. Повторете за другите си медийни папки. Когато сте щастливи, натиснете Добре отново.
Кликнете Следващия за да изберете език на метаданните и държава, след това Следващия отново и се уверете, че Разрешете отдалечени връзки към този сървър квадратчето е отметнато.
Кликнете завършеки влезте с идентификационните данни, които сте задали по-рано. Jellyfin автоматично ще сканира медиите във вашите папки, ще ги идентифицира и ще извлече свързани метаданни от интернет.
Когато приключи, вашият Jellyfin екземпляр трябва да изглежда подобно на екранната снимка по-горе.
Не е нужно да добавяте допълнителни потребители за Jellyfin, но индивидуалните акаунти могат да помогнат за предотвратяване на объркване. След това натиснете иконата на хамбургер горе вляво Табло > Потребители. Щракнете върху + икона за добавяне на потребители и задаване на разрешения за това кои библиотеки могат да се преглеждат. Добра идея е да поставите всички подходящи за деца медии в една папка и да ограничите по-младите потребители до тази библиотека. Кликнете Запазване когато приключите.
Настройте своя Raspberry Pi като точка за достъп
Досега сте имали достъп до своя Raspberry Pi през домашната си мрежа. Трябва да го настроите да действа като собствена точка за достъп, към която устройствата могат да се свързват без достъп до интернет.
SSH във вашия Raspberry Pi отново и инсталирайте hostapd:
sudo apt install hostapd
Активирайте услугата, така че да стартира веднага щом вашият Pi стартира:
sudo systemctl unmask hostapd
sudo systemctl enable hostapd
Ще ви трябват също dnsmasq, netfilter-persistent и неговия плъгин за iptables-persistent:
sudo apt install dnsmasq && sudo DEBIAN_FRONTEND=noninteractive apt install -y netfilter-persistent iptables-persistent
Вашата базирана на Pi мрежа трябва да получи собствен IP адрес. Използвайте nano, за да редактирате dhcpcd.conf конфигурационен файл:
sudo nano /etc/dhcpcd.conf
В края на файла поставете следното:
interfacewlan0
static ip_address=192.168.4.1/24
nohook wpa_supplicant
Запазете и излезте от nano с Ctrl + O тогава Ctrl + Xи редактирайте dnsmasq.conf файл:
sudo nano /etc/dnsmasq.conf
Изтрийте съдържанието и поставете:
interface=wlan0
dhcp-range=192.168.4.2,192.168.4.20,255.255.255.0,24h
domain=wlan
address=/van.wlan/192.168.4.1
Това ще позволи на вашия Pi да присвоява индивидуални IP адреси на устройства, които се свързват с него. Запазете и излезте от nano с Ctrl + O тогава Ctrl + X.
И накрая, конфигурирайте вашата точка за достъп:
sudo nano /etc/hostapd/hostapd.conf
Този файл ще бъде празен. Поставете следното:
country_code=GB
interface=wlan0
ssid=caravanlan
hw_mode=g
channel=7
macaddr_acl=0
auth_algs=1
ignore_broadcast_ssid=0
wpa=2
wpa_passphrase=caravan
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP
rsn_pairwise=CCMP
Уверете се, че сте задали правилния код на държавата и изберете разумен SSID и парола. Ние избрахме каравана като наш SSID, защото е тематично подходящ, лесен за запомняне и се римува.
Запазете и излезте от nano с Ctrl + O тогава Ctrl + X, след това рестартирайте Pi:
sudo reboot
Свържете се с вашата нова Raspberry Pi LAN
Когато вашият Pi се рестартира, няма да можете да се свържете с него чрез SSH веднага, тъй като сега е в друга мрежа. Ако сте използвали предложеното от нас SSID име, можете лесно да го намерите и свържете се с новата Wi-Fi мрежа: каравана.
За достъп до вашия Jellyfin сървър в мрежата, въведете van.wlan: 8096 или 192.168.4.1:8096. Вашите мобилни устройства могат или да използват вградения си уеб браузър, или специални приложения за iOS или Android.
Изтегли: Jellyfin за iOS | Jellyfin за Android (Магазин за игри) | Jellyfin за Android (F-Droid)
Въведете горните адреси в приложението, когато бъдете попитани за адреса на сървъра Jellyfin.
Със стотици филми, предавания и албуми, достъпни за вас и вашите колеги, дори когато сте в средата на никъде, важно е да имате достатъчно мощност за вашия Raspberry Pi и за устройствата, които имат достъп то. Слънчевите енергийни банки са отличен вариант и могат да поддържат устройствата ви през деня и нощта.