Bug 652499 - Renaming ethX devices during install creates duplicates
Renaming ethX devices during install creates duplicates
Status: CLOSED ERRATA
Product: Red Hat Enterprise Linux 6
Classification: Red Hat
Component: udev (Show other bugs)
6.0
Unspecified Unspecified
low Severity medium
: rc
: ---
Assigned To: Harald Hoyer
Radka Skvarilova
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2010-11-11 22:11 EST by digimer
Modified: 2016-05-10 20:25 EDT (History)
6 users (show)

See Also:
Fixed In Version: udev-147-2.69.el6
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2016-05-10 20:25:45 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:


Attachments (Terms of Use)

  None (edit)
Description digimer 2010-11-11 22:11:31 EST
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):

anaconda-13.21.82-1.el6.x86_64

How reproducible:

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.
3.
  
Actual results:

Duplicate entries.

Expected results:

Single entries with revised MAC addresses.

Additional info:
Comment 2 Radek Vykydal 2011-05-25 09:21:25 EDT
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.
Comment 3 Harald Hoyer 2011-05-25 09:30:05 EDT
Just name your interfaces with another namespace like "net*" and all those problems go away.
This issue is probably related to:
https://bugzilla.redhat.com/show_bug.cgi?id=701265
Comment 4 digimer 2011-05-26 13:14:50 EDT
(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.
Comment 5 digimer 2011-05-26 13:16:18 EDT
(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:
> https://bugzilla.redhat.com/show_bug.cgi?id=701265

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.
Comment 6 RHEL Product and Program Management 2012-05-03 00:41:15 EDT
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.
Comment 7 Harald Hoyer 2012-07-04 08:31:23 EDT
please retest with RHEL 6.3 udev
Comment 8 Harald Hoyer 2015-10-13 05:46:51 EDT
ping?
Comment 9 digimer 2015-10-13 10:32:37 EDT
Blast from the past... sorry, I'll try to test today on 6.7.
Comment 10 Michal Sekletar 2015-10-23 14:18:14 EDT
Any news?
Comment 11 digimer 2015-10-24 23:22:09 EDT
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.
Comment 12 Michal Sekletar 2015-11-19 11:39:29 EST
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.
Comment 13 Michal Sekletar 2015-12-21 09:50:56 EST
I've found similar bug reports for ubuntu/debian[1][2]. However I was not able to reproduce the issue as described by [1]. I can however backport the fix which ubuntu/debian now have and provide you with the test package.

[1] https://bugs.launchpad.net/ubuntu/+source/systemd/+bug/1470399
[2] https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=765577
Comment 14 Michal Sekletar 2015-12-22 07:13:43 EST
Here are test packages,

http://people.redhat.com/~msekleta/udev-147-2.66.el6/
Comment 17 Michal Sekletar 2016-01-05 10:11:27 EST
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.
Comment 19 Miroslav Vadkerti 2016-01-26 04:19:28 EST
This update broke renaming of the devices on our machines.

We have:

# cat /etc/sysconfig/network-scripts/ifcfg-lblnet
DEVICE=lblnet
BOOTPROTO=static
IPADDR=10.0.0.2
NETMASK=255.255.255.0
IPV6INIT=yes
IPV6ADDR=fd00:0::2/64
IPV6_AUTOCONF=no
NM_CONTROLLED=yes
ONBOOT=yes

TYPE=Ethernet
HWADDR=c4:34:6b:ac:98:8d

If I downgrade udev, everything works.
Comment 22 Radka Skvarilova 2016-03-29 08:03:15 EDT
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.
Comment 24 errata-xmlrpc 2016-05-10 20:25:45 EDT
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.

https://rhn.redhat.com/errata/RHBA-2016-0903.html

Note You need to log in before you can comment on or make changes to this bug.