• 如何使用 Nmcli 通过 Linux 终端连接到 Wi-Fi


    0. 什么是 nmcli ?

    Nmcli(Network Manager Command Line),是一个用于识别和配置 Internet 连接的常见 Linux 应用程序。许多发行版都有一个用于在桌面环境中使用 NetworkManager 的图形小程序,但如果在 Linux 服务器上,可能将无法访问桌面。

    通过终端连接 Wi-Fi 的一些方法有点复杂,涉及配置文件和你知道的 PSK 密钥。

    nmcli 不是这样。假设有一台现代路由器,只需要知道网络的 SSID(Service Set Identifier 要连接的网络的名称)和网络密码(如果有的话)。

    1. 启用 Wi-Fi 设备

    Linux PC 上的 Wi-Fi 卡需要启用,否则无法连接到 Internet。要查看所有网络接口的状态,请使用以下命令:

    nmcli dev status
    
    • 1

    获得网络设备列表及其类型、状态和网络连接信息。


    如果不确定 Wi-Fi 设备是否启用,可以使用如下命令进行检查:

    nmcli radio wifi
    
    • 1

    如果输出显示 Wi-Fi 已 禁用,可以使用如下命令启用:

    nmcli radio wifi on
    
    • 1

    2. 识别 Wi-Fi 接入点

    如果不知道 Wi-Fi 接入点的名称(也称为 SSID),可以通过扫描附近的 Wi-Fi 网络来找到它。

    nmcli dev wifi list
    
    • 1

    注意需要连接的网络的SSID下列出的名称,下一步需要用到它。

    3. 连接到 Wi-Fi

    启用 Wi-Fi 并识别到 SSID 后,可以尝试连接。可以使用一下命令建立连接:

    sudo nmcli dev wifi connect network-ssid
    
    • 1

    network-ssid替换为网络名称。

    如果 Wi-Fi 具有 WEP 或 WPA 安全性,可以在命令中指定网络密码。

    sudo nmcli dev wifi connect network-ssid password "network-password"
    
    • 1

    通过空格分割参数,若SSID参数一个以上,记得用引号括起来


    或者,如果不想在屏幕上写出密码,可以使用--ask选项。

    sudo nmcli --ask dev wifi connect network-ssid
    
    • 1

    系统现在将需要输入网络密码,但不会显示。

    若设备现在已经连接到互联网,可以用ping测试一下。

    ping google.com
    
    • 1

    NetworkManager 将保存连接并在重新启动时自动连接,因此不必担心每次启动 Linux 机器时都会发出命令。

    使用 nmcli 管理网络连接

    可以通过发出以下命令查看所有已保存的连接:

    nmcli con show
    
    • 1

    如果连接到一个网络,但想使用不同的连接,可以通过将连接切换为down来断开连接。需要指定 SSID,或者如果有多个相同 SSID 的连接,请使用 UUID。

    nmcli con down ssid/uuid
    
    • 1

    要连接到另一个保存的连接,只需要在 nmcli 命令中传递 up 选项。确保指定要连接的新网络的 SSID 或 UUID。

    nmcli con up ssid/uuid
    
    • 1

    参考链接

    How to Connect to Wi-Fi Through the Linux Terminal With Nmcli
    nmcli 工具详解

  • 相关阅读:
    js 判断字符串中是否包含某个字符串
    生命周期的使用
    ResNet 09
    数据结构 - 数组 - 青岛大学(王卓)
    Spring框架-Aop
    NR paging
    斩获 offer 的 Java 面试宝典
    避免defer陷阱:拆解延迟语句,掌握正确使用方法
    PyTorch 实战之水果分类
    src实战-两处nacos未授权访问
  • 原文地址:https://blog.csdn.net/qq_51491920/article/details/126221940