需要在 Linux 设备上连接到 Internet,但没有以太网端口或无法访问图形网络软件? 在本文中,我们将学习如何在 Linux 终端中使用 nmcli 命令行工具连接到 Wi-Fi。
什么是 nmcli?
Nmcli 是命令行界面 网络管理器, 用于识别和配置 Internet 连接的通用 Linux 应用程序。 许多发行版都有一个用于在桌面环境中使用 NetworkManager 的图形小程序,但如果您在 Linux 服务器上,您可能无法访问桌面。
通过终端连接Wi-Fi的一些方法有点复杂,涉及配置文件和知道你的PSK密钥。
nmcli 不是这样。 假设你有一个现代路由器,你只需要知道你的网络 SSID (您要连接的网络的名称)和网络密码(如果有)。
第 1 步:启用您的 Wi-Fi 设备
Linux PC 上的 Wi-Fi 卡除非启用,否则无法连接到 Internet。 要查看所有网络接口的状态,请使用以下命令:
nmcli dev status
您应该获得网络设备列表及其类型、状态和网络连接信息。
如果您不确定您的 Wi-Fi 设备是否已启用,您可以使用以下命令进行检查:
nmcli radio wifi
如果输出显示 Wi-Fi 是 禁用, 您可以使用以下命令启用它:
nmcli radio wifi on
第 2 步:识别 Wi-Fi 接入点
如果您不知道您的 Wi-Fi 接入点的名称(也称为 SSID),您可以通过扫描附近的 Wi-Fi 网络来找到它。
nmcli dev wifi list
注意下面列出的名称 SSID 对于您要连接的网络。 下一步将需要它。
第 3 步:连接到 Wi-Fi
启用 Wi-Fi 并识别您的 SSID 后,您现在就可以连接了。 您可以使用以下命令建立连接:
sudo nmcli dev wifi connect network-ssid
代替 网络-ssid 使用您的网络名称。 如果您的 WI-Fi 具有 WEP 或 WPA 安全性,您也可以在命令中指定网络密码。
sudo nmcli dev wifi connect network-ssid password "network-password"
或者,如果您不想在屏幕上写出您的密码,您可以使用 – 问 选项。
sudo nmcli --ask dev wifi connect network-ssid
系统现在将要求您输入网络密码,但不会显示。
您的设备现在应该已连接到互联网。 用 ping 测试一下。
ping google.com
NetworkManager 将保存连接并在重新启动时自动连接,因此您不必担心每次启动 Linux 机器时都会发出命令。
使用 nmcli 管理网络连接
您可以通过发出以下命令查看所有已保存的连接:
nmcli con show
如果您连接到一个网络,但您想使用不同的连接,您可以通过将连接切换到 向下. 您需要指定 SSID,或者如果您有多个具有相同 SSID 的连接,请使用 UUID。
nmcli con down ssid/uuid
要连接到另一个保存的连接,只需传递 向上 nmcli 命令中的选项。 确保指定要连接的新网络的 SSID 或 UUID。
nmcli con up ssid/uuid
无需 GUI 即可连接到 Wi-Fi
您现在无需使用图形界面即可连接到您的 Wi-Fi 网络,这使您成为了一个更通用的 Linux 用户。 如果您需要以无线方式移动文件,有许多 Linux 应用程序允许这样做,无论是否有桌面环境。