5 Txoj Kev Siv Tau Siv Koj Raspberry Pi

Nyob zoo Habr.

Yuav luag txhua tus muaj Raspberry Pi nyob rau hauv tsev, thiab kuv yuav venture los kwv yees tias ntau tus muaj nws nyob ib puag ncig tsis ua haujlwm. Tab sis Raspberry tsis yog tsuas yog cov plaub muaj txiaj ntsig xwb, tab sis kuj yog lub khoos phis tawj tsis muaj zog heev nrog Linux. Niaj hnub no peb yuav saib cov yam ntxwv tseem ceeb ntawm Raspberry Pi, uas koj tsis tas yuav sau code txhua.
5 Txoj Kev Siv Tau Siv Koj Raspberry Pi
Rau cov neeg txaus siab, cov ntsiab lus yog nyob rau hauv qhov txiav. Cov kab lus yog npaj rau cov pib tshiab.

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅: Cov kab lus no yog npaj rau cov neeg pib tshiab uas muaj tsawg kawg yog qhov kev nkag siab yooj yim ntawm qhov chaw nyob IP yog dab tsi, yuav ua li cas rau SSH rau hauv Raspberry Pi siv putty lossis lwm lub davhlau ya nyob twg, thiab yuav ua li cas hloov cov ntaub ntawv nrog nano editor. Raws li kev sim, lub sijhawm no kuv yuav tsis "load" cov neeg nyeem nrog Python code, yuav tsis muaj qhov programming txhua. Rau tag nrho cov hauv qab no, tsuas yog kab hais kom ua yuav txaus. Ntau npaum li cas ib hom ntawv yog nyob rau hauv kev thov, kuv yuav saib cov kwv yees ntawm cov ntawv nyeem.

Tau kawg, kuv yuav tsis xav txog tej yam pom tseeb zoo li FTP server lossis network pob. Hauv qab no kuv sim qhia qee yam ntau dua lossis tsawg dua thiab tseem ceeb.

Ua ntej peb nruab dab tsi, ib qho tseem ceeb tswv yim: txoj cai fais fab mov (xws li lub npe 2.5A ib qho, ntau dua li lub xov tooj tsis muaj npe) thiab lub heatsink rau lub processor yog qhov tseem ceeb heev rau kev ua haujlwm ruaj khov ntawm Raspberry Pi. Yog tsis muaj qhov no, Raspberry yuav khov, cov ntaub ntawv luam tawm yuam kev yuav tshwm sim, thiab lwm yam. Qhov tsis zoo ntawm cov kev ua yuam kev no yog tias lawv tshwm sim qee zaus, piv txwv li, thaum lub sij hawm ncov CPU load lossis thaum cov ntaub ntawv loj tau sau rau SD card.

Ua ntej txhim kho cov khoom siv, nws raug nquahu kom hloov kho lub kaw lus, txwv tsis pub cov chaw nyob qub rau cov lus txib apt yuav tsis ua haujlwm:

sudo apt-get update

Tam sim no koj tuaj yeem pib txhim kho thiab teeb tsa.

1. WiFi hotspot

Raspberry Pi yog ib qho yooj yim tig mus rau hauv qhov chaw nkag mus rau wireless, thiab koj tsis tas yuav yuav dab tsi, WiFi twb nyob hauv lub nkoj. Txhawm rau ua qhov no, koj yuav tsum nruab 2 cov khoom siv: hostapd (Host access point daemon, access point service) thiab dnsmasq (DNS / DHCP server).

Nruab dnsmasq thiab hostapd:

sudo apt-get install dnsmasq hostapd

Teem qhov chaw nyob IP zoo li qub uas Raspberry Pi yuav muaj nyob rau hauv WiFi network. Ua li no, kho cov ntaub ntawv dhcpcd.conf los ntawm kev nkag mus rau cov lus txib sudo nano /etc/dhcpcd.conf. Koj yuav tsum ntxiv cov kab hauv qab no rau cov ntaub ntawv:

interface wlan0
  static ip_address=198.51.100.100/24
  nohook wpa_supplicant

Raws li koj tuaj yeem pom, hauv WiFi network, peb Raspberry Pi yuav muaj qhov chaw nyob 198.51.100.100 (qhov no yog qhov tseem ceeb uas yuav tsum nco ntsoov yog tias qee lub server tab tom khiav ntawm nws, qhov chaw nyob uas yuav tsum tau nkag rau hauv browser).

Tom ntej no, peb yuav tsum qhib IP xa mus, uas peb ua tiav cov lus txib sudo nano /etc/sysctl.conf thiab uncomment tus kab net.ipv4.ip_forward = 1.

Tam sim no koj yuav tsum teeb tsa DHCP server - nws yuav faib IP chaw nyob rau cov khoom siv sib txuas. Peb nkag mus rau qhov hais kom ua sudo nano /etc/dnsmasq.conf thiab ntxiv cov kab hauv qab no:

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

