14.04 - Network manager stopped working

Solution 1:

I got the same problem today.

TLDR: downgrade libnl3 or upgrade network-manager.

As per this answer, problem is that a fix in libnl3 caused a regression in network-manager. Then, it was only a bug for -proposed packages, but I guess bug was tested enough that it could be introduced into regular Ubuntu ;).

Safest way is to take a step back and install earlier versions of libnl-3-200 libnl-genl-3-200 libnl-route-3-200 (see details in said answer).

This leaves you with downgraded packages. Remember to not upgrade them until relevant upgrade for network-manager is available.

Alternatively (I did this), you can take a step ahead and install newer version of network-manager: for amd64 or for i386. You can download package on different system and pass it with USB stick. Or download it with your smartphone and pass it via USB.

Install it with:

sudo dpkg -i network-manager_*.deb

You can try to get networking by just restarting NetworkManager:

sudo service network-manager restart

But I needed to reboot to get systray applet back.

Solution 2:

This method works if you can connect by Ethernet cable.

Use Ubuntu's built in recovery mode to upgrade Network Manager.

Step 1

Use the down-arrow key to select Advanced options for Ubuntu and press Enter

Step 2

Use down-arrow key to select the latest Linux kernel with Recovery Mode and press Enter

I used Ubuntu, with Linux 4.2.0-36-generic (recovery mode)

Step3

Use down-arrow key to select network Enable Networking and press Enter

Step 4

Press Enter for OK to remount the file system

Step 1 to 4 screenshots

Step 5

Use the down-arrow key to select dpkg Repair Broken packages and press Enter

Step 6

It will ask to download the latest Network Manager with Continue [Y/n]. Input letter y for "yes" and press Enter. When all operations have finished it will say

Finished. Please press Enter

So press Enter again.

Step 7

Select resume Resume normal boot and press Enter

Step 8

Press Enter and continue to boot. At the login screen DO NOT log in instead do a NORMAL restart (click shutdown icon at the top right area of the screen).

After the PC restarts then log in.

Network connections were back when I did these steps.

Step 5 to 8 screenshots

Solution 3:

You can do it this way to fix the problem:

Download file:

  • libnl-3-200_3.2.21-1_XXX.deb
  • libnl-route-3-200_3.2.21-1_XXX.deb
  • libnl-genl-3-200_3.2.21-1_XXX.deb

    OS 32bit: XXX = i386 || OS 64bit: XXX = amd64

Link: http://archive.ubuntu.com/ubuntu/pool/main/libn/libnl3/

To them into one folder and install them with the command:

sudo dpkg -i lib*.deb

Then Reboot. Done :3

Solution 4:

I would not recommend downgrading packages or installing new ones by hand - this will inevitably lead to version issues later on. The best fix to this issue is simply to upgrade the network-manager package.

The first thing to do is to connect manually to the internet; while the network-manager is dead this does not mean you can not connect.

1. Open a terminal and edit the interfaces file:

sudo pico /etc/network/interfaces

There add the following lines, they indicate the eth0 interface should no longer be managed:

allow-hotplug eth0
iface eth0 inet dhcp

2. With this the connection can be started manually:

sudo ifup eth0

Note that there will be no notification in the panel - this is a manual connection. Give it a try with ping or firing up your internet browser.

3. Now update the apt meta-data:

sudo apt-get update

And upgrade the network-manager package:

sudo apt-get upgrade network-manager

4. Make sure you now have version 0.9.8.8-0ubuntu7.3 installed:

apt-cache show network-manager

5. Now edit again the interfaces file and remove or comment the lines added in step 1.:

sudo pico /etc/network/interfaces

6. Finally reboot the system.