Home Linux DistributionsCentOS How to solve “Device eth0 does not seem to be present, delaying initialization” error
How to solve “Device eth0 does not seem to be present, delaying initialization” error on Linux

How to solve “Device eth0 does not seem to be present, delaying initialization” error

By sk
6147 Views

The other day, I encountered with a strange error after I cloned CentOS 6 guest machine in Oracle VirtualBox. After logging in to CentOS guest, my network card is disappeared. I can't SSH into the CentOS guest anymore. I tried to check the IP address using command:

# ifconfig

Sample output:

 lo Link encap:Local Loopback 
 inet addr:127.0.0.1 Mask:255.0.0.0
 inet6 addr: ::1/128 Scope:Host
 UP LOOPBACK RUNNING MTU:65536 Metric:1
 RX packets:0 errors:0 dropped:0 overruns:0 frame:0
 TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
 collisions:0 txqueuelen:0 
 RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)

eth0 config details doesn't show up. It only displayed the loopback interface details.

I tried to restart the network service to sort out the issue.

# service network restart

Nothing! It simply displayed the following error.

Bringing up interface eth0: Device eth0 does not seem to be present, delaying initialization

Bringing up interface eth0: Device eth0 does not seem to be present, delaying initialization

I thought that there might be any misconfiguration in network configuration file. So, I decided to look into the eth0 configuration file to make sure if everything is correct.

# vi /etc/sysconfig/network-scripts/ifcfg-eth0

Sample output:

DEVICE=eth0
BOOTPROTO=none
DEVICE=eth0
GATEWAY=192.168.1.1
HWADDR=08:00:27:DC:33:3F
IPADDR=192.168.1.150
NETMASK=255.255.255.0
NM_CONTROLLED=no
ONBOOT=yes
TYPE=Ethernet
USERCTL=no

centos-6-8-minimal-running-oracle-vm-virtualbox_013

Everything was perfect.

Again, I tried to wake up Network card using command:

# ifup eth0

But, still no luck! It keeps showing the same error message as below.

Device eth0 does not seem to be present, delaying initialisation

Device eth0 does not seem to be present, delaying initialisation

I added and configured an additional virtual network interface card. I restarted network service and CentOS guest several times. But, nothing helped. I keep getting the same error over and over.

After a bit searching over the Internet, I found the solution. The MAC address was the problem! After cloned, CentOS guest was still using the old machine's MAC address in the Virtual machine settings.

Solve “Device eth0 does not seem to be present, delaying initialization” error

If you ever encountered with the same issue, you can fix it as described in the following two methods.

Method 1:

To fix this problem, simply remove the file /etc/udev/rules.d/70-persistent-net.rules and reboot your system.

# rm /etc/udev/rules.d/70-persistent-net.rules

Now, you will see the network card is up.

Method 2:

If the problem is still not solved, open up the eth0 config file:

# vi /etc/sysconfig/network-scripts/ifcfg-eth0

Note down the MAC id (HWADDR).

[...]
HWADDR=08:00:27:DC:33:3F
[...]

centos-6-8-minimal-running-oracle-vm-virtualbox_017

Close the file. Then, power off the CentOS guest and go to Settings --> Network--> Adapter 1 --> Advanced from VirtualBox menu bar.

Replace the old MAC id and update it with new one.

centos-6-8-minimal-settings_018

After changing the MAC address, Click OK to save it. and power on your guest.

Now, Check if the network card is up using command:

# ifconfig

centos-6-8-minimal-running-oracle-vm-virtualbox_019

That's it. It worked!

Reference link:

Thanks for stopping by!

Help us to help you:

Have a Good day!!

You May Also Like

33 comments

madhukar88 November 8, 2017 - 3:50 am

great article buddy. thanks man

Reply
alan2306 January 23, 2018 - 4:15 pm

Thank you! The MAC address not matching what I had in the Virtual Box settings was the problem.

Reply
Muhammed Shafeeque February 17, 2018 - 2:58 am

Thank you brother. This is really informative and this doc helped me to resolve my issues in the real network.

Thanks again

