I’ve always been pretty amazed at how easy it is to change hardware under a Linux system and for it mostly to just work – especially with most modern distros. Unlike those that are stuck with Windows systems, it is possible to do a motherboard upgrade on a linux system with the minimum of fuss, and without doing a system install!
Indeed, mostly it’s just a matter of remembering to make the system forget about the MAC address of the on-board ethernet. Otherwise after the system is booted, the system thinks that the eth0 is missing and instead configures the hardware as eth1.
Maybe networkmanager, or whatever, copes, but I like to have command-line control over my network setup, and on my Debian based systems it’s eth0 that is configured properly in /etc/network/interfaces.
So before I shut down my old motherboard system for the last time, I delete the eth0 line in the file /etc/udev/rules.d/70-persistent-net.rules so that when the system reboots with new hardware, it allocates eth0 to the new onboard ethernet interface.
However, I recently recycled an Intel D945GSEJT motherboard as a replacement for a VIA EPIA MoBo in my home server. The Intel board had been my guts of my desktop before I upgraded to a dual core ATOM based board – I like my hardware to use less Watts. My server runs Ubuntu server 8.04 LTS, and, despite the forced amnesia of the VIA’s ethernet MAC address, I still didn’t have an ethernet connection after the Motherboard transplant. A quick google discovered a load of issues with Realtek r8169 driver in older kernels – and Ubuntu Server 8.04 LTS is hardly state of the art.
Not having time to do a real fix, I reached for an old PCI Ethernet card I sometimes used when I needed a machine with 2 ethernet ports. Remembering to hack /etc/udev/rules.d/70-persistent-net.rules, disabling the onboard ethernet device in the BIOS and rebooting immediately got me a working system.
I’ll leave it like it is until after I get up the courage to do the upgrade to Ubuntu server 10.04LTS. Then I’ll rescue the PCI ethernet card and add it to my box of useful bits and pieces that might just get me out of a fix. That box has all sorts of cables and adapters, as well as an old PCI graphics card, a PCI SATA adapter, a PCI IDE adapter and the PCI Ethernet card. Anyone got recommendations for other useful bits and pieces to add to the box?