Red Hat Bugzilla – Bug 652499
Renaming ethX devices during install creates duplicates
Last modified: 2016-05-10 20:25:45 EDT
Description of problem:
If you manually change the network name to MAC address matching it creates new entries in '/etc/udev/rules.d/70-persistent-net.rules' instead of removing the old entries. For example, I've got three interfaces and the installer chose two given NICs as 'eth0' and 'eth2'. I went in to the advanced network configuration and swapped the MAC addresses and it created two new lines in the above file, causing 'eth0' to not come up on first boot. Deleted the duplicate lines solved the problem.
Version-Release number of selected component (if applicable):
First try, will try on other hardware and report if not 100%
Steps to Reproduce:
1. Select advanced configuration during installation and swap the MAC address between two 'ethX' devices.
2. Complete install and reboot.
Single entries with revised MAC addresses.
Anaconda copies /etc/udev/rules.d/70-persistent-net.rules generated by udev from installer environment to target system so udev just updates this file according to changes (done with NetworkManager Connection Editor in ifcfg files) after reboot. Does it cause any problems? For me the renaming works ok. Perhaps anaconda can stop copying the rules file to installed system.
Just name your interfaces with another namespace like "net*" and all those problems go away.
This issue is probably related to:
(In reply to comment #2)
> Anaconda copies /etc/udev/rules.d/70-persistent-net.rules generated by udev
> from installer environment to target system so udev just updates this file
> according to changes (done with NetworkManager Connection Editor in ifcfg
> files) after reboot. Does it cause any problems? For me the renaming works ok.
> Perhaps anaconda can stop copying the rules file to installed system.
It's been some time since I filed this bug, I will have to test to see if it persists.
(In reply to comment #3)
> Just name your interfaces with another namespace like "net*" and all those
> problems go away.
> This issue is probably related to:
I'm not sure if it's related, I am not familiar with the source so I can't comment on the patch.
As for changing the name; That is another work-around, not a fix to the actual problem.
Since RHEL 6.3 External Beta has begun, and this bug remains
unresolved, it has been rejected as it is not proposed as
exception or blocker.
Red Hat invites you to ask your support representative to
propose this request, if appropriate and relevant, in the
next release of Red Hat Enterprise Linux.
please retest with RHEL 6.3 udev
Blast from the past... sorry, I'll try to test today on 6.7.
Sorry for the delay...
It still created the duplicate udev rules. Fresh RHEL 6.7 install in a KVM VM with two interfaces. As before, I went to advanced network settings and swapped the MAC addresses.
I tried this now with two interfaces, eth0 and eth1. I left Mac addresses as they were and added Cloned mac address which was Mac address of the other interface. As this should be way how to actually swap mac addresses, because if you change mac addresses them self you are basically switching interface names.
I went ahead, knowing this is probably all wrong, finished installation and rebooted. I ended up with the system which had configured same MAC addresses on both interfaces (that was sort of expected), 2 entries in 70-persistent rules, and invalid ifcfg-files (they contained HWADDR and MACADDR option which is written in initscripts docs as unsupported/broken setup).
Bottom line, I think that what you are trying to do just can't work.
I've found similar bug reports for ubuntu/debian. However I was not able to reproduce the issue as described by . I can however backport the fix which ubuntu/debian now have and provide you with the test package.
Here are test packages,
Just to elaborate on comment #14.
Test packages them self are not that useful because issue occurs during system installation. Thus, I've created anaconda updates.img, problem is that I wasn't able to successfully use it (probably due to some anaconda limitation with regards to update images in RHEL6).
The only way I can think of how you can test the new package (in VM) is to unpack rpm to some place which is accessible from installer environment, start installation, using shell provided by installer replace udev and other files shipped in udev rpm which are part of installer environment, kill running udev daemon, start it again (now process will start from new binary), and finally hot-plug second NIC, then proceed with installation as described in bug Description.
This update broke renaming of the devices on our machines.
# cat /etc/sysconfig/network-scripts/ifcfg-lblnet
If I downgrade udev, everything works.
Swapping MAC addresses don't caused any duplicates in /etc/udev/rules.d/70-persistent-net.rules
Actually manual swap just rename devices and create new records in /etc/udev/rules.d/70-persistent-net.rules .
If for swapping is used "clone filed" in advanced setting, result may caused problems, because this way of swapping MAC addresses is not recommended (supported).
Since I was not able reproduce the scenario of duplicates records, verified Sanity only.
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.
For information on the advisory, and where to find the updated
files, follow the link below.
If the solution does not work for you, open a new bug report.