Reply
Tim Harsch March 6, 2018 - 6:07 am

Nice summary! Thanks. note: it’s 70-persistent-net.rules not 70-persistant-net.rules

Reply
Dedi June 9, 2018 - 7:28 am

thanks dude for this information.
helping me so much

Reply
Prashanth June 16, 2018 - 7:05 am

Thank you. it solved my problem.

Reply
Martin July 10, 2018 - 3:00 pm

Thank you – after cloning, I commented out the mac address in ifcfg-eth0, but apparently that wasn’t enough, I had to insert the correct mac, and there it worked.

Reply
Yuzhen July 15, 2018 - 9:27 am

Thanks, really hopeful ! sincere appreciation from inside of the Great Wall haha

Reply
[email protected] August 17, 2018 - 8:25 am

Great.

It’s works, thanks a lots 🙂

Reply
Hadi Alnabriss September 21, 2018 - 12:51 am

worked perfectly
regards

Reply
Kári Harðarson September 21, 2018 - 3:43 pm

Thank you ! You saved me hours of work!

Reply
sk September 21, 2018 - 6:55 pm

Glad I could help.

Reply
Sina September 30, 2018 - 6:34 pm

that was very helpful and great. thanks a lot

Reply
JQ October 16, 2018 - 10:44 pm

Worked like a champ for me..thanks

Reply
sk October 17, 2018 - 11:14 am

You’re welcome!

Reply
binod November 6, 2018 - 3:16 pm

works fine thanks

Reply
chuck watson November 9, 2018 - 8:30 pm

thank you so much.. removing the 70-persistent-net.rules worked for me.

Reply
KISHORE PRABHU December 6, 2018 - 7:36 pm

Excellent! It was really helpful. Keep up the good work.

Reply
DTzzi December 18, 2018 - 10:23 pm

Hi, You have saved my life! I spent many days trying to solve it…
Thank you very much!!!

Reply
Sam Cheung January 5, 2019 - 8:13 pm

thanks for sharing great articles

Reply
Mike Behrens January 18, 2019 - 8:09 pm

This issue has plagued me for years. Thanks for posting. It was a great help. +1 Brother! Glad I found your post.

Reply
El February 6, 2019 - 1:34 am

Hours of searching and I came across this fantastic article, only wish I had found it sooner, THANK YOU!

Reply
Jack February 28, 2019 - 5:21 pm

Perfect. Removing that file was all I needed to do. Now my VM is on the network.

Thank you!!

Reply
sk March 1, 2019 - 12:35 pm

My pleasure. Glad you fixed it.

Reply
Foxglove Fox September 6, 2019 - 2:05 pm

Its work! Thank you!

Reply
Gayan Rathnayaka October 14, 2019 - 5:06 am

Great Article, Clean and On the spot. Thanks Mate

Reply
Ammu November 24, 2019 - 12:11 am

Thanks a lot.. it’s very useful

Reply
Eli March 22, 2020 - 10:39 pm

Thanks, you are awesome!!

Reply
L March 23, 2020 - 8:11 pm

Thanks a lot.. removing the 70-persistent-net.rules worked for me.

Reply
Qamre alam April 29, 2020 - 5:46 am

Hi Dear,
It was a great article.

Reply
BB-8 May 23, 2020 - 3:16 am

HELLO HUMAN The second method, worked just fine THANKS

Reply
Kevin May 28, 2020 - 7:04 pm

Thanks! This helped me through the first time I cloned a linux VM. May I suggest a small change in your solution? Editing the VMware settings to match the VM’s eth0 MAC will make your VMware environment have a duplicate MAC. Instead, what I did was simply checking the new MAC value from the vCenter console, and put that into the cloned VM’s ifcfg-eth0 file. This worked too.

Reply
sk May 28, 2020 - 10:32 pm

Thanks. I never knew it.

Reply

Leave a Comment

* By using this form you agree with the storage and handling of your data by this website.

This site uses Akismet to reduce spam. Learn how your comment data is processed.

This website uses cookies to improve your experience. We'll assume you're ok with this, but you can opt-out if you wish. Accept Read More