Kaip prijungti „Wi-Fi“ prie „Linux“ terminalo naudojant „Nmcli“ komandą


Yra keletas komandų eilutės įrankių, skirtų valdyti belaidžio tinklo sąsają Linux sistemose. Kai kuriuos iš jų galima naudoti norint tiesiog peržiūrėti belaidžio tinklo sąsajos būseną (nesvarbu, ar ji yra aukštyn ar žemyn, ar prijungta prie bet kurio tinklo), pvz., iw, iwlist, ip, ifconfig ir kt.

Kai kurie iš jų naudojami prisijungti prie belaidžio tinklo, įskaitant: nmcli yra komandų eilutės įrankis, naudojamas tinklo ryšiams kurti, rodyti, redaguoti, ištrinti, įjungti ir išjungti, taip pat valdyti ir rodyti tinklo įrenginio būseną.

Pirmiausia patikrinkite tinklo įrenginio pavadinimą naudodami šią komandą. Šios komandos išvestyje įrenginio pavadinimas/sąsaja yra wlp1s0, kaip parodyta.

$ iw dev

phy#0
	Interface wlp1s0
		ifindex 3
		wdev 0x1
		addr 38:b1:db:7c:78:c7
		type managed

Tada patikrinkite „Wi-Fi“ įrenginio ryšio būseną naudodami šią komandą.

iw wlp2s0 link

Not connected.

Iš aukščiau esančios išvesties įrenginys neprijungtas prie jokio tinklo, paleiskite šią komandą, kad nuskaitytumėte galimus „Wi-Fi“ tinklus.

sudo iw wlp2s0 scan
       
command failed: Network is down (-100)

Atsižvelgiant į aukščiau pateiktos komandos išvestį, tinklo įrenginys/sąsaja yra ŽEMYN, galite jį Įjungti (AUKŠTYN) naudodami ip komandą kaip parodyta.

sudo ip link set wlp1s0 up

Jei gaunate šią klaidą, tai reiškia, kad jūsų Wi-Fi yra sunkiai užblokuotas nešiojamajame arba kompiuteryje.

RTNETLINK answers: Operation not possible due to RF-kill

Norėdami pašalinti arba atblokuoti, turite paleisti šią komandą, kad išspręstumėte klaidą.

echo "blacklist hp_wmi" | sudo tee /etc/modprobe.d/hp.conf
sudo rfkill unblock all

Tada pabandykite dar kartą ĮJUNGTI tinklo įrenginį ir šį kartą jis turėtų veikti.

sudo ip link set wlp1s0 up

Jei žinote „Wi-Fi“ tinklo, prie kurio norite prisijungti, ESSID, pereikite prie kito veiksmo, kitu atveju išduokite toliau pateiktą komandą, kad dar kartą nuskaitytumėte pasiekiamus „Wi-Fi“ tinklus.

sudo iw wlp1s0 scan

Ir galiausiai prisijunkite prie „Wi-Fi“ tinklo naudodami šią komandą, kur Hackernet (Wi-Fi tinklo SSID) ir localhost22 (slaptažodis/iš anksto bendrinamas raktas).

nmcli dev wifi connect Hackernet password localhost22

Prisijungę patikrinkite savo ryšį atlikdami ping į išorinį įrenginį ir išanalizuokite ping išvestį, kaip parodyta.

$ ping 8.8.8.8

PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
64 bytes from 8.8.8.8: icmp_seq=1 ttl=48 time=61.7 ms
64 bytes from 8.8.8.8: icmp_seq=2 ttl=48 time=61.5 ms
64 bytes from 8.8.8.8: icmp_seq=3 ttl=48 time=61.6 ms
64 bytes from 8.8.8.8: icmp_seq=4 ttl=48 time=61.3 ms
64 bytes from 8.8.8.8: icmp_seq=5 ttl=48 time=63.9 ms
^C
--- 8.8.8.8 ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 4006ms
rtt min/avg/max/mdev = 61.338/62.047/63.928/0.950 ms

Viskas! Tikiuosi, kad šis straipsnis padėjo jums nustatyti Wi-Fi tinklą naudojant „Linux“ komandinę eilutę. Kaip visada, jei šis straipsnis buvo naudingas, pasidalykite savo mintimis toliau pateiktame komentarų skyriuje.