Server Fault is a question and answer site for system and network administrators. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

For the general case let's say that the virtual adapter for eth0 has been removed and replaced with another one. Either due to cloning or, more recently, a rash of MAC address conflicts. [Yes, a rash of them.]

Usually I simply rm /etc/udev/rules.d/70-persistent-net-rules and check that nothing in /etc/sysconfig/network* contains a reference to a MAC address and reboot, but this is Linux and there must be a way to avoid rebooting.

Is there a command I can run to pick up the new NIC?


In addition to @dawud's answer below I ran into an issue on my test VM where it had already booted with the new device in place and had it named eth1 in which case udevadm does not seem to 'release' the device. In this case I did the following:

  1. Get the MAC address of the device from VSphere.
  2. Create/edit /etc/iftab with the line eth0 mac ##:##:##:##:##:## substituting in the MAC address. ifrename does not seem to like it when this file does not exist/contain the name of the destination interface.
  3. ifrename -i eth1 -n eth0
  4. service network restart and eth0 started up normally.
  5. [Optional] rm /etc/iftab so there's one less place for a MAC to live.
share|improve this question
up vote 3 down vote accepted

You can do that using udevadm trigger

You still need to remove the persistent rules and restart the network service.

share|improve this answer
Something like service network stop && udevadm trigger --action=change && service network start? I did a little reading on udevadm and action=change is supposed to be safer than the default action=add. – Sammitch Apr 9 '13 at 15:12
Provided you have already removed the persistent rules, yes, that should do. These link may be of interest. – dawud Apr 9 '13 at 15:22
I was actually just reading that before you linked to it. :D – Sammitch Apr 9 '13 at 15:59

For me, the below command sequence has worked as expected.

I have done modifications in /etc/udev/rules.d/70-persistent-net.rules to change the eth number and to reload them without rebooting.

/etc/init.d/networking stop

/etc/init.d/udev stop

udevadm control --reload-rules

/etc/init.d/udev start

/etc/init.d/networking start

Following this, it successfully loaded without rebooting the machine.

Any suggestion or recommendations on this are welcome, I have discovered the above on my own by reading the MAN pages.

share|improve this answer

Yes it is possible to reload udev without reboot. Found this on this website Commands:

udevadm control --reload-rules
udevadm trigger --attr-match=subsystem=net
share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.