Little Girl's Mostly Linux Blog

NoNetwork

No network?

This page was last updated on April 15, 2015.

If you installed or updated Kubuntu 12.04 LTS Precise Pangolin and are now getting a delay when booting with a message telling you Kubuntu is searching for network information followed by Kubuntu eventually booting without access to the network, one of the solutions below might help. Note that this is a very basic guide for a computer that uses one network card. Other guides elsewhere on the internet may be more useful for fancier set-ups.

Solution 1 – edit the udev daemon rules file

Kubuntu uses the udev daemon to notice, update, and store device event information in a database whenever a device is added to or removed from the system or changes its state. If you replaced your motherboard or network card, Kubuntu may need to be told about the change. This section describes how to manually edit a rules file that “talks to” the udev daemon.

Steps

  1. Open the K menu in your task bar.
  2. Select the Dolphin entry from the System sub-menu.
  3. Open the /etc/udev/rules.d directory in Dolphin.
  4. Press the F4 key on your keyboard to open a terminal at the bottom of your Dolphin screen.
  5. Type this command in the terminal window and press the Enter key to copy the file to your Desktop as a backup:

    cp 70-persistent-net.rules ~/Desktop
  6. Type this command in the terminal window and press the Enter key to open the file in Kate with super user privileges:

    kdesudo kate 70-persistent-net.rules

    You will be asked to type in your log-in password.

  7. Look at the contents of the file. If you’re having the error that brought you to this page, you will likely see something sort of like this example:

    SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:15:c5:4a:16:5a", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"
    SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:15:c5:4a:16:5b", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth1"

    Note that there are two entries. At the end of each line you can see the names of the known devices. The first one is named eth0 and represents your old hardware. The second one is named eth1 and represents your new hardware. The error is caused by Kubuntu trying to use your old hardware to gain access to the network.

  8. Comment out the first entry by putting a hash mark in front of its line, as in this example:

    #SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:15:c5:4a:16:5a", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"
    SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:15:c5:4a:16:5b", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth1"

    The hash mark will cause Kubuntu to ignore the first entry when it reads the file.

  9. Since networking is usually set up to use the eth0 device by default, change the second entry name from eth1 to eth0, as in this example:

    #SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:15:c5:4a:16:5a", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"
    SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:15:c5:4a:16:5b", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"
  10. Save the file.
  11. Close the file.
  12. Move the backed up copy of the file from your Desktop to wherever you keep your backups.
  13. Reboot the computer to verify that the problem has been solved.

As a possible alternative, I saw someone in the kubuntu-users mailing list suggest that you can delete the /etc/udev/rules.d/70-persistent-net.rules (after backing it up just in case!) and the system will recreate it with the devices it detects.

See also

Solution 2 – install the Intel ethernet driver

This section describes how to get and install the current e1000e driver from Intel® if you use Kubuntu or Ubuntu 12.04 LTS Precise Pangolin (also possibly Linux Mint) with ethernet that is not being detected, and if you have a motherboard or network card with one of these ethernet controllers, connections, or adapters:

  • Intel® 82563 Gigabit Ethernet PHY
  • Intel® 82566 Gigabit Ethernet PHY
  • Intel® 82567 Gigabit Ethernet Controller
  • Intel® 82571EB Gigabit Ethernet Controller
  • Intel® 82572EI Gigabit Ethernet Controller
  • Intel® 82573E Gigabit Ethernet Controller
  • Intel® 82573L Gigabit Ethernet Controller
  • Intel® 82573V Gigabit Ethernet Controller
  • Intel® 82574 Gigabit Ethernet Controller
  • Intel® 82577 Gigabit Ethernet PHY
  • Intel® 82578 Gigabit Ethernet PHY
  • Intel® 82579 Gigabit Ethernet Controller
  • Intel® 82583V Gigabit Ethernet Controller
  • Intel® Ethernet Connection I217-LM
  • Intel® Ethernet Connection I217-V
  • Intel® Ethernet Connection I218-LM
  • Intel® Ethernet Connection I218-V
  • Intel® Gigabit CT Desktop Adapter
  • Intel® Gigabit PT Quad Port Server ExpressModule
  • Intel® PRO/1000 PF Dual Port Server Adapter
  • Intel® PRO/1000 PF Quad Port Server Adapter
  • Intel® PRO/1000 PF Server Adapter
  • Intel® PRO/1000 PT Desktop Adapter
  • Intel® PRO/1000 PT Dual Port Server Adapter
  • Intel® PRO/1000 PT Quad Port Low Profile Server Adapter
  • Intel® PRO/1000 PT Quad Port Server Adapter
  • Intel® PRO/1000 PT Server Adapter

Steps

  1. Visit the Intel® Network Connectivity page on a computer that has network access to get more information on connecting to the network with your hardware.
  2. Click the Download e1000e here link on that page to get the current e1000e driver for your hardware.
  3. Open the K menu in your task bar.
  4. Select the Dolphin entry from the System sub-menu.
  5. Open your download directory (by single-clicking or double-clicking it, depending on your system settings).
  6. Right-click the file you downloaded to open the context menu.
  7. Select the Extract Archive Here, Autodetect Subfolder entry from the Extract sub-menu.
  8. Open the extracted folder (it will be inside the current directory and will have the same name as the file you downloaded).
  9. Open the src subfolder inside it.
  10. Press the F4 key on your keyboard to open a terminal at the bottom of your Dolphin screen.
  11. Type this command in the terminal window and press the Enter key to recompile the source files and install them:

    sudo make install

    The binary will be installed as the e1000e.ko file in a subdirectory of your current kernel directory, which is inside the /lib/modules/ directory.

  12. Type this command in the terminal window and press the Enter key to load the module using the modprobe command:

    sudo modprobe e1000e

    There will be no feedback from the terminal window letting you know that the command was successful.

See also

Obligatory Happy Ending

And they all lived happily ever after. The end.

2 Comments »

  1. Thank you sooooooo much. I looked everywhere trying to find the solution my problem and the /etc/udev/rules.d entry was causing my problem. After updating to the latest Intel driver the i218 was recognized but I could not initialize the port. I deleted the 70-persistent-net.rules file and rebooted. Voila. My adapter was recognized and I was in business. Thanks again for posting this.

    Comment by Paul Rocco — March 12, 2015 @ 8:52 am

    • Oh, you’re very welcome! We feel your pain because the same thing happened to us. Luckily this is a quick and easy fix, though. (:

      Comment by mostlylinux — March 12, 2015 @ 8:07 pm


RSS feed for comments on this post. TrackBack URI

Comment:

Blog at WordPress.com.