ERROR: interface eth0 does not exist

This is a wiki page. Be bold and improve it!

If you have any questions about the content on this page, don't hesitate to open a new ticket and we'll do our best to assist you.

Sample error:

service apache2 start
* Executing: /lib64/rc/sh/openrc-run.sh /lib64/rc/sh/openrc-run.sh /etc/init.d/net.eth0 start
* Bringing up interface eth0
...
*   ERROR: interface eth0 does not exist
*   Ensure that you have loaded the correct kernel module for your hardware
* ERROR: net.eth0 failed to start

If after booting the system we find out that the assumption about the network interface name (which is currently documented as eth0) was wrong, then execute the following steps to rectify this:

Update the /etc/conf.d/net file with the correct interface name (like enp3s0 instead of eth0)
Create new symbolic link (like /etc/init.d/net.enp3s0)
Remove the old symbolic link (rm /etc/init.d/net.eth0)
Add the new one to the default runlevel
Remove the old one using rc-update del net.eth0 default