Raws li koj tuaj yeem pom, cov khoom siv txuas nrog yuav muaj IP chaw nyob hauv thaj tsam 198.51.100.1… 198.51.100.99.

Thaum kawg, nws yog lub sijhawm los teeb tsa Wi-Fi. Kho cov ntaub ntawv /etc/default/hostapd thiab nkag mus rau txoj kab ntawd DAEMON_CONF = "/etc/hostapd/hostapd.conf". Tam sim no cia peb hloov cov ntaub ntawv hostapd.conf los ntawm kev nkag mus rau cov lus txib sudo nano /etc/hostapd/hostapd.conf.
Nkag mus rau qhov chaw nkag qhov chaw:

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

Ntawm no nws yog ib qho tseem ceeb uas yuav tau xyuam xim rau cov tsis "ssid" (lub npe nkag), "wpa_passphrase" (password), "channel" (channel naj npawb) thiab "hw_mode" (kev ua haujlwm hom, a = IEEE 802.11a, 5 GHz, b = IEEE 802.11 b, 2.4 GHz, g = IEEE 802.11g, 2.4 GHz). Hmoov tsis zoo, tsis muaj kev xaiv channel tsis siv neeg, yog li koj yuav tsum xaiv qhov tsawg tshaj plaws WiFi channel koj tus kheej.

ib qho tseem ceeb: nyob rau hauv cov ntaub ntawv no, tus password yog 12345678, nyob rau hauv ib tug tiag tiag nkag point, koj yuav tsum tau siv ib yam dab tsi nyuab dua. Muaj cov kev pab cuam uas brute-force passwords siv phau ntawv txhais lus, thiab qhov chaw nkag nrog tus password yooj yim tuaj yeem raug nyiag. Zoo, kev sib koom hauv Is Taws Nem nrog cov neeg sab nraud raws li cov cai niaj hnub no tuaj yeem ua rau tsis muaj tseeb.

Txhua yam yog npaj txhij, koj tuaj yeem qhib txhua qhov kev pabcuam.

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

Peb yuav tsum tam sim no pom WiFi hotspot tshiab hauv cov npe ntawm tes hauj lwm. Tab sis txhawm rau kom Is Taws Nem tshwm nyob rau hauv nws, nws yog ib qho tsim nyog yuav tsum qhib pob ntawv redirection ntawm Ethernet rau WLAN, uas peb nkag mus rau cov lus txib. sudo nano /etc/rc.local thiab ntxiv iptables configuration kab:

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

Qhov ntawd yog nws. Peb reboot lub Raspberry Pi, thiab yog tias txhua yam ua tiav, peb tuaj yeem pom qhov nkag thiab txuas mus rau nws.

5 Txoj Kev Siv Tau Siv Koj Raspberry Pi

Raws li koj tuaj yeem pom, qhov ceev tsis yog qhov phem heev, thiab nws muaj peev xwm siv xws li WiFi.

Los ntawm txoj kev, me me tswv yim: Koj tuaj yeem hloov lub npe Raspberry Pi network los ntawm kev khiav cov lus txib sudo raspi-teeb tsa. Nws ua rau (xws li:) raspberrypi. Qhov no yog tej zaum kev paub. Txawm li cas los xij, tsis yog txhua tus paub tias lub npe no tseem muaj nyob hauv lub network hauv zos, tab sis koj yuav tsum ntxiv ".local" rau nws. Piv txwv li, koj tuaj yeem nkag rau hauv koj lub Raspberry Pi ntawm SSH los ntawm kev nkag mus rau cov lus txib putty [email tiv thaiv]. Muaj tseeb, muaj ib qho lus ceeb toom: qhov no ua haujlwm ntawm Windows thiab Linux, tab sis tsis ua haujlwm ntawm Android - koj tseem yuav tsum nkag mus rau IP chaw nyob ntawm tus kheej muaj.

2. Media server

Muaj 1001 txoj hauv kev los ua tus neeg rau zaub mov tshaj tawm ntawm Raspberry Pi, Kuv tsuas yog npog qhov yooj yim tshaj plaws. Wb hais tias peb muaj ib tug nyiam sau ntawm MP3 cov ntaub ntawv thiab peb xav kom nws muaj nyob rau hauv lub zos network rau tag nrho cov xov xwm li. Peb yuav muab MiniDLNA server rau ntawm Raspberry Pi uas tuaj yeem ua qhov no rau peb.

Txhawm rau nruab, sau cov lus txib sudo apt-mus nruab minidlna. Tom qab ntawd koj yuav tsum teeb tsa lub config los ntawm kev nkag mus rau cov lus txib sudo nano /etc/minidlna.conf. Muaj koj yuav tsum tau ntxiv ib kab uas qhia txoj hauv kev rau peb cov ntaub ntawv: media_dir=/home/pi/MP3 (tau kawg, txoj kev yuav txawv). Tom qab kaw cov ntaub ntawv, rov pib qhov kev pabcuam:

sudo systemctl restart minidlna

