下面我们来学习通过终端连接WiFi(命令行方式)。 在使用 Linux 时,有时可能会发生我们无法访问图形用户界面的情况,例如在 Vanilla Arch 安装期间。 在这种情况下,我们可能需要通过终端连接到Wifi。
通过终端连接WiFi的步骤
在本模块中,我们将学习如何使用命令行界面连接到 Wifi 网络。
步骤 1:确定您的可用网络设备
首先,我们需要确定我们将用来连接到我们的 wifi 网络的网络设备。 我们可以使用 ip 命令列出我们的接口:
$ ip a
或者
$ iwconfig
查看后者的输出,我们应该在它的输出中找到一个类似的部分:
wlan0 IEEE 802.11 ESSID:off/any Mode:Managed Access Point: Not-Associated Tx-Power=20 dBm Retry short limit:7 RTS thr:off Fragment thr:off Power Management:off
这里我们的接口被称为 无线局域网0 但对你来说可能会有所不同。 现在我们检查前者的输出,它为我们提供以下输出 无线局域网0 :
wlan0: <BROADCAST,MULTICAST> mtu 1500 qdisc noqueue state DOWN group default qlen 1000 link/ether 2c:6e:85:fe:04:a7 brd ff:ff:ff:ff:ff:ff
这里要注意的最重要的一点是 无线局域网0 被标记 下 我们需要转 向上 使用 ifconfig 命令:
$ sudo ifconfig wlan0 up
或者,您可以使用以下命令检查 WiFi 无线电状态 nmcli 通过:
$ nmcli radio wifi enabled
如果未启用,您可以使用:
$ nmcli radio wifi on
最后,您可以使用以下命令检查网络接口卡的状态:
$ nmcli dev status DEVICE TYPE STATE CONNECTION wlan0 wifi disconnected
笔记: 如果您的 wifi 卡在您的笔记本电脑/计算机上被硬阻止,您需要执行以下操作并重复上述步骤。
$ echo "blacklist hp_wmi" | sudo tee /etc/modprobe.d/hp.conf $ sudo rfkill unblock all
第 2 步:扫描可用的 Wifi 网络
现在我们已经准备好我们的 wifi 卡,我们需要扫描可用的 wifi 网络,我们可以使用:
$ nmcli dev wifi list
或者,
$ sudo iw wlan0 scan | grep SSID
这应该列出您周围所有可用 wifi 网络的名称。 考虑到前者,我们应该得到如下输出:
IN-USE BSSID SSID MODE CHAN RATE SIGNAL BARS SECURITY 60:63:4C:5D:F6:69 home-network Infra 1 270 Mbit/s 100 ▂▄▆█ WPA1 WPA2
因此,如我们所见,我们拥有要连接的 wifi 网络的 SSID。
第 3 步:连接到 Wifi 网络
现在我们有了我们的 SSID,我们可以简单地使用以下命令连接到它:
$ sudo nmcli --ask dev wifi connect <SSID> Password: Device 'wlan0' successfully activated with 'f747251b-1346-48a2-ae25-1b6fd6243984'.
在此之后,我们的设备应该连接到 wifi 网络。
您可以通过 ping 默认网关来检查您是否已连接,或者如果您想检查互联网连接,您只需键入:
$ 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=114 time=50.4 ms 64 bytes from 8.8.8.8: icmp_seq=2 ttl=114 time=46.4 ms 64 bytes from 8.8.8.8: icmp_seq=3 ttl=114 time=45.2 ms 64 bytes from 8.8.8.8: icmp_seq=4 ttl=114 time=42.2 ms 64 bytes from 8.8.8.8: icmp_seq=5 ttl=114 time=44.5 ms 64 bytes from 8.8.8.8: icmp_seq=6 ttl=114 time=48.8 ms --- 8.8.8.8 ping statistics --- 6 packets transmitted, 6 received, 0% packet loss, time 5008ms rtt min/avg/max/mdev = 42.175/46.245/50.375/2.723 ms
由于我们可以 ping 谷歌的 DNS 服务器,我们可以说我们现在有互联网连接!
结论
因此,我们成功地从 CLI 连接到了 wifi 网络。 在这里,我们明确选择了 nmcli 命令来为我们完成大部分工作,因为它可以在包括实时 Arch Linux ISO 在内的各种系统上使用,并且非常易于使用并且可以轻松进行故障排除!