使用 nmcli(网络管理器命令行界面)连接到已保存的 Wifi 网络

使用 nmcli(网络管理器命令行界面)连接到已保存的 Wifi 网络

在 Linux 桌面环境中,网络管理器保存了一个无线网络,我可以通过单击连接按钮。(它被故意设置为不是自动连接到这个特定的 wifi 网络)

我想实现与单击连接按钮,从终端;(例如,使用nmcli

这就是我所取得的进展

nmcli con up "ManualNetworkName"
Passwords or encryption keys are required to access the wireless network 'ManualNetworkName'.
Warning: password for '802-11-wireless-security.psk' not given in 'passwd-file' and nmcli cannot ask without '--ask' option.

为什么会给出在某些密码文件中找不到密码的错误?

网络管理器已保存此网络的密码。在 GUI 中,我只需单击连接按钮,无需进一步交互即可连接。我不必输入密码,因为网络管理器中已为该 wifi 网络保存了密码。网络管理器 GUI 工作正常。

顺便说一句,我不会接受需要指定密码才能通过终端连接的答案。它必须使用现有的网络管理器配置文件进行连接(其中包括此网络的各种设置;而不仅仅是密码)。

答案1

恐怕在 Linux Mint 19 Tara 上执行您所发布的操作对我来说是可行的 :-(

我唯一能想到的是:

  • 检查您正在运行的命令是否有问题。nmcli con up "ManualNetworkName"在我的系统上运行正常,但手册页显示它是nmcli c up "ManualNetworkName"“c”而不是“con”

  • 检查您是否以其他用户(即 root 或其他无权访问您的密钥环的用户)的身份运行该命令。

  • (可能性不大)检查您的密钥环是否确实已打开。即测试您是否可以单击 GUI 中的按钮进行连接和断开连接,然后转到终端并尝试使用命令执行相同的操作。(不过您可能已经这样做了)

笔记:我很确定 nmcli 会保存密码, ~/.local/share/keyrings/但这些文件当然是加密的,因此需要通过seahorse(这是“密码和密钥”的命令行名称)打开

相关内容