上次升级导致网络管理器崩溃(无互联网连接,无小程序)


85

今天升级时,某种原因导致我的无线网络管理员消失了。甚至没有通过有线连接进行连接。

文件显示此错误:

**(nm-applet:2716): WARNING **: Could not initialize NMClient /org/freedesktop/NetworkManager: The name org.freedesktop.NetworkManager was not provided by any .service files 

(nm-applet:2716): nm-applet-WARNING **: Error connecting to ModemManager: Error calling StartServiceByName for org.freedesktop.ModemManager1: GDBus.Error:org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid 

(nm-applet:2716): nm-applet-WARNING **: Could not find ShellVersion property on org.gnome.Shell after 5 tries 

(nm-applet:2716): nm-applet-WARNING **: Failed to register as an agent: (2) The name org.freedesktop.NetworkManager was not provided by any .service files 

是否有可以从Windows下载并发送到ubuntu的补丁,还是必须重新加载所有内容?我尝试运行两个版本,但仍然无法访问互联网。


(NetworkManager:2425):GLib-WARNING **:在先前的GError或未初始化的内存的顶部设置了GError。这表明某人代码中存在错误。在设置错误之前,必须确保该错误为NULL。覆盖错误消息是:密钥文件没有组“连接性”,这是我在尝试重新启动网络管理器时遇到的问题……在Ubuntu中返回了十个更新集,但仍然命中了它……
Adam Albanowicz,2016年

1
此问题仅发生在那些打开了proposed存储库的用户身上。最初这是一个坏主意。
飞行员

6
我要说的更多的坏主意是将libnl升级为提议的更​​新,而不用那里的网络管理器的实际版本对其进行测试...而打开提议对于2岁的lts ubuntu版本具有真正的目标* -lts-wily,例如,下一个lts发布之前还有3个月-无论如何,狗屎发生了;-)
r2rien

仅供以后参考:当您不提及要使用的Ubuntu版本和升级的Network Manager版本时,“上次”升级是没有意义的。
muru

我已经遇到了这个问题,这个问题已经有一段时间没有解决了。我要做的是sudo ifdown eth0断开连接和sudo ifup eth0建立新链接时:)。
哈里KT

Answers:


124

原因

这是由对libnl3错误#1511735的修复引入的回归引起的。
网络管理器错误#1539513网络管理器错误#1539634中报告了导致网络管理器崩溃的情况


降级libnl软件包并等待网络管理器软件包的升级


第1步

尝试使用apt-get降级libnl,如@Max答案:

sudo apt-get install libnl-3-200=3.2.21-1 libnl-route-3-200=3.2.21-1 libnl-genl-3-200=3.2.21-1

第2步

如果第1步失败,
因为软件包不再位于缓存中,并且显然不能被软件包管理器下载,则需要手动降级libnl软件包(下载+安装):

  • 下载并复制到您的系统中
    [从启动实时distrib / rescue cd或从另一台计算机+ USB记忆棒]
    下载amd64的链接: libnl libnl-genl libnl-route
    下载i386的链接: libnl libnl-genl libnl-route

  • 返回到您保存这些.deb文件的系统,使用dpkg安装它们:

    sudo dpkg -i libnl-*.deb
    

第三步

现在,您应该能够(重新)启动NetworkManager并恢复网络连接:

sudo service network-manager restart

注意

这些错误通过预发布的更新击中了ubuntu trusty 14.04trusty-proposed 软件更新属性

从版本3.2.21-1到版本的libnl软件包的最新更新3.2.21-1ubuntu1引入了回归,从而导致网络管理器崩溃


trusty-proposed
当前版本中的网络管理器尚无任何升级0.9.8.8-0ubuntu7.2

