如何使用 Nmcli 命令从 Linux 终端连接 Wi-Fi?如何使用 Nmcli 命令从 Linux 终端连接 Wi-Fi?如何使用 Nmcli 命令从 Linux 终端连接 Wi-Fi?如何使用 Nmcli 命令从 Linux 终端连接 Wi-Fi?
  • 业务
  • 目标
  • 支持
  • 登录
找到的结果: {phrase} (显示: {results_count} 共: {results_count_total})
显示: {results_count} 共: {results_count_total}

加载更多搜索结果...

搜索范围
模糊匹配
搜索标题
搜索内容

如何使用 Nmcli 命令从 Linux 终端连接 Wi-Fi?

发表 admin at 2025年2月28日
类别
  • 未分类
标签

如果您是 Linux 用户并希望从终端连接到 Wi-Fi 网络。虽然看起来可能很可怕,但实际上这是使用 Nmcli 命令的一个简单过程。在本文中,我将以简单易懂的方式向您介绍使用 Nmcli 命令从 Linux 终端连接 Wi-Fi 的步骤。那么让我们开始吧!

首先,如果我们想检查网络设备的名称,我们可以通过运行以下命令来简单地做到这一点 -

$ iw dev

您将通过运行命令 − 获得此类输出

phy#0
   Interface wlan0
      ifindex 3
      wdev 0x1
      addr 12:34:56:78:9a:bc
      ssid MyWiFiNetwork
      type managed
      channel 6 (2437 MHz), width: 20 MHz, center1: 2437 MHz
      txpower 20.00 dBm

在本例中,名称为 wlan0。请考虑一下您将得到什么。

接下来,我们将检查网络设备的状态是否已连接到 WI-Fi。为此,运行以下命令 -

iw wlan0 link

您将获得设备的状态,如下所示 -

Not connected.

在我们深入研究这一点之前,需要注意的是,并非所有 Linux 发行版都在系统中预装了 Nmcli 命令。如果您的系统上没有安装它,您可以使用包管理器安装它。例如,在基于 Ubuntu 或 Debian 的系统上,您可以通过在终端中运行以下命令来安装 Nmcli −

sudo apt-get install network-manager

当您运行上述命令来安装 nmcli 时,您将获得与此类似的终端输出 -

Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following additional packages will be installed:
   libnma0 libteamdctl0 network-manager-config-connectivity-ubuntu
   network-manager-gnome
Suggested packages:
   policykit-1-gnome
The following NEW packages will be installed:
   libnma0 libteamdctl0 network-manager network-manager-config-connectivity-ubuntu
   network-manager-gnome
0 upgraded, 5 newly installed, 0 to remove and 0 not upgraded.
Need to get 2,793 kB of archives.
After this operation, 11.1 MB of additional disk space will be used.
Do you want to continue? [Y/n] 

安装 Nmcli 后,您可以使用它连接到 Wi-Fi 网络。请仔细遵循这些说明!

第 1 步:扫描 Wi-Fi 网络

在连接到 Wi-Fi 网络之前,您需要知道其名称 (SSID)。您可以使用 Nmcli 命令扫描可用的 Wi-Fi 网络,方法是在终端中运行以下命令 −

nmcli device wifi list

通过运行此命令,您将获得如下所示的输出 -

IN-USE  SSID             MODE   CHAN  RATE        SIGNAL  BARS  SECURITY  
        MyWiFiNetwork    Infra  6     54 Mbit/s   80      ▂▄▆_  WPA2      
        OtherWiFiNetwork Infra  11    54 Mbit/s   70      ▂▄__  WPA1 WPA2 
        PublicWiFi       Infra  1     54 Mbit/s   50      ▂▄__  --        

此输出列出了您的计算机可以检测到的所有 Wi-Fi 网络,及其 SSID(网络名称)、模式(基础设施或 Ad-Hoc)、通道、速率、信号强度、条数和安全类型。在此示例中,您的计算机当前连接到具有 WPA2 安全性的名为“MyWiFiNetwork”的网络,同时还检测到其他两个网络:具有 WPA1/WPA2 安全性的“OtherWiFiNetwork”和不具有安全性的“PublicWiFi”。

或者

或者,如果您不想使用 nmcli 命令扫描 WI-FI 网络,您也可以在 sudo 的帮助下执行相同的操作。为此,命令将是−

sudo iw wlan0 scan

通过运行此命令,您将得到以下输出 -

