如何在登录前强制NetworkManager建立连接?


8

我有95%的时间将笔记本电脑留在家中。我希望它无需登录即可连接到我的无线网络。而且,同样重要的是,我希望注销后不要断开连接。

我正在使用Fedora,但也欢迎使用Ubuntu说明。

Answers:


5

我想这个问题是在不久前提出的,但是此功能已添加到最新版本的Network Manager中。看这里


截至2011年5月,该链接显示:在版本0.7.1或更高版本上,请在登录之前编辑要使用的连接的配置文件,然后选择左下角的“对所有用户可用”框

另外,在运行提供的Ubuntu 14.04映像的odroid上,它对我不起作用。
安德鲁·瓦格纳

至少从Ubuntu 14.04起,此答案(和链接的文档)已过时。当然,该FAQ中的过时信息尚未删除。
安德鲁·瓦格纳

3

这个想法的问题是NetworkManager服务从nm-applet(或者,如果您在KDE中,则是KDE类似物)获取其命令。为避免混淆自己,我假设您在GNOME中。存储库中有一个名为cNetworkManager的命令行NetworkManager界面(奇怪的是,它是用Python编写的)。您可以尝试在启动脚本中使用cNetworkManager粘贴命令以连接到网络(我不完全确定您必须将此脚本放在何处,但我知道有可能:D)。我不知道这种方法是否可以连接,或者注销后是否保持连接,但我确实知道至少有两个问题需要解决。

1)您将拥有与nm-applet对抗的脚本。如果要执行此操作,我将禁止nm-applet自动启动(应该在首选项->会话或首选项->启动程序中对其进行配置,具体取决于您是否使用fedora 11)。

2)如果您想更改网络(并执行诸如自动检测网络之类的奇特的事情),则必须使用cNetworkManager进行操作(这确实很痛苦),或者启动nm-applet并失去保持的能力注销后连接打开。

祝您好运,并让我们知道这是否有效!


我正在工作的Windows计算机上;到家时,我会测试一下。如果NetworkManager和nm-applet驻留在不同的程序包中会很好。
JCCyC

我认为将它们放在同一个包中实际上是必不可少的。如果您不给我们提供控制服务的方法,给我们提供服务有什么意义?我会朝相反的方向争论;cNetworkManager也应该在NetworkManager软件包中,以便在X不运行时需要控制无线卡(这在我身上发生了很多次)
Babu

我不确定该cNetworkManager在2015年之前是否存在。我相信默认情况下会安装一个“ nmcli”工具,该工具可让您使用cli中的network-manager。
安德鲁·瓦格纳

2

我遇到了同样的问题,最终我完全删除了NetworkManager,而是直接使用wpa_supplicant。它以相反的方式工作-您有一个配置文件,其中包含您要自动连接的所有网络,以及一个GUI,可以在运行时覆盖它(并连接到其他网络),或更改配置文件。

我使用了本教程来设置我的Debian,但并没有太多的问题(与Ubuntu相同):http : //svn.debian.org/wsvn/pkg-wpa/wpasupplicant/branches/unstable/ debian / README.Debian?op = file&rev = 0&sc = 0


1

我已经在Fedora 22上使用了Andrew Wagner的方法与WPA安全性建立了联系。

  1. 通常使用GUI创建连接“ demo”。

  2. 以root身份创建一个文件/ etc / NetworkManager / wifipw,其中包含以下一行:

    802-11-wireless-security.psk:wpa-pw 
    

wpa-pwwifi密码在哪里。

  1. 将以下行添加到crontabfor根目录:

    @reboot sleep 10; /usr/bin/nmcli conn up id demo passwd-file etc/NetworkManager/wifipw
    

在我的系统上,sleep 10是必需的,以便在尝试连接之前给设备时间进行初始化。


0

可能这不是您的选择,但是您可以像本教程中一样通过配置文件设置网络。它适用于Ubuntu,但我没有注意到差异。网络将在操作系统启动过程中打开。


这是一个很好的解决方案,但也有一些注意事项。NetworkManager和网络服务不应同时运行;他们都将尝试同时控制无线硬件并做一些奇怪的事情。您可以做的是默认情况下启用网络服务,并且仅在需要时启用networkamanager。
巴布(Babu)

确实如此。
Kirill V. Lyadvinsky

0

这是我做的(在运行Ubuntu 14.04的odroid臂板上):

以普通用户的身份(即nm-applet)设置网络连接,为其命名,即“ Decktop Demo”。您可能需要选中“常规”->“所有用户都可以连接到此网络”框。

以超级用户身份编辑“ cron”:

须藤crontab -e

如果出现提示,请选择您选择的编辑器,然后在底部添加一行:

@startup / usr / bin / nmcli conn up id“桌面演示”

向网络管理之神献祭一只小动物,然后重启。

这种方法的优点是可以通过网络管理器进行所有操作,因此它应该可以很好地为各种台式机(即nm-applet)提供GUI网络管理小程序。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.