网络管理器的更新现已在trusty-proposed
更新的版本中提供:0.9.8.8-0ubuntu7.3
请测试建议的软件包(#1539634注释11)


因此,在包管理器上触发升级之前,您应该应用“保留”-如libnl3错误#1511735评论n°29中所述

sudo apt-mark hold libnl-3-200 libnl-genl-3-200 libnl-route-3-200

一旦trusty-proposed安装了将来的升级版本,您可以通过以下方式删除该保全:

sudo apt-mark unhold libnl-3-200 libnl-genl-3-200 libnl-route-3-200

然后,它将允许您再次升级libnl


1
如果我没记错的话,在安装了这三个libnl软件包之后(在版本上3.2.21-1,不是3.2.21-1ubuntu1,我不需要重新启动计算机。我想我只是重新运行了sudo /usr/sbin/NetworkManager 或类似的东西。这正确吗?基本上,我是在问是否需要重新启动,或者是否满足其他条件?
Aaron McDaid

3
NetworkManger是一项服务(但可能取决于您的操作系统/版本),因此a sudo service network-manager restart应该足够了
r2rien

1
改进了格式。我也遇到了这个问题,这个答案对我有用。
laconbass

1
@laconbass,感谢您对格式的极大改进;-)
r2rien

1
如果此错误影响了您,请单击第二行上的两个启动板错误链接,然后在启动板页面上单击“是,此错误会影响您”。然后抓住你烂的西红柿,加入我的暴民,以免引起误会。感谢这篇文章!
guttermonk '16

10

截至2016年5月13日libnl错误也是影响用户无需信赖提出的,谁几乎肯定会被谷歌在这里执导。

已更新,libnl并且 network-manager软件包已经发布,因此我建议进行向前升级

手动启用网络

假设您使用的是有线连接,eth0并且网络启用了DHCP,请使用终端配置网络接口:

sudo ifconfig eth0 up
sudo dhclient eth0

更新网络管理员

在网络正常运行的情况下,使用Software Updater或从终端进行更新apt-get

选项A:软件更新程序

运行软件更新程序并正常更新。在撰写本文时,已发布了固定的软件包。

选项B:apt-get

(未经测试)。如果要最小化活动部件或没有图形界面,还可以从终端进行更新:

sudo apt-get update
sudo apt-get install network-manager

非常感谢!我没有USB记忆棒,但是我的台式机确实有有线连接...这非常有帮助。
凯恩

+1。现在已经发布了这些软件包的更新版本,这是最干净的修复程序。(此外,请确认我在未启用“建议”的情况下遭到攻击,并且不得不牢记在我上线之前如何使用iwconfig配置连接)
nikobelia,2016年

8

除了给定的解决方案之外,我还想提供一般建议。

关闭“建议的”存储库

不应该打开它。该“问题”仅影响那些打开建议的存储库并安装了损坏的软件包的用户。

该存储库包含不建议安装的测试软件包,除非您要测试某些特定的软件包。

在此处输入图片说明

如果您不希望出现这种意外,请不要提出“建议”。

您可以参考此问题以获取更多信息。


3
请不要怪用户。在我看来,这是幼稚的做法,没有生产力,因为用户可能会因此而责怪开发人员。更好的答案是提高他们对所用系统的理解水平,从而使他们对如何处理这种回归错误
有所了解

3
作为开发人员,修补程序引入的回归(无论其合法性水平如何)都是错误。我可以建议您放松一下,至少可以说,您的语气听起来像是家长式的。在我这边,我相应地改写了我的答案。在你的身边,和你的水平,你可能会提供一些有用的链接,如EnableProposedPerformingSRUVerification例如
r2rien

2
@ r2rien:如果您坚持使用LTS,即使有更多可用的最新OS版本,您也不是很热衷于首先使用“最新最好的”软件。因此,使用LTS和永久启用建议的组合是不一致的。(我遇到了同样的问题,但我认为我必须“怪”自己。)我同意Pilot6的观点,这不是bug。后缀“ -proposed”表示它是为开发人员和测试人员准备的。
Gunnar Hjalmarsson

2
我同意这是一个错误,但在测试包中。测试的目的是发现此类问题。但是,如果用户不想“突然”遇到此类问题,则应禁用该存储库。
飞行员

2
是的,大多数用户不应该启用可信提议或可信反向端口。但是,从今天(2016年5月13日)开始,对于那些使用Trusted Backports,需要手动联网或将网络管理器升级到0.9.8.8-0ubuntu7.3的人来说,显然出现了相同的错误。参见[ bugs.launchpad.net/ubuntu/+source/libnl3/+bug/1581535]
Cedric Knight

3

更新到network-manager 0.9.8.8-0ubuntu7.2,然后重新启动。

热门解决方法:通过手动网络设置 sudo nano /etc/network/interfaces

解决方法!

降级一些库:

sudo apt-get install libnl-3-200=3.2.21-1 libnl-route-3-200=3.2.21-1 libnl-genl-3-200=3.2.21-1

那根本无法提供答案。
Eduardo Cola

降级库可能导致其他程序失败-请记住这一点。
托马斯·沃德

对于我的系统(ElementaryOS,Linux 3.19.0-49-通用#55〜14.04.1-Ubuntu 14.04),降级成功,并且nm可以再次工作。
Max

1
-1尽管这可能在基本OS上可行,但Ubuntu是不同的操作系统,因此修复程序可能不兼容。
David

3
这个答案是正确的。它在Ubuntu 14.04上对我有用。我分别下载了三个软件包的旧版本(libnl-...),并通过安装了它们dpkg -i。今天早上,我的机器上的答案中列出的三个软件包的版本完全是(3.2.21-1,不是3.2.21-1ubuntu1
Aaron McDaid

2

今天早上我遇到了同样的问题,降级libnl软件包也起作用。

我使用救援CD进行了重新引导libnl-3-200-3.2.21-1_amd64.deb,从http://archive.ubuntu.com/ubuntu/pool/main/libn/libnl3/下载了,libnl-genl-3-200_3.2.21-1_amd64.deb并使用进行了重新安装。libnl-route-3-200_3.2.21-1_amd64.debdpkg -i

网络又回来了。它可能不是最终的解决方法,但暂时使我继续前进14.04。

这是错误报告:https : //bugs.launchpad.net/ubuntu/+source/network-manager/+bug/1539634


1

我知道解决方法很快就会解决,棘手的部分是上网的麻烦。一种方法是使用真正易于使用的有线以太网:

打开终端

sudo dhclient eth0
sudo apt-get update
sudo apt-get upgrade

0

我是ubuntu的非常新手,也是一个非技术性的人,几乎没有这种计算机语言和所有语言的背景。

我遇到了nm的类似问题

按照r2rien的指示,我从他给的链接中下载了三个文件

(首先我不明白它们是三个链接,但是由于他精确地使用了英语:“文件”一词使我再次查找,然后我下载了其余两个文件)

那我就无法安装

我无法理解“ sudo dpkg -i libnl-*。deb”中的星号

我尝试过分别安装多个文件,然后一起安装,然后通过apt-get安装多少个文件;有时交换=代替_,例如3-200 = 3.2.21-1代替3-200_3.2.21-1。仍然没有结果。在网上搜索,然后发现了非常简单的方法。通过在“ sudo dpkg -i”之后在终端中拖动文件

然后遇到了另一个问题:处理触发器...就像有人通过“输入然后输入用户名并输入”给出建议一样,它也得到了解决。仍然持怀疑态度。终于成功了。谢谢r2rien和朋友。


“ libnl-*。deb”中的星号是通配符,因此该命令将影响以“ libnl-”开头和以“ .deb”结尾的任何内容。附带说明:在StackExchange社区上,最好将这样的消息(这些消息是对其他人的解决方案的注释)放在注释中,而不是自己作为答案。
nikobelia '16
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.