ProHoster > Блог > Whakahaerenga > Raspberry Pi + Fedora (aarch64) = Wi-Fi Hotspot (raspberry pouara me te potae kikorangi)
Raspberry Pi + Fedora (aarch64) = Wi-Fi Hotspot (raspberry pouara me te potae kikorangi)
I roto i te tuhinga Raspberry Pi + CentOS = Wi-Fi Hotspot (he pouara raspberry me te potae whero) I korero ahau mo tetahi huarahi ki te huri i te Raspberry hei waahi uru ahokore ma te whakamahi i te punaha whakahaere CentOS. Na roto i te whakahiato i taku pouara kaainga e ai ki tenei tuhi, i makona ahau i taku mahi auaha me te whakanui i te rangimarie o te hinengaro mo tetahi waahanga nui o taku hanganga aahua. Teie râ, ua haafifi te mana‘o o te oreraa e oti i te faaotiraa e te mana‘o tia roa i roto ia ’u: “aita e tiaraa to te hoê faahopearaa tano ore o te ohipa.” Ko te whakaaro "ka taea te whakatutuki i te mea tino pai" kaore i mahue i ahau mo te meneti.
Na i tetahi ra, i runga i tetahi o nga huihuinga kaupapa, i tae atu ahau ki tetahi korero mo te hohonutanga o nga punaha whakahaere o mua mo te Raspberry (aarch64 vs armhfp): ka taea e te OS 64-bit, te tikanga, te pai me te mahi i runga i te putanga Raspberry 3 ++?
Ko taku CentOS aroha mo te hoahoanga ARM mai i te "Userland" kaore i tere ki te huri ki te putanga hou o te kernel ka huri ki te 64-bit. A ko te whare putunga EPEL, hono mai i te Atua e mohio ana ki hea kaore he waitohu matihiko, he moemoea i roto i taku moe horekau...
I roto i tenei tuhinga ka korero ahau mo te tikanga whakauru Fedora (aarch64) i runga i Pihikete Pi 3 Momo B + в mahi iti rawa atu. Ka korero poto ahau mo nga ahuatanga o te whakaara i tetahi waahi uru Wi-Fi, i kitea na te mahi whakamatautau o taku whirihoranga o mua CentOS 7.
0. He aha e hiahia ana koe
He rite tonu nga mea katoa ki te rarangi o mua:
Rahipere Pi 3 Tauira B+;
microSD>= 4GB (i muri mai ka taea e koe te "whakawhiti" te punaha ki te puku 2GB);
Te teihana mahi me te Linux me te panui kaari microSD;
Ko te hononga whatunga waea i waenga i te Raspberry me te teihana mahi Linux (i tenei keehi, kaore e hiahiatia he aroturuki me te papapātuhi mo te tatūnga), te uru Ipurangi mai i nga taputapu e rua;
Nga pukenga matatau i roto i te Linux (ki te mohio me te kore e mataku: wehe, dd и mkfs).
He rite ki te tukurua LFS-ko te hanga i a koe ake Linux, ka whakamahia te ahua tohatoha Fedora, katahi ka hangaia he punaha iti (kaore he "whakahiato mai i te puna").
Na ka taea e koe te tango i te "rōpere" mai i te microSD ka hono atu ma te whatunga.
Kotahi me te hawhe meneti te timatanga o te makariri. TTX o te punaha i muri i te utaina:
rpm -qa | wc -l
444
2. Te whakaemi i te punaha iti
Kia aroha mai, ko te "tuku iti" mai i nga kaiwhakawhanake ka puta he tawhiti atu i te iti rawa o te kohi rauemi. Ko te ahua o te punaha ka taea te iti ake.
Ki te mahi i tenei, me whakahaere koe i te tuhinga ki a Malinka:
#!/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
Whai muri i te whakahaere i te tuhinga, ka hangaia he raarangiroto ki te raarangi o naianei ($P) me nga ihirangi o te pakiaka o te putanga OS iti hou. Ka taea e koe te whakakore i te Raspberry me te whakahoki i te microSD ki te teihana mahi Linux.
3. Te whakaurunga o te punaha iti
Ko te whakaurunga ka heke ki te kape i nga konae "ahua" OS iti (i whiwhi i te taahiraa o mua) ki runga i te microSD kua oti te whakarite ki nga raarangi e tika ana.
He kaari 2GB me nga waahanga e rua kei runga ka nui:
/ whakaara / efi - EFI+FAT32, boot, 100MB;
/ (pakiaka) - EXT4, mokowā katoa e toe ana.
I muri i te whakarite i te microSD me te kape i nga konae ki reira, me:
whakatika OS boot;
whakakāhia te whatunga;
whirihora te uru ma te ssh.
Ko te whakatika whawhai ko te whakakapi i te UUID o nga waahanga kei roto i nga konae:
Ko te urunga superuser ma te ssh he rite te whirihora ki te taahiraa 1.
Ka oti nga mea katoa me te kore he he, ka taea e koe te neke i te microSD ki roto i te "rōpere" ka timata ki te mahi me te OS 64-bit i roto i te waahanga iti ake.
4. Pūnaha reri
Ko te "ahua" o te punaha kua oti, i hangaia kia rite ki nga tohutohu i runga ake nei, ka taea te tango mai i te hono: Fedora-Tiny-31-5.5.7-200.aarch64
Ka noho tenei hei puranga e rua nga konae: te tuhinga whakauru me te TGZ me nga konae OS. Me wetewete te purongo ki runga i te teihana mahi Linux, whakauruhia he microSD (he nui te kaari 2GB) ka whakahaere i te tuhinga me te tawhā - te ingoa o te taputapu:
./install /dev/mmcblk0
Kia tupato!
Kaore he whakatupato, ka whakahōputuhia te taputapu ka whakauruhia te punaha whakahaere ki runga.
I muri i te mahi hapa-kore o te tuhinga, ka taea te whakarereke i te kaari ki te "rōpere" ka whakamahia: hopu ma te dhcp, kupuhipa - "1".
Kua whakakorehia e te punaha nga ID me nga taviri katoa, na reira he ahurei ia whakaurunga hou.
Ka whakahoki ano ahau, ko te punaha - iti rawa! No reira, kaua e mataku: Kei te waatea te DNF, kia pai ai te mahi me "hanga" te mea tika /etc/resolv.conf.
Ko te timatanga makariri o te Raspberry e 40 hēkona. TTX o te punaha i muri i te utaina:
rpm -qa | wc -l
191
5. WiFi
Ka noho poto ahau ki nga ahuatanga o te whakatinana i te waahi uru Wi-Fi. Mo nga korero motuhake, ka taea e koe te korero ki taku o mua Tuhinga.
Ko te EPEL kua kore e hiahiatia - kei roto katoa nga kete kei roto i nga putunga mana.
He pai pea te tuku dnsmasq, i te mea ko Fedora, kaore i rite ki a CentOS, he punaha-whatunga tata tonu nei, he tuumau DHCP/DNS kua hangaia. Engari ko te mea kei roto i nga kaihanga RHEL8 karekau i pai ki te tautoko i te puranga whatunga me tetahi mea ke atu i a NM, e kore e whakahihiko i te maia ki te maramatanga o te kaupapa (nga tangata kino). I te poto, kaore au i whakamatau.
I tua atu, kaore e taea te "tahae" nga taraiwa o naianei mo te urutau Wi-Fi i roto i te tohatoha Raspbian, engari ka tango tika mai i GitHub.
Koinei te ahua o nga konae firmware Broadcom i runga i taku Raspberry (whakaarohia):
Mo te maha me nga ingoa o nga atanga. Inaianei ka tino taunaki ahau ki nga tangata katoa kia kaua e uru ki nga "ratonga" o nga huringa rorohiko mena ka tino tika (piriti), e whakauru ana i te kawenga nui ki roto i te puranga whatunga me te whakaheke i te ararere. Mena karekau koe e whakaaro kia maha nga taapiri ahokore, me whakamahi koe i nga atanga tinana anake. E rua aku Wi-Fi, no reira ka whakakotahihia e au ki roto i te piriti rorohiko (ahakoa ka taea e koe te mahi me te kore tenei ma te titiro rereke ki te tatūnga hostapd).
A ka pai ahau ki te whakaingoa ano i nga atanga.
Hei mahi i tenei i Fedora me hanga e koe he hononga tohu:
/etc/systemd/network/99-default.link -> /dev/null
katahi ka taea te hoatu i nga ingoa whai kiko me te kore e pohehe udev, engari ma te whakamahi i te systemd-networkd anake.
Hei tauira, koinei te ingoa o nga urutau whatunga i taku pouara:
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 - i roto, ext — ko nga urutau Wi-Fi o waho (USB) kua huihuia ki te "piriti" lan;
wan — Whāurutau Ethernet e hono ana te Ipurangi.
I kite koe? fq_codel - he mea tino pai. I te taha o te kakano Linux hou, ka mahia e ratou nga merekara tuuturu i roto i te awhe ahokore: he "torrent download" e kore e arahi ki te heke ohorere o te tere i waenga i nga hoa noho tata. Ahakoa ko te IP-TV kaainga e mahi ana "i runga i te rangi" me te hongere utaina kaore e "pakaru" ka kore e "kapeke" rawa!
He iti nga huringa o te konae ratonga daemon hostapd.
He penei te ahua inaianei (ma te whakamahi i te tauira o te urutau whakaurunga):
[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
Me te "makutu" hostapd-int.conf mo te mahi i roto i te 5GHz/AC:
He whakaahua iti i hangaia mai i aku Ericsson A1018s:
(Hononga ipurangi - 100Mbit/hekona)
Ka mutu, he FAQ iti.
6.FAQ
6.1 He aha te mahi pouara Wi-Fi ki runga Raspberry?
Ka taea e tetahi te whakautu ngawari, penei "he pai ki te whakamatau me era atu."
Engari i roto i te meka, ki ahau nei he tino taumaha te kaupapa. I te wa o te Ipurangi "toto", ko te hoko i te pouara i roto i te toa me te noho mau tonu ki tana kaihanga he tino pouri. He maha nga taangata kua maarama kaore e taea te noho me te CVE me te kuaha kei muri.
Ae ra, ka taea e koe te heke ki te WRT firmware mai i nga kaiwhaiwhai. He nui ake pea te whakawhirinaki ki a raatau, engari ki te kore koe e hiahia ki te whakawhirinaki ki a raatau, whakamahia noa to hua ake. Ko te mea pai, he rorohiko tino pai kia taea ai te whakatinana i nga mea katoa o te ao ki runga. Mo te ararere, o te akoranga.
Na reira, ko te kowhiri i te "rōpere" he kaupapa ohaoha: he rorohiko pono me te wa ano he utu iti. Ahakoa, tera pea - me o raatau "ruarua" kei roto.
6.2 Engari he "pouara iti" a Raspberry: he puhoi me te tauranga Ethernet kotahi!
Hei pouara Wi-Fi kaainga, he pai ake te Raspberry ki ahau. Kua korero ahau mo te tere o te hau i runga ake nei. Na kotahi anake te Ethernet, pai, i roto i te hua rite mai i a Apple he rite tonu!
Engari tino nui, o te akoranga ka hiahia ahau ki etahi atu. A ahakoa te mea kei roto i taku whare ka hono nga taputapu katoa ma te ahokore, i etahi wa ka hiahiatia he hononga parahi. Mo enei keehi, kei a au he "pukoro waea" kei roto i nga taonga:
taputapu - he mea penei
6.3 Mena he pouara tenei, kaore he korero mo te "whakarite" TCP/IP, na te mea he mea nui tenei!
I tua atu i te whakatuu i te puranga whatunga (tcp_fastopen, YeAH, me etahi atu), kaore tenei me te tuhinga o mua e hipoki ana i etahi atu ahuatanga, ina koa, ko te tukanga o te whakarite i te microSD mo te whakamahi tino pai (ahakoa ka ngana te kaiwhakauru ki te whakahōputu i te kaari mahara ki roto. he ara uaua). Ko te tukanga o te whakapai ake he mutunga, me mutu noa koe i te waa.
6.4 He aha a Fedora?
No te mea e pai ana ahau! Ko Fedora he punaha "auraki" mo nga geeks, mo ratou tenei tuhinga e tino tika ana. I te wa e tuhi ana, ko te OS anake mo te Raspberry i roto i te putanga 64-bit e tautokohia ana e nga kaimahi nui o nga kaihanga (kaore au e tatari pata 5.6).
6.5 Kei te mahi a Nihokikorangi? Kei te pehea te ataata/oro/GPIO?
Kaua e mohio. Ko te tuhinga e pa ana ki te iti rawa o te whakaurunga o te punaha me tana whakamahi i muri mai hei pouara Wi-Fi.
6.6 He aha nga tuhinga katoa mo CentOS/Fedora/RedHat ka timata ki te whakakore i a SELinux?
Na te mea he iti noa te punaha, karekau he papangaahi, taputapu taputapu ranei mo te whakarite. Ka taea e te hunga e hiahia ana ki te whakauru i nga mea katoa e hiahiatia ana e ratou.
6.7 Kaore e taea te whakamahi i te punaha, kaore e taea te whakarereke i te kupuhipa - kaore he passwd. Kaore he ping, kaore he mea!
He DNF. Kaore ranei tenei waahanga whakaurunga mo koe - whakamahia te kete tohatoha mai i nga kaihanga.
6.8 Kei hea te SWAP? Kaore e taea e au te ora me te kore ia!
6.9 Kei te pirangi au ki te tango tonu i tetahi ahua kua oti te hanga me te waahi uru Wi-Fi kua whirihorahia!
Ko te whakarite i tetahi kaitautauta "mo te katoa" ka hiahiatia he wa me te kaha. Mena (kua ohorere!) ka tino kitea e te tangata tenei mea whakamiharo me te tika, tuhia mai ki a maatau ka puta mai he mea.
Ka mutu tenei.
Kei te pirangi ahau kia noho haumaru nga tangata katoa ki te ngaru me te tino mana whakahaere mo nga hanganga!