nmcli 是 NetworkManager 的命令行界面,功能强大,常用于服务器或没有图形界面的环境中管理网络连接。
下面是分步操作指南:
Table of Contents
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 连接了。
文章评论