Udev woes

By , 23/09/2009 00:36

Since the fan and power button of my old Dell laptop were dead I did what every geek would do: I got my hands on an identical laptop so I could switch over the hard drive and I wouldn’t need to reinstall (well, not Linux anyway). After booting I noticed that two things were not working properly: the X server and my network connection.

The X server was solved quick enough when I noticed in the log file that the output of my laptop screen was disabled on startup because the correct modeline was not defined. Apparently my identical laptop was not so identical since its native resolution is 1400×1050 while my old one is 1280×1024.

For the network connection it was a bit harder to find, or to be more precise, it took me longer because I overlooked a line in dmesg. The startup scripts where reporting that they could not find eth0 even though lspci told me that the chipset was the exact same ICH4 version. dmesg also told me that the network card was found and aptly named eth0 but ifconfig kept on insisting that eth0 did not exist. After fiddling some more I found this line on the end of dmesg:

udev: renamed network interface eth0 to eth2

So it seemed that udev was the culprit. After looking around in /etc/udev I found that there is a rules file generated that stores all the network interfaces that udev encounters. Since the new laptop also has a new MAC-address, udev considered it to be a new interface and renamed it to the next available number: eth2. I can certainly imagine situations where keeping the ethX name linked to a certain network card is useful, but for me this was not the case so I just deleted the file and after a reboot the eth0 interface was back in full glory.

The culprit that I removed was

/etc/udev/rules.d/70-persistent-net.rules

PS: the Windows boot had the same problems: the display drivers needed reinstalling and the network connection was renamed.

Flattr this!

Leave a Reply

*

Panorama Theme by Themocracy