5 спосабаў карыснага выкарыстання Raspberry Pi

Прывітанне Хабр.

Raspberry Pi напэўна ёсць дома амаль у кожнага, і рызыкну выказаць здагадку, што ў многіх яна валяецца без справы. Хоць Raspberry гэта не толькі каштоўны мех, але і суцэль магутны fanless-кампутар з Linux. Сёння мы разгледзім карысныя магчымасці Raspberry Pi, для выкарыстання якіх код пісаць не давядзецца зусім.
5 спосабаў карыснага выкарыстання Raspberry Pi
Для тых каму цікава, падрабязнасці пад катом. Артыкул разлічаны для пачаткоўцаў.

Заўвага: артыкул разлічаны для пачаткоўцаў, але якія маюць хаця б базавыя паняцці аб тым, што такое IP-адрас, як зайсці на Raspberry Pi па SSH з дапамогай putty або любога іншага тэрмінала, і як рэдагаваць файлы рэдактарам nano. У якасці эксперыменту, у гэты раз я не буду "грузіць" чытачоў кодам для Python, праграмавання тут не будзе зусім. Для ўсяго ніжэйнапісанага будзе дастаткова толькі каманднага радка. Наколькі такі фармат запатрабаваны, буду глядзець паводле ацэнак тэксту.

Зразумела, я не буду разглядаць зусім ужо відавочныя рэчы тыпу FTP-сервера ці сеткавай шары. Ніжэй я пастараўся вылучыць нешта больш-менш карыснае і арыгінальнае.

Перад тым, як мы будзем нешта ўсталёўваць, важны савет: правільны блок харчавання (лепш фірмовы на 2.5А, а не noname-зарадка ад тэлефона) і радыятар на працэсар вельмі важныя для стабільнай працы Raspberry Pi. Без гэтага Raspberry можа завісаць, могуць з'яўляцца памылкі капіявання файлаў і інш. Падступнасць такіх памылак у тым, што выяўляюцца яны толькі зрэдку, напрыклад пры пікавай загрузцы CPU ці ў момант запісу вялікіх файлаў на SD-карту.

Перад усталёўкай якіх-небудзь кампанентаў пажадана абнавіць сістэму, інакш старыя адрасы для каманды apt могуць не спрацаваць:

sudo apt-get update

Зараз можна прыступаць да ўсталёўкі і наладзе.

1. WiFi кропка доступу

Raspberry Pi лёгка ператварыць у бесправадную кропку доступу, прычым нічога дакупляць не давядзецца, WiFi «на борце» ужо ёсць. Для гэтага неабходна ўсталяваць 2 кампаненты: hostapd (Host access point daemon, сэрвіс кропкі доступу) і dnsmasq (DNS/DHCP-сервер).

Усталёўваны dnsmasq і hostapd:

sudo apt-get install dnsmasq hostapd

Задаем статычны IP-адрас, які будзе мець Raspberry Pi у WiFi-сетцы. Для гэтага трэба адрэдагаваць файл dhcpcd.conf, увёўшы каманду sudo nano /etc/dhcpcd.conf. У файл трэба дадаць наступныя радкі:

interface wlan0
  static ip_address=198.51.100.100/24
  nohook wpa_supplicant

Як можна бачыць, у WiFi-сетцы наша Raspberry Pi будзе мець адрас 198.51.100.100 (гэта важна запомніць, калі на ёй будзе працаваць нейкі сервер, адрас якога трэба будзе ўвесці ў браўзэры).

Далей, мы павінны актываваць IP forwarding, для чаго выконваем каманду Sudo nano /etc/sysctl.conf і раскаментуем радок net.ipv4.ip_forward = 1.

Зараз трэба наладзіць DHCP-сервер - ён будзе раздаваць IP-адрасы падлучаным прыладам. Уводзім каманду sudo nano /etc/dnsmasq.conf і дадаем наступныя радкі:

interface=wlan0
dhcp-range=198.51.100.1,198.51.100.99,255.255.255.0,24h

Як мага бачыць, якія падключаюцца прылады будуць мець IP-адрасы ў дыяпазоне 198.51.100.1… 198.51.100.99.

