eth0 disabled / eth0 does not seem to be present / after restoring image

2

The NIC doesn't work anymore on my Fedora 15 again after restoring the system from an image.

ifconfig doesn't show the NIC anymore (only the loopback adapter). system-config-network says it (eth0 - the only NIC) is "disabled". When clicking "Activate", it says: Device eth0 does not seem to be present, delaying initialization.

service network status shows both lo and eth0 under "Configured devices", but only lo under "Currently active devices". ifconfig eth0 up claims that there's "no such device". service network restart shows a big red "FAILED" (some other networking related services won't start either).

Here's the important part of how this happened:

I have backups of my system partition that I restore when the system freezes (happened this time after installing the ATI graphics driver for Linux) or power goes out. Those backups are made with Clonezilla. The external hard drive where they're stored is ok (no SMART complaints), not very old and I handle it very carefully. Plus I let Clonezilla calculate MD5 sums for every backup and I let it check those before restoring anything. Since I restore the latest backup after any system crash, all backups are "clean", so they represent a state in which the system has never crashed. So long story short - I think the backups are reliable and restoring one should bring the system back in a perfectly clean state.

I've restored the system several times, this is (at least) the second time the network adapter doesn't work afterwards. The first time, (AFAIR) I have just successfully upgraded from Fedora 14 to 15, but the latest backup was F14. So I restored it and after (re-)upgrading to F15, the NIC was working perfectly fine. Another time the NIC was gone, I played around with network and NetworkManager. I don't exactly remember what I did, but apparently I got it working again (plus an ugly red X is in the tray since then, saying "No network interfaces" when hovering). Also notable is the fact that when this happens, the system doesn't seem to recognize USB drives anymore (I'm pretty sure it was the same last time). So I plug in a USB drive, but Dolphin won't show it (so I can't mount it) - lsusb will show it though.

I've googled a little bit without success. I found tips for doing things I've already tried or stuff like the "ONBOOT=yes" line in some config which already looks like that. Any idea how to get this thing working again? But (almost) more importantly: The NIC was working just FINE when I made the image, then I restored the image, so the system partition (including all configs) should look EXACTLY like when it was working so how on earth is it possible that the NIC doesn't work anymore??

Edit:
For the record, I won't use Clonezilla anymore. dd does the job perfectly, every single dd restore was successful.

basic6

Posted 2011-08-07T15:09:12.280

Reputation: 2 032

2... try to run an lspci to see what Linux thinks your NIC is doing. – new123456 – 2011-08-07T15:37:23.450

2try running ifconfig -a to see what devices, if any, exist. – BillThor – 2011-08-07T16:31:18.510

1ifconfig -a doesn't show eth0 either (same as without -a). lspci does show my NIC (just like lsusb shows all connected USB drives, even though I can't mount them): Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet Controller (rev 02) – basic6 – 2011-08-07T16:48:17.067

Answers

1

You may have r8169 loaded instead of r8168. Try doing lsmod |grep r81 If it shows r8169 then remove it modprobe -r r8169 and insert the correct one modprobe r8168

Zeroedout

Posted 2011-08-07T15:09:12.280

Reputation: 56

1

You need to edit /etc/udev/rules.d/70-persistent-net.rules. It probably does not contain the proper data.

It should look something like this for slirp:

# This file was automatically generated by the /lib/udev/write_net_rules
# program run by the persistent-net-generator.rules rules file.
# You can modify it, as long as you keep each rule on a single line.

# PCI device 0x1a55:0x0005 (conet)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:ff:09:25:4b:f8", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"

Kamau

Posted 2011-08-07T15:09:12.280

Reputation: 11