由于我现在不使用 GNOME,而是尝试使用 wmii,因此 nm-applet 对我来说不再可用。我知道有 nmcli 可以控制。我真正感兴趣的是它是否真的可以替代 nm-applet。
man nmcli
,有这样一句话,让我很困惑:
它并非 nm-applet 或其他类似客户端的替代品。
什么是其他类似客户意思是?
用例包括:
服务器、无头机:无 GUI可用;然后使用 nmcli 进行交谈直接地到 NetworkManager 并仅控制系统范围的连接。
用户会话:对于这种情况,
nmcli
可以交谈nm-applet
以找到用户连接。它仍然可以交谈直接地交给 NetworkManager 来操作这些连接。nmcli
没有可以直接访问 GConf 中的用户配置数据,并nm-applet
自行处理。例如,当需要机密信息时,这可能会导致小程序弹出密钥环对话框。
既然
nmcli
可以在没有 X 的情况下直接工作,那么为什么在需要秘密时它就不能正常工作呢?
PS. 有没有其他简单的方法可以使用命令行来控制连接?
答案1
首先,我要说的是,它nm-applet
可以在 Gnome 以外的环境中使用:我成功地在awesome
以及openbox
。
nmcli
不提供相同的功能nm-applet
,例如您无法配置新的连接。
从命令行连接有线或无线网络的有效替代方法是wicd-curses
。
答案2
类似客户端是指执行与 nm-applet 类似操作但不是 nm-applet 的应用程序。由于 Network Manager 由 DBus 驱动,因此任何人都可以自由编写客户端来控制它,而无需以任何方式与 Network Manager 代码交互。这有点像您无需更改服务器即可使用不同的浏览器连接到 Web 服务器。
无头服务器不需要像笔记本电脑那样的秘密。
我不认为手册页说您不能使用机密。它说如果您安装了 nm-applet,则可以重复使用它来提供每个用户的网络配置和个人密码。如果它不可用,那么我认为您必须自己提供机密。
我通常不会从命令行使用网络管理器。但它使用 DBus,因此为它编写一个 curses 应用程序或其他东西相对容易。或者您可以手动使用 dbus-end,但这可能不太好。
答案3
您可以使用命令行配置连接。例如,此命令将创建一个 vpn 连接:
nmcli con add type vpn ifname '*' vpn-type libreswan
如果你需要密钥,那么你可以直接编辑 vpn 的配置文件。这些文件位于
/etc/NetworkManager/system-connections/[connection name].
用你喜欢的编辑器打开文件并添加以下行
[vpn-secrets]
password=[my password]
如果你给一个人一个命令,他可以使用Linux一天,如果你教一个人,他将成为一个专业人士
答案4
是的,您可以使用 nmcli 而不是 nm-applet 来连接。您可以使用命令行完全控制您的网络连接。