On Fri 31 Jan 2020 at 14:31:56 (-0700), ghe wrote: > On 1/31/20 11:31 AM, Bob Weber wrote: > > > I just ran a test on a VM that I installed last week so it is pretty > > much up to date. I ran the command "ip a" which gave me the current > > undesirable name "enp1s0" and MAC address. > > Check. > > > First I created /etc/systemd/network/10-eth0.link using the MAC address > > and the name eth0. > > Check. (changed the MAC in your cat of the link file and changed the > name in the interfaces file) > > Rebooted and: > > Jan 31 12:37:56 sbox systemd[1]: Starting Raise network interfaces... > Jan 31 12:37:56 sbox ifup[2147]: ifup: unknown interface enp7s0 > Jan 31 12:37:56 sbox systemd[1]: networking.service: Main process > exited, code=exited, status=1/FAILURE > Jan 31 12:37:56 sbox systemd[1]: networking.service: Failed with result > 'exit-code'. > Jan 31 12:37:56 sbox systemd[1]: Failed to start Raise network interfaces. > > To the best of my knowledge, there is no enp7s0 anymore. Where does: > > [ 2.445808] e1000e 0000:07:00.0 enp7s0: renamed from eth0 > > happen? (dmesg | egrep enp) > > Then there's another line: > > [ 12.130525] e1000e 0000:07:00.0 eth0: renamed from enp7s0 > > That should have put eth0 back. Current guess is that sometime between > 2.44 and 12.13, somebody tried to bring up the network interfaces and > failed. > > So in my current config, eth0 gets changed to enp7s0, ifup is called to > bring up enp7s0, ifup fails because enp7s0 doesn't exist in the > interfaces file, then enp7s0 gets changed back to eth0. As a programmer, > I'm quite used to flaws in software, but lordie...
Assuming you followed Bob Weber, do you still have a symlink, ie, link -s /dev/null /etc/systemd/network/99-Default.link in place? What happens if you boot without it? > And systemd is calling ifup? Which relies on the old interfaces file, > and systemd relies on additional interface config file(s)? > > After the boot, 'ifup eth0' by hand brings up the interface and ifconfig > shows it active and with the right name and IP. (So does ip a -- I keep > using ifconfig because that's what's in my scripts and it's what I'm > used to.) I really would avoid changing the interface name back to the one the kernel chose, or any string that the kernel *might* choose; ie, be original. Cheers, David.