Нарэшце, надышоў час наладзіць Wi-Fi. Рэдагуем файл /etc/default/hostapd і ўводзім там радок DAEMON_CONF="/etc/hostapd/hostapd.conf". Цяпер адрэдагуем файл hostapd.conf, увёўшы каманду sudo nano /etc/hostapd/hostapd.conf.
Уводзім параметры кропкі доступу:

interface=wlan0
driver=nl80211
ssid=Raspberry Pi
hw_mode=g
channel=7
wmm_enabled=0
macaddr_acl=0
auth_algs=1
ignore_broadcast_ssid=0
wpa=2
wpa_passphrase=12345678
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP
rsn_pairwise=CCMP

Тут важна звярнуць увагу на параметры "ssid" (імя кропкі доступу), "wpa_passphrase" (пароль), "channel" (нумар канала) і "hw_mode" (рэжым працы, a = IEEE 802.11a, 5 GHz, b = IEEE 802.11 b, 2.4/802.11 GHz, g = IEEE 2.4g, XNUMX GHz). Нажаль, аўтаматычнага выбару канала няма, так што найменш заняты канал WiFi прыйдзецца абраць самастойна.

Важна: у гэтым тэставым прыкладзе паказаны пароль 12345678, у рэальным пункце доступу трэба выкарыстоўваць нешта больш складанае. Існуюць праграмы, якія здзяйсняюць перабор пароляў па слоўніку, і кропку доступу з простым паролем могуць узламаць. Ну а расшарваць інтэрнэт староннім пры сучасных законах можа быць багата.

Усё гатова, можна актываваць усе сэрвісы.

sudo systemctl unmask hostapd
sudo systemctl enable hostapd
sudo systemctl start hostapd
sudo systemctl reload dnsmasq

Цяпер мы павінны ўжо ўбачыць новую WiFi-кропку доступу ў спісе сетак. Але каб у ёй з'явіўся інтэрнэт, неабходна актываваць перанакіраванне пакетаў з Ethernet у WLAN, для чаго ўводны каманду Sudo Nano /etc/rc.local і дадаем радок налады iptables:

sudo iptables -t nat -A  POSTROUTING -o eth0 -j MASQUERADE

Цяпер усё. Перазагружаем Raspberry Pi, і калі ўсё было зроблена правільна, мы можам убачыць кропку доступу і падлучыцца да яе.

5 спосабаў карыснага выкарыстання Raspberry Pi

Як можна бачыць, хуткасць не так ужо дрэнная, і карыстацца такім WiFi суцэль можна.

Дарэчы, невялікі савет: памяняць сеткавае імя Raspberry Pi можна, выканаўшы каманду sudo raspi-config. Па змаўчанні яно роўна (сюрпрыз:) raspberrypi. Гэта, пэўна, агульнавядома. Аднак не ўсе ведаюць, што гэтае імя даступна і ў лакальнай сетцы, але да яго трэба дадаць ".local". Напрыклад, зайсці на Raspberry Pi па SSH можна, увёўшы каманду шпатлёўка [электронная пошта абаронена]. Тут праўда, ёсць адзін нюанс: гэта працуе ў Windows і ў Linux, але не працуе ў Android – там па-ранейшаму прыйдзецца ўводзіць IP-адрас уручную.

2. Медыя-сервер

Існуе 1001 спосаб зрабіць медыя-сервер на Raspberry Pi, я разгледжу толькі самы просты. Дапушчальны, у нас ёсць каханая калекцыя MP3-файлаў, і мы жадаем, каб яна была даступная ў лакальнай сетцы для ўсіх медыя-прылад. Мы паставім на Raspberry Pi сервер MiniDLNA, які можа зрабіць гэта для нас.

Для ўстаноўкі ўвядзем каманду sudo apt-get install minidlna. Пасля чаго трэба наладзіць канфіг, увёўшы каманду sudo nano /etc/minidlna.conf. Там неабходна дадаць толькі адзін радок, які паказвае шлях да нашых файлаў: media_dir=/home/pi/MP3 (шлях зразумела, можа быць іншым). Зачыніўшы файл, перазапускаем сэрвіс:

