Troubleshooting tip: Lan card (NIC) ordering changed after upgrading to Redhat (RHEL) Linux 4.5

last updated in Categories CentOS, Linux, Linux distribution, RedHat/Fedora Linux, Sys admin, Tip of the day, Troubleshooting

If you are running Dell PowerEdge 2950 server or HP ProLiant BL480c G1 server and upgraded from old version to latest Red Hat Enterprise Linux ES release 4.5 (Nahant Update 5) you will notice that ordering of your NIC devices changed.

Fix problem before upgrade:

Before running upgrade via up2date command open /etc/sysconfig/network-scripts/ifcfg-eth0 file (for NIC 0) and add line

Now proceed to upgrade using up2date -u
# up2date -u

Howto fix problem after upgrade:

However chances are very high that after running up2date -u command (i.e. after upgrade) you may notice the problem. Don’t panic. Open grub.conf file:
# vi /etc/grub.conf

Find out current kernel line:
kernel /vmlinuz-2.6.9-55.ELsmp ro root=LABEL=/ console=tty0 console=ttyS1,19200n8

Replace as follows:
kernel /vmlinuz-2.6.9-55.ELsmp ro root=LABEL=/ console=tty0 console=ttyS1,19200n8 pci=nobfsort

The pci=nobfsort option restore the original Kernel 2.6 ordering.

A final note

This problem is not Redhat specific. It can occurred on Suse or any other Linux distribution. Please see Linux enumeration of NICs solution published by Dell for more information.

Posted by: Vivek Gite

The author is the creator of nixCraft and a seasoned sysadmin, DevOps engineer, and a trainer for the Linux operating system/Unix shell scripting. Get the latest tutorials on SysAdmin, Linux/Unix and open source topics via RSS/XML feed or weekly email newsletter.

3 comment

  1. udev can be configured to achieve the same purpose based on MAC addresses as well. it may be a better alternative for non-redhat derived distributions.

    Pedro Venda.

  2. Pedro,

    Yes udev is good choice but Redhat always mix 2.4 and 2.6 kernel (they call it the best of two kernels) and creates a problem.

    Appreciate your post!

    Have a question? Post it on our forum!