使用nmcli命令行工具连接WiFi

2025年11月17日 434点热度 0人点赞 0条评论

nmcli 是 NetworkManager 的命令行界面,功能强大,常用于服务器或没有图形界面的环境中管理网络连接。

下面是分步操作指南:

1. 查看可用的 WiFi 网络

首先,你需要扫描并列出周围可用的 WiFi 网络。

nmcli device wifi list

或者使用更简洁的别名:

nmcli dev wifi

执行后,你会看到类似下面这样的列表,包含了 SSID (网络名称)、BSSID、信号强度、信道、加密方式等信息:

IN-USE  SSID                  MODE   CHAN  RATE        SIGNAL  BARS  SECURITY
        MyHomeWiFi            Infra  6     540 Mbit/s   90      ▂▄▆█  WPA2
        CoffeeShopFreeWiFi    Infra  11    540 Mbit/s   75      ▂▄▆_  WPA2
        NeighborWiFi          Infra  36    1300 Mbit/s  60      ▂▄__  WPA3
*       MyPhoneHotspot        Infra  1     150 Mbit/s   40      ▂___  WPA2

IN-USE 列中的 * 号表示当前已连接的网络。

2. 连接到一个新的 WiFi 网络

这是最常见的操作。你需要知道网络的 SSID 和密码。

基础命令:

nmcli device wifi connect <SSID> password <password>

示例:

如果要连接到 SSID 为 "MyHomeWiFi",密码为 "MySuperSecretPassword123" 的网络,你应该输入:

nmcli device wifi connect MyHomeWiFi password MySuperSecretPassword123

注意:
* 如果你的 SSID 或密码中包含空格或特殊字符,需要用引号将其括起来。例如:nmcli device wifi connect "My Home WiFi" password "P@ssw0rd!"
* 这个命令会自动创建一个新的网络连接配置文件,并立即尝试连接。

3. 连接到已保存的 WiFi 网络

如果你之前已经连接过某个网络,NetworkManager 会保存其配置文件。你可以直接通过连接名称来重新连接。

步骤 3.1: 查看已保存的连接配置文件

nmcli connection show

你会看到所有已保存的网络连接(包括以太网、VPN等),例如:

NAME                UUID                                  TYPE      DEVICE
MyHomeWiFi          xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx  wifi      wlan0
Wired connection 1  yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy  ethernet  eth0
MyPhoneHotspot      zzzzzzzz-zzzz-zzzz-zzzz-zzzzzzzzzzzz  wifi      --

DEVICE 列显示 -- 表示该连接当前未激活。

步骤 3.2: 激活(连接)已保存的配置文件

使用 nmcli connection up 命令, followed by the connection name or UUID。

nmcli connection up MyHomeWiFi

或者使用 UUID:

nmcli connection up xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx

使用名称通常更方便。

4. 断开当前的 WiFi 连接

如果你想断开当前的网络连接,可以使用以下命令:

nmcli connection down MyHomeWiFi

或者,你也可以关闭整个 WiFi 设备:

nmcli radio wifi off

之后可以用 nmcli radio wifi on 重新开启。

5. 删除已保存的 WiFi 网络配置

如果你不再需要某个已保存的网络,可以将其删除。

nmcli connection delete MyHomeWiFi

执行此命令后,该网络的密码和其他设置将被彻底删除。

总结与常用命令速查表

操作 命令
扫描 WiFi nmcli device wifi list
连接新 WiFi nmcli device wifi connect <SSID> password <password>
查看已保存连接 nmcli connection show
连接已保存网络 nmcli connection up <连接名称>
断开网络 nmcli connection down <连接名称>
删除已保存网络 nmcli connection delete <连接名称>
开启/关闭 WiFi nmcli radio wifi on / nmcli radio wifi off
查看网络状态 nmcli general status

故障排除小贴士

  • 确保 NetworkManager 正在运行nmcli 依赖 NetworkManager 服务。可以用 systemctl status NetworkManager 检查其状态。
  • 权限问题:通常需要 root 权限来管理网络连接。如果命令失败,请尝试在前面加上 sudo
  • 详细输出:在命令后加上 -v (verbose) 可以获得更详细的输出,有助于排查问题。例如:nmcli -v device wifi connect ...

通过以上命令,你就可以完全在命令行下自如地管理你的 WiFi 连接了。

暗暗

这个人很懒,什么都没留下

文章评论