BSS 00:11:22:33:44:55 (on wlan0)
	freq: 2462
	beacon interval: 100 TUs
	capability: ESS Privacy ShortPreamble ShortSlotTime (0x0431)
	signal: -56.00 dBm
	last seen: 204 ms ago
	SSID: example_network
	DS Parameter set: channel 11
	RSN:	 * Version: 1
		 * Group cipher: CCMP
		 * Pairwise ciphers: CCMP
		 * Authentication suites: PSK
		 * Capabilities: 16-PTKSA-RC 1-GTKSA-RC (0x000c)
	HT capabilities:
		Capabilities: 0x11ac
			HT20/HT40
			SM Power Save disabled
			RX Greenfield
			RX HT20 SGI
			RX HT40 SGI
			TX STBC
			RX STBC 1-stream
			Max AMSDU length: 3839 bytes
			No DSSS/CCK HT40
		HT operation:
			Primary channel: 11
			Secondary channel offset: no secondary
			HT40: disabled
			SSID Length: 14
			SSID: example_network

BSS 66:77:88:99:aa:bb (on wlan0)
	freq: 2412
	beacon interval: 100 TUs
	capability: ESS Privacy ShortPreamble ShortSlotTime (0x0431)
	signal: -72.00 dBm
	last seen: 456 ms ago
	SSID: another_network
	DS Parameter set: channel 1
	HT capabilities:
		Capabilities: 0x11ac
			HT20/HT40
			SM Power Save disabled
			RX Greenfield
			RX HT20 SGI
			RX HT40 SGI
			TX STBC
			RX STBC 1-stream
			Max AMSDU length: 3839 bytes
			No DSSS/CCK HT40
		HT operation:
			Primary channel: 1
			Secondary channel offset: no secondary
			HT40: disabled
			SSID Length: 15
			SSID: another_network

请务必注意,此处显示的输出只是一个示例,您在自己的系统上看到的输出可能会有所不同,具体取决于您的特定 Wi-Fi 硬件和系统配置。

第 2 步:连接到 Wi-Fi 网络

获得要连接的 Wi-Fi 网络的 SSID 后,可以使用 Nmcli 命令进行连接。在终端中运行以下命令 -

nmcli device wifi connect <SSID>

运行此命令您将获得以下输出

$ nmcli device wifi connect MyWiFiNetwork
Device 'wlan0' successfully activated with 'd0:53:49:67:8a:16'.

在本例中,我们正在建立与 SSID“MyWiFiNetwork”标识的 Wi-Fi 网络的连接。为此,nmcli 命令利用 wlan0 设备连接到网络。成功连接到网络后,该命令会提供反馈,确认设备已被激活,及其唯一的 MAC 地址(在本例中为 d0:53:49:67:8a:16)。请记住,您看到的确切输出可能会根据您的特定系统和网络设置而有所不同。

第 3 步:管理 Wi-Fi 连接

使用 Nmcli 连接到 Wi-Fi 网络后,您可以使用以下命令来管理连接−

  • 要断开当前 Wi-Fi 网络的连接,请运行以下命令 -

nmcli device disconnect

这是输出 -

如果您之前已连接到网络,则输出将类似于以下内容 -

Device 'wlan0' successfully disconnected.

如果您之前没有连接到网络,则输出将类似于以下内容 -

Error: No active connection or device found.

此输出表明没有可断开的活动网络连接,或者

  • 要查看您已连接的所有 Wi-Fi 网络的列表,请运行以下命令 -

nmcli connection show

这是输出 -

NAME                UUID                                  TYPE            DEVICE          
Wired connection 1  12345678-9abc-def0-1234-56789abcdef0  ethernet        enp0s25         
Wi-Fi network 1     12345678-9abc-def0-1234-56789abcdef1  wifi            wlp3s0          
Wi-Fi network 2     12345678-9abc-def0-1234-56789abcdef2  wifi            wlp3s0          

此命令列出系统上所有已保存的网络连接及其名称、UUID、类型和设备。在此示例中,有两个 Wi-Fi 网络连接和一个有线连接。

  • 要删除已保存的 Wi-Fi 连接,请运行以下命令 -

nmcli connection delete <connection-name>

这是此命令的终端输出的示例 -

$ nmcli connection delete MyWifiConnection
Connection 'MyWifiConnection' (94e863e8-41dc-4e63-bb02-27cf8c1fcbe0) successfully deleted.

在此示例中,我们将删除名为 MyWifiConnection 的 Wi-Fi 连接,终端输出确认该连接已成功删除。输出还包括已删除连接的连接 ID (94e863e8-41dc-4e63-bb02-27cf8c1fcbe0)。

将 替换为您要删除的 Wi-Fi 连接的名称。

结论

总而言之,在Linux终端使用Nmcli命令连接Wi-Fi网络是一种有效且便捷的上网方式。通过遵循本文中概述的说明,您可以轻松扫描可访问的 Wi-Fi 网络、选择所需的网络并有效管理您的 Wi-Fi 连接。

©2015-2025 Norria support@norria.com