You have faulty hardware in a PC or server, and moved the harddisks to another chassis. The OS boots up, however, when initializing the network,
opensuse cannot find the original network card, and comes up with the error "...waiting for mandatory device...".
It also discovers additional network devices, eg. eth2, eth3, while not finding the original ones, eg. eth0 and eth1. This is because the MAC
addresses are different.
To fix this, cd to the /etc/udev/rules.d directory
grep for the network interface that is missing, eg. grep eth0 *
You may find 70-persistent-net.rules has matching entries
The file will contain entries similar to following,
# PCI device 0x14e4:0x1640 (tg3)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*",
ATTR{address}=="00:30:40:75:dc:82", ATTR{type=="1",KERNEL=="eth*",
NAME="eth1"
# PCI device 0x14e4:0x1640 (tg3)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*",
ATTR{address}=="00:30:40:75:dc:83", ATTR{type=="1",KERNEL=="eth*",
NAME="eth0"
# PCI device 0x14e4:0x1640 (tg3)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*",
ATTR{address}=="00:30:40:75:dc:08", ATTR{type=="1",KERNEL=="eth*",
NAME="eth2"
# PCI device 0x14e4:0x1640 (tg3)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*",
ATTR{address}=="00:30:40:75:dc:09", ATTR{type=="1",KERNEL=="eth*",
NAME="eth3"
In the above example, eth2 and eth3 are new, i.e. they contain the MAC addresses of the NIC in the replacement hardware. The entries for eth0 and
eth1 are the MAC of the NIC in the faulty hardware. To fix, remove the entries for eth0 and eth1, and change eth2 to eth0 and eth3 to eth1
respectively. Before editing, you may want to make a copy of the file in case of mistakes. Remember to keep each entry as an entire line without
linefeeds breaking them up, as may happen for editors like nano.
15 Jun 2010
|