Yog tias peb tau ua txhua yam yog lawm, peb yuav muaj cov neeg siv xov xwm npaj txhij ntawm lub network hauv zos uas koj tuaj yeem ua suab paj nruag ntawm desktop WiFi xov tooj cua lossis ntawm VLC-Player hauv Android:

5 Txoj Kev Siv Tau Siv Koj Raspberry Pi

Ntsis: Uploading cov ntaub ntawv rau Raspberry Pi yog yooj yim heev nrog WinSCP - qhov kev pab cuam no tso cai rau koj mus ua hauj lwm nrog RPi folders tau yooj yim ib yam li cov neeg hauv zos.

5 Txoj Kev Siv Tau Siv Koj Raspberry Pi

3. SDR receiver

Yog tias peb muaj RTL-SDR lossis SDRPlay txais, peb tuaj yeem siv nws ntawm Raspberry Pi siv GQRX lossis CubicSDR program. Qhov no yuav tso cai rau koj kom muaj kev ywj pheej thiab ntsiag to SDR receiver uas tuaj yeem ua haujlwm txawm tias nyob ib puag ncig.

Kuv thov txim rau qhov zoo ntawm qhov screenshot ntawm lub vijtsam TV:

5 Txoj Kev Siv Tau Siv Koj Raspberry Pi

Nrog kev pab ntawm RTL-SDR lossis SDRPlay, nws muaj peev xwm tau txais ntau yam xov tooj cua qhia nrog ntau zaus txog li 1 GHz (txawm tias siab dua me ntsis). Piv txwv li, koj tuaj yeem mloog tsis tau tsuas yog cov xov tooj cua FM ib txwm muaj, tab sis kuj muaj kev sib tham ntawm cov kws tsav dav hlau lossis lwm cov kev pabcuam. Los ntawm txoj kev, xov tooj cua amateurs nrog kev pab los ntawm Raspberry Pi tuaj yeem tau txais zoo, txiav txim siab thiab xa cov cim rau lub server. WSPR thiab lwm hom digital.

Kev sib tham ntxaws ntawm SDR xov tooj cua yog dhau ntawm cov kab lus no, koj tuaj yeem nyeem ntxiv no.

4. Server rau "smart home"

Rau cov neeg uas xav ua kom lawv lub tsev ntse dua, koj tuaj yeem siv qhov kev pab cuam OpenHAB dawb.

5 Txoj Kev Siv Tau Siv Koj Raspberry Pi

Qhov no tsis yog tsuas yog ib qho kev pab cuam, tab sis tag nrho lub moj khaum uas muaj ntau yam plugins, scripts uas tso cai rau koj los tswj ntau yam khoom siv (Z-Wave, Philips Hue, thiab lwm yam). Cov neeg uas xav tau tuaj yeem kawm paub ntau ntxiv off.site https://www.openhab.org.

Los ntawm txoj kev, txij li thaum peb tab tom tham txog "lub tsev ntse", Raspberry Pi tuaj yeem ua haujlwm zoo MQTT server uas tuaj yeem siv los ntawm ntau yam khoom siv hauv zos.

5. Client rau FlightRadar24

Yog tias koj yog tus nyiam aviation thiab nyob hauv thaj chaw uas FlightRadar kev pab them nqi tsis zoo, koj tuaj yeem pab cov zej zog thiab txhua tus neeg taug kev los ntawm kev txhim kho lub receiver. Txhua yam koj xav tau yog RTL-SDR receiver thiab Raspberry Pi. Raws li qhov nyiaj ntxiv, koj yuav tau txais kev nkag mus rau FlightRadar24 Pro tus account pub dawb.

5 Txoj Kev Siv Tau Siv Koj Raspberry Pi

Cov lus qhia kom ntxaws twb luam tawm lawm ntawm Habr.

xaus

Tau kawg, tsis yog txhua yam tau teev tseg ntawm no. Raspberry Pi muaj ntau lub zog ua haujlwm thiab tuaj yeem siv ntau yam haujlwm, los ntawm kev ua si retro game console lossis video soj ntsuam, mus rau daim ntawv tso cai daim ntawv lees paub, lossis txawm tias yog kev pabcuam rau hnub qub. txhua lub koob yees duab ntuj saib meteors.

Los ntawm txoj kev, dab tsi tau sau yog cuam tshuam tsis yog rau Raspberry Pi, tab sis kuj rau ntau yam "clones" (Asus Tinkerboard, Nano Pi, thiab lwm yam), txhua qhov kev pab cuam feem ntau yuav ua haujlwm nyob ntawd ib yam nkaus.

Yog tias cov neeg tuaj saib txaus siab (uas yuav txiav txim siab los ntawm kev ntaus nqi rau tsab xov xwm), cov ncauj lus tuaj yeem txuas ntxiv mus.

Thiab raws li ib txwm muaj, hmoov zoo rau txhua tus.

Tau qhov twg los: www.hab.com

Ntxiv ib saib