sudo systemctl restart minidlna

Калі мы ўсё зрабілі правільна, мы атрымаем гатовы медыя-сервер у лакальнай сетцы, з якога можна граць музыку праз настольнае WiFi-радыё або праз VLC-Player у Android:

5 спосабаў карыснага выкарыстання Raspberry Pi

Савет: загружаць файлы на Raspberry Pi вельмі зручна з дапамогай WinSCP - гэтая праграма дазваляе працаваць з тэчкамі RPi таксама лёгка, як і з лакальнымі.

5 спосабаў карыснага выкарыстання Raspberry Pi

3. SDR прыёмнік

Калі ў нас есць прыёмнік RTL-SDR або SDRPlay, мы можам выкарыстоўваць яго на Raspberry Pi з дапамогай праграмы GQRX або CubicSDR. Гэта дазволіць мець аўтаномны і бясшумны SDR-прымач, здольны працаваць нават кругласутачна.

Прашу прабачэння за якасць скрыншота з экрана тэлевізара:

5 спосабаў карыснага выкарыстання Raspberry Pi

З дапамогай RTL-SDR або SDRPlay магчыма прымаць розныя радыёсігналы з частатой да 1Ггц (нават крыху вышэй). Напрыклад, можна слухаць не толькі звычайнае FM-радыё, але і перамовы пілотаў ці іншых службаў. Дарэчы, радыёаматары з дапамогай Raspberry Pi цалкам могуць прымаць, дэкадаваць і адпраўляць на сервер сігналы. WSPR і іншых лічбавых рэжымаў.

Падрабязнае разгляд SDR-радыё выходзіць за рамкі гэтага артыкула, падрабязней можна пачытаць тут.

4. Сервер для «разумнай хаты»

Тым, хто хоча зрабіць свой дом больш "разумным", можна скарыстацца бясплатнай праграмай OpenHAB.

5 спосабаў карыснага выкарыстання Raspberry Pi

Гэта нават не тое, каб проста праграма, а цэлы фрэймворк, які мае розныя плагіны, скрыпты, які дазваляе кіраваць рознымі прыладамі (Z-Wave, Philips Hue і інш). Жадаючыя могуць вывучыць падрабязней оф.сайт https://www.openhab.org.

Дарэчы, раз ужо зайшла прамова аб "разумнай хаце", на Raspberry Pi суцэль можа працаваць MQTT-сервер, які можа выкарыстоўвацца рознымі лакальнымі прыладамі.

5. Кліент для FlightRadar24

Калі вы аматар авіяцыі, і жывяце ў рэгіёне дзе пакрыццё FlightRadar пакідае жадаць лепшага, можна дапамагчы супольнасці і ўсім вандроўцам, усталяваўшы прымач у сябе. Для гэтага дастаткова толькі RTL-SDR-прымача і Raspberry Pi. Як бонус, вы атрымаеце бясплатны доступ да Pro-акаўнта FlightRadar24.

5 спосабаў карыснага выкарыстання Raspberry Pi

падрабязная інструкцыя ужо публікавалася на Хабры.

Заключэнне

Зразумела, тут пералічана далёка не ўсё. Raspberry Pi мае нядрэнную вылічальную магутнасць, і можа выкарыстоўвацца ў абсалютна розных задачах, ад рэтра-гульнявой кансолі ці відэаназірання, да распазнання аўтамабільных нумароў ці нават як сэрвіс для астранамічнай all-sky камеры для назірання за метэорамі.

Дарэчы, напісанае актуальна не толькі для Raspberry Pi, але і для розных "клонаў" (Asus Tinkerboard, Nano Pi і інш), усе праграмы хутчэй за ўсё запрацуюць і там.

Калі ў аўдыторыі будзе цікавасць (што будзе вызначацца паводле ацэнак да артыкула), тэму можна будзе прадоўжыць.

І як звычайна, усім удалых эксперыментаў.

Крыніца: habr.com

Дадаць каментар