ProHoster > Blog > Administrazioa > Raspberry Pi + Fedora (aarch64) = Wi-Fi Hotspot (edo mugurdi bideratzailea kapela urdin batekin)
Raspberry Pi + Fedora (aarch64) = Wi-Fi Hotspot (edo mugurdi bideratzailea kapela urdin batekin)
Artikulua Raspberry Pi + CentOS = Wi-Fi Hotspot (edo mugurdi bideratzailea kapela gorri batekin) CentOS sistema eragilea erabiliz Raspberry haririk gabeko sarbide puntu bihurtzeko modu bati buruz hitz egin nuen. Nire etxeko bideratzailea marrazki honen arabera muntatuz, nire sormen egoa asetu nuen eta lasaitasun bultzada bat jaso nuen nire azpiegitura atseginaren elementu kritiko batengatik. Hala ere, konponbidearen osaezintasun sentimenduak eta barne perfekzionismoak aztoratu ninduen: "lanaren emaitza inperfektu batek ez du existitzeko eskubiderik". “Ideal hori lortu daiteke eta lortu behar da” pentsatzeak ez nau minutu batean utzi.
Eta orduan, egun batean, gaikako foroetako batean, Raspberryrako dauden sistema eragileen bit-sakonerari buruzko eztabaida bat topatu nuen (aarch64 vs armhfp): zein 64 biteko OS, printzipioz, Raspberry 3 bertsioan moldatu eta lan egin dezakeen. ++?
Nire CentOS maiteak "Userland"-eko ARM arkitekturarako ez zuen presarik nukleoaren azken bertsiora aldatzeko eta 64 biteko bihurtzeko. Eta EPEL biltegia, Jainkoak daki nondik sinadura digitalik gabe konektatuta, amesgaizto bat izan zen nire lo egonezinan...
Artikulu honetan instalazio metodoari buruz hitz egingo dut Fedora (aarch64) on Raspberry Pi 3 B + eredua в gutxieneko errendimendu gehigarria. Wi-Fi sarbide-puntu bat igotzeko ezaugarriei buruz hitz egingo dut laburki, nire aurreko konfigurazioaren probako funtzionamenduaren ondorioz identifikatuta. CentOS 7.
0. Zer beharko duzu
Dena aurreko artikuluan zerrendatutako berdina da:
Raspberry Pi 3 B+ eredua;
microSD >= 4GB (geroago sistema 2GBko disko batera "transferitu" dezakezu);
Lanpostua Linux eta microSD txartel irakurgailuarekin;
Raspberry eta Linux lan-estazio baten arteko kable bidezko sare-konektibitatea (kasu honetan, ez da monitore eta teklatu gehigarririk beharko konfiguratzeko), bi gailuetatik Interneterako sarbidea;
Linux-en trebetasun aurreratua (jakitea eta beldurrik ez izateko: parted, dd и mkfs).
Iteratiboaren antzekoa LFS-zure Linux eraikiz, Fedora banaketa-irudia erabiliko da, eta, ondoren, horretan oinarrituta, sistema minimo bat sortuko da («iturburutik konpilatu» gabe).
Orain "mugurdia" microSDtik deskarga dezakezu eta sarearen bidez konektatu zaitezke.
Irteera hotz batek minutu eta erdi inguru behar du. Sistemaren TTX kargatu ondoren:
rpm -qa | wc -l
444
2. Sistema minimo bat muntatzea
Zoritxarrez, garatzaileen "banaketa minimoa" baliabideen kontsumoan apalagotik urrun geratzen da. Sistemaren irudia are txikiagoa egin daiteke.
Horretarako, scripta exekutatu behar duzu Malinkan:
#!/bin/bash
. /etc/os-release
P=$(mktemp --directory $(pwd)/$ID-$VERSION_ID.XXX)
dnf --installroot=$P --releasever=$VERSION_ID --setopt=install_weak_deps=false
--assumeyes install
bcm283x-firmware
dnf
grub2-efi-aa64
kernel
openssh-server
shim-aa64
for f in /boot/efi/EFI/fedora/grub.cfg
/boot/efi/EFI/fedora/grubenv
/boot/efi/rpi3-u-boot.bin
/etc/default/grub
/etc/fstab
do
cp -fv $f $P$f
done
rm -fv $P/dev/*
rm -rfv $P/var/cache/dnf
echo "--------------------------------------------------------------------------------"
du -hs $P
Scripta exekutatu ondoren, uneko direktorioan azpidirektorio bat sortuko da ($P) gutxieneko OS edizio berriaren erroaren edukiarekin. Raspberry itzali eta microSD Linux lan-estaziora itzul dezakezu.
3. Sistema minimo bat instalatzea
Instalazioa OS gutxieneko "irudi" fitxategiak (aurreko urratsean lortutakoak) bereziki prestatutako microSD batean kopiatzean datza, direktorio egokietan.
2GB txartela eta bi partizio nahikoa dira:
/ Boot / EFI - EFI+FAT32, abioa, 100MB;
/ (root) - EXT4, geratzen den espazio guztia.
MicroSDa prestatu eta bertan fitxategiak kopiatu ondoren, hau egin behar duzu:
konpondu OS abiarazte;
sarea piztu;
konfiguratu sarbidea ssh bidez.
Abioko konponketa fitxategietako atalen UUID-a ordezkatzea da:
Ssh bidez supererabiltzaileen sarbidea 1. urratsaren antzera konfiguratuta dago.
Dena kontu handiz eta akatsik gabe egin ondoren, microSDa "mugurdira" eraman dezakezu eta 64 biteko OS batekin lan egiten has zaitezke bertsio minimo gehigarrian.
4. Prest sistema
Amaitutako sistemaren "irudia", goiko argibideen arabera sortutakoa, estekatik deskargatu daiteke: Fedora-Tiny-31-5.5.7-200.aarch64
Bi fitxategi dituen artxibo bat izango da: instalazioaren scripta eta TGZ OS fitxategiekin. Artxiboa Linux lan-estazio batean deskonprimitu behar da, microSD bat sartu (2 GBko txartela nahikoa da) eta gidoia exekutatu parametro batekin - gailuaren izena:
./install /dev/mmcblk0
Kontuz!
Inolako abisurik gabe, gailua formateatu eta sistema eragilea instalatuko da bertan.
Scripta akatsik gabe exekutatu ondoren, txartela "mugurdi"-ra berrantola daiteke eta erabili: dhcp bidez harrapatu, pasahitza - "1".
Sistemak ID eta gako guztiak garbitzen ditu, horregatik instalazio berri bakoitza bakarra da.
Berriro errepikatzen dut, sistema - minimoa! Beraz, ez kezkatu: DNF eskuragarri dago, funtziona dezan zuzena "asmatu" beharko duzu /etc/resolv.conf.
Raspberry-ren hasiera hotza 40 segundo inguru irauten du. Sistemaren TTX kargatu ondoren:
rpm -qa | wc -l
191
5. Wifi
Wi-Fi sarbide-puntu bat ezartzearen ezaugarrietan pixka bat luzatuko naiz. Zehaztasunetarako, nire aurrekora jo dezakezu Artikulu.
Jada ez da beharrezkoa EPEL - pakete guztiak biltegi ofizialetan daude.
Ziurrenik mereziko luke amore ematea dnsmasq, Fedorak, CentOS ez bezala, systemd-networkd nahiko berria duelako, DHCP/DNS zerbitzari normalak dituena. Baina kontua da RHEL8 garatzaileetan sareko pila NM ez den beste gauza batekin onartzeari uko egin zion, ez du konfiantzarik pizten proiektuaren etorkizun distiratsuan (zitalak). Laburbilduz, ez dut probatu.
Gainera, integratutako Wi-Fi egokigailuaren egungo kontrolatzaileak ezin dira "lapurtu" Raspbian banaketatik, baina zuzenean deskargatu. GitHub.
Hau da Broadcom firmware fitxategiak nire Raspberry-n (eskematikoki):
Interfazeen kopuruari eta izenei dagokienez. Orain guztioi gomendatzen diet software-etengailuen "zerbitzuetara" ez jotzea guztiz beharrezkoa ez bada (zubia), sareko pilan karga handia sartzen dutenak eta bideraketa deprimitzen dutenak. Haririk gabeko egokitzaile anitz edukitzeko asmoa ez baduzu, interfaze fisikoak soilik erabili beharko dituzu. Bi Wi-Fi ditut, beraz, horiek bakarrik konbinatzen ditut software-zubi batean (nahiz eta hori gabe egin dezakezu hostapd konfigurazioa beste modu batera begiratuz).
Eta interfazeen izena aldatzea gustatzen zait.
Fedoran egiteko esteka sinboliko bat sortu behar duzu:
/etc/systemd/network/99-default.link -> /dev/null
eta gero posible izango da izen esanguratsuak ematea inguruan zulatu gabe udev, baina systemd-networkd bakarrik erabiliz.
Adibidez, honela deitzen dira nire bideratzaileko sare-egokigailuak:
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
2: wan: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
3: lan: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
4: int: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel master lan state UP group default qlen 1000
5: ext: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq master lan state UP group default qlen 1000
int - barneratua, ext - kanpoko (USB) Wi-Fi egokigailuak "zubi" batean muntatuta lan;
wan — Internetera konektatuta dagoen Ethernet egokigailua.
Konturatu al zara? fq_codel - Oso gauza polita. Linux kernel berri batekin batera, benetako mirariak egiten dituzte haririk gabeko barrutian: "torrent deskarga" gogor batek ez du bizilagunen bat-bateko abiadura hondatzea ekarriko. Kanal kargatu batekin "airean" funtzionatzen duen etxeko IP-TV bat ere ez da "hasten" eta ez da batere "totelka" egiten!
Daemon zerbitzuaren fitxategiak aldaketa txikiak izan ditu hostapd.
Honela dirudi orain (eraikitako egokitzaile baten adibidea erabiliz):
[Unit]
Description=Hostapd IEEE 802.11 AP, IEEE 802.1X/WPA/WPA2/EAP/RADIUS Authenticator
After=network.target
BindsTo=sys-subsystem-net-devices-int.device
[Service]
Type=forking
PIDFile=/run/hostapd-int.pid
#ExecStartPre=/usr/sbin/iw dev int set power_save off
ExecStart=/usr/sbin/hostapd /path/to/hostapd-int.conf -P /run/hostapd-int.pid -B
[Install]
RequiredBy=sys-subsystem-net-devices-int.device
Eta hostapd-int.conf "magikoa" 5GHz/AC-n lan egiteko:
Nire Ericsson A1018s-ekin egindako photoshop txiki bat:
(Interneteko konexioa - 100 Mbit/s)
Eta azkenik, FAQ txiki bat.
6. ohiko galderak
6.1 Zergatik egin Wi-Fi bideratzaile bat Raspberry-n?
Besterik gabe erantzun liteke, "saiatzea interesgarria da eta hori guztia".
Baina egia esan, gaia nahiko serioa dela iruditzen zait. Internet "odoltsuaren" garaian, bideratzaile bat denda batean erostea eta bere fabrikatzailearen bahituta geratzea oso aukera txarra da. Jende askok dagoeneko ulertzen du CVE batekin edo atzeko atzeko atearekin eserita ez dela posible.
Jakina, WRT firmwarera migra dezakezu zaleen eskutik. Seguruenik, konfiantza handiagoa dago haiengan, baina haiengandik menpe egon nahi ez baduzu, erabili zure produktua. Egokiena, erabateko ordenagailu bat, munduko guztia bertan inplementatu ahal izateko. Bideratze aldetik, noski.
Hori dela eta, "mugurdia" aukeratzea mugimendu ekonomiko hutsa da: benetako ordenagailua eta, aldi berean, merkea. Nahiz eta, beharbada ere, - beren "bikoitzak" barruan.
6.2 Baina Raspberry "bideratzaile baxua" da: motela eta Ethernet ataka batekin!
Etxeko Wi-Fi bideratzaile gisa, Raspberry pozgarria da niretzat. Airearen abiadurari buruz hitz egin dut dagoeneko. Eta Ethernet bakarra dago, tira, Appleren antzeko produktu batean berdina da!
Baina serio, noski gehiago gustatuko litzaidake. Eta nire etxean gailu guztiak haririk gabe konektatuta egon arren, batzuetan kobrezko konexioa behar da oraindik. Horrelako kasuetarako, "mugikorretarako hub" bat daukat stockean:
gailua - horrelako zerbait
6.3 Hau bideratzailea bada, ez da ezer esaten TCP/IP "sintonizatzeari buruz", hau garrantzitsua baita!
Sare-pila konfiguratzeaz gain (tcp_fastopen, YeAH, etab.), honek eta aurreko artikuluek ez dute beste ñabardurarik hartzen, bereziki, microSD erabilera optimorako prestatzeko prozesua (instalatzailea memoria txartela formateatzen saiatzen den arren. modu delikatua). Hobekuntza prozesua amaigabea da, denboran gelditu besterik ez duzu behar.
6.4 Zergatik Fedora?
Gustatzen zaidalako! Fedora frikientzako sistema "normala" da, artikulu hau benetan zuzenduta dagoena. Idazteko unean, beharbada Raspberryrentzat 64 biteko bertsioan duen sistema eragile bakarra garatzaileen talde garrantzitsu batek onartzen du ofizialki (ezin dut itxaron). nukleoa 5.6).
6.5 Bluetooth-ak funtzionatzen du? Nola dago bideoa/soinua/GPIOa?
Ez dakit. Artikulua sistemaren gutxieneko instalazioari eta gero Wi-Fi bideratzaile gisa erabiltzeari buruzkoa da.
6.6 Zergatik hasten dira CentOS/Fedora/RedHat-i buruzko artikulu guztiak SELinux desgaitzen?
Sistema gutxienekoa denez, ez du suebakirik edo konfiguratzeko utilitaterik ere. Behar duenak behar duen guztia instala dezake.
6.7 Sistema ezin da erabili, pasahitza ezin da aldatu - pasahitzarik gabe. Ez ping, ez ezer!
Ez dago DNF. Edo instalazio-aukera hau ez da zuretzat - erabili garatzaileen banaketa kit-a.
6.9 Berehala deskargatu nahiko nuke prest egindako irudi bat konfiguratutako Wi-Fi sarbide puntu batekin!
"Denontzako" instalatzaile bat prestatzeak denbora eta ahalegin pixka bat eskatuko du. Norbaiti (bat-batean!) benetan interesgarria eta beharrezkoa iruditzen bazaio, idatzi iezaguzu eta zerbait asmatuko dugu.
Honekin amaituko dut.
Guztiei surf segurua eta azpiegituraren gaineko kontrol handiena opa diet!