I have built a CentOS 8 base image from a kickstart, for use in OpenStack. This image boots fine but the problem I have is that I can’t stop udev from renaming the network device from eth0 to ens. I have /etc/sysconfig/network-scripts/ifcfg-eth0 with the correct HWADDR defined in it, and have set net.ifnames=0 and biosdevname=0 in the grub configuration, but nothing I have tried has stopped the renaming. I found this bug: https://bugzilla.redhat.com/show_bug.cgi?id60179 which describes the same situation, but the comments in the bug didn’t help. I’d like to keep the eth* device names because we have various heat templates and other scripts which assume that the network devices are called eth0, eth1 etc. Any ideas? Is this even possible with a CentOS 8 VM guest?
Chris
4 thoughts on - Renaming Virtio Devices Names On CentOS 8 VM Guest
It is strongly discouraged, for Openstack and when you have more than one adapter. See here if you have access:
https://access.redhat.com/solutions/2435891
Anyway perhaps you could manage order of names customizing
/usr/lib/systemd/network/99-default.link At least as described here:
https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/8/html/configuring_and_managing_networking/consistent-network-interface-device-naming_configuring-and-managing-networking but I never tried it HIH, Gianluca
Thanks Gianluca,
I can’t access https://access.redhat.com/solutions/2435891 unfortunately, but https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/8/html/configuring_and_managing_networking/consistent-network-interface-device-naming_configuring-and-managing-networking looks like it might help me.
Chris
Gianluca,
What you are trying to do is documented at https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/networking_guide/sec-disabling_consistent_network_device_naming
You need to edit the GRUB_CMDLOINE_LINUX line in /etc/default/grub as shown below;
~]# cat /etc/default/grub
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR=”$(sed ‘s, release .*$,,g’ /etc/system-release)”
GRUB_DEFAULT=saved
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL_OUTPUT=”console”
GRUB_CMDLINE_LINUX=”rd.lvm.lv=rhel_7/swap rd.luks.uuid=luks-
cc387312-6da6-469a-8e49-b40cd58ad67a crashkernel=auto vconsole.keymap=us vconsole.font=latarcyrheb-sun16
rd.lvm.lv=rhel_7/root rhgb quiet net.ifnames=0 biosdevname=0″
GRUB_DISABLE_RECOVERY=”true”
Then for an EUFI system run this:
~]# grub2-mkconfig -o /boot/efi/EFI/redhat/grub.cfg Reboot and you should have your old eth0, eth1, etc. naming convention back again. WATCH YOUR TYPING. BE CAREFUL NOT TO OMIT OR ADD
EXTRANEOUS SPACES !!!
Hope this helps.
–Doc Savage Fairview Heights, IL 62208-3432
Thanks Robert, I was doing that but it was still renaming to ens*. However, I now know why, and have fixed it. For those who are interested, the problem was that when I created the base image from a kickstart I didn’t pass net.ifnames=0 to virt-create, and I ended up with an image that had forgotten about eth0 completely. I have now redone the kickstart with net.ifnames=0 and all is well.
Chris
Sent from Samsung Mobile on O2
——– Original message ——