[systemd-devel] systemd link file rename eth0 do not take effect

guocai he guocai.he.cn at windriver.com
Tue Jun 17 05:58:14 UTC 2025


Hi,

I want to create a link file and want to match the mac to rename eth0 to 
mycustometh but fail.
seems that the link file is not applied?
The fllowing is my step and some logs:

##1 etho mac
udevadm info /sys/class/net/eth0
    E: ID_NET_NAME_MAC=enxa4bf016bfaf5

##2 link file
root at intel-x86-64:~# cat /etc/systemd/network/00-eth0.link
[Match]
MACAddress=a4:bf:01:6b:fa:f5

[Link]
Name=mycustometh

##3 only one link file in /etc/systemd/network/
root at intel-x86-64:~# ls /etc/systemd/network/
00-eth0.link

##4 the link file in /lib/systemd/network/  I try to remove 
99-default.link, it still not work
root at intel-x86-64:/lib/systemd/network# ls
80-6rd-tunnel.network       80-container-ve.network 
80-wifi-adhoc.network            80-wired.network
80-container-host0.network  80-container-vz.network 
80-wifi-ap.network.example       99-default.link
80-container-vb.network     80-vm-vt.network 80-wifi-station.network.example
root at intel-x86-64:/lib/systemd/network# cat 99-default.link
[Match]
OriginalName=*

[Link]
NamePolicy=keep kernel database onboard slot path
AlternativeNamesPolicy=database onboard slot path
MACAddressPolicy=persistent

#5 test the changes
root at intel-x86-64:~# udevadm test-builtin net_setup_link /sys/class/net/eth0
Trying to open "/etc/systemd/hwdb/hwdb.bin"...
Trying to open "/etc/udev/hwdb.bin"...
Trying to open "/usr/lib/systemd/hwdb/hwdb.bin"...
Trying to open "/lib/systemd/hwdb/hwdb.bin"...
Trying to open "/lib/udev/hwdb.bin"...
=== trie on-disk ===
tool version:          250
file size:         9764936 bytes
header size             80 bytes
strings            2429280 bytes
nodes              7335576 bytes
Load module index
Found cgroup2 on /sys/fs/cgroup/unified, unified hierarchy for systemd 
controller
Found container virtualization none.
Loaded timestamp for '/etc/systemd/network'.
Parsed configuration file /etc/systemd/network/00-eth0.link
Created link configuration context.
eth0: Device has name_assign_type=1
eth0: Device has addr_assign_type=0
ID_NET_DRIVER=igb
eth0: Config file /etc/systemd/network/00-eth0.link is applied
eth0: Using static MAC address.
eth0: Policies didn't yield a name, using specified Name=mycustometh.
ID_NET_LINK_FILE=/etc/systemd/network/00-eth0.link
ID_NET_NAME=mycustometh
Unload module index
Unloaded link configuration context.

#6 reboot and the eth0 is not changed
root at intel-x86-64:/# ip link
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP 
mode DEFAULT group default qlen 1000
     link/ether a4:bf:01:6b:fa:f5 brd ff:ff:ff:ff:ff:ff

#7 boot cmdline
root at intel-x86-64:~# cat /proc/cmdline
kernel console=ttyS4,115200 root=/dev/sda1 
nfsroot=128.224.165.20:/export/pxeboot/vlm-boards/29170/rootfs,v3,tcp rw 
selinux=0 udev.log_priority=debug enforcing=0 intel_iommu=on iommu=pt 
no_console_suspend ignore_loglevel

#8 logs after reboot, can not see such as "00-eth0.link is applied"
root at intel-x86-64:~# journalctl -u systemd-udevd
Jun 17 02:46:02 intel-x86-64 systemd-udevd[252]: Trying to open 
"/etc/udev/hwdb.bin"...
Jun 17 02:46:02 intel-x86-64 systemd-udevd[252]: Trying to open 
"/usr/lib/systemd/hwdb/hwdb.bin"...
Jun 17 02:46:02 intel-x86-64 systemd-udevd[252]: Trying to open 
"/lib/systemd/hwdb/hwdb.bin"...
Jun 17 02:46:02 intel-x86-64 systemd-udevd[252]: Trying to open 
"/lib/udev/hwdb.bin"...
Jun 17 02:46:02 intel-x86-64 systemd-udevd[252]: === trie on-disk ===
Jun 17 02:46:02 intel-x86-64 systemd-udevd[252]: tool version:          250
Jun 17 02:46:02 intel-x86-64 systemd-udevd[252]: file size:         
9764936 bytes
Jun 17 02:46:02 intel-x86-64 systemd-udevd[252]: header size             
80 bytes
Jun 17 02:46:02 intel-x86-64 systemd-udevd[252]: strings            
2429280 bytes
Jun 17 02:46:02 intel-x86-64 systemd-udevd[252]: nodes              
7335576 bytes
Jun 17 02:46:02 intel-x86-64 systemd-udevd[252]: Load module index
Jun 17 02:46:02 intel-x86-64 systemd-udevd[252]: Loaded timestamp for 
'/etc/systemd/network'.
Jun 17 02:46:02 intel-x86-64 systemd-udevd[252]: Parsed configuration 
file /etc/systemd/network/00-eth0.link      //here Parsed
Jun 17 02:46:02 intel-x86-64 systemd-udevd[252]: Created link 
configuration context.
Jun 17 02:46:02 intel-x86-64 systemd-udevd[252]: Loaded timestamp for 
'/etc/udev/rules.d'.
Jun 17 02:46:02 intel-x86-64 systemd-udevd[252]: Loaded timestamp for 
'/lib/udev/rules.d'.
Jun 17 02:46:02 intel-x86-64 systemd-udevd[252]: Skipping overridden 
file '/lib/udev/rules.d/80-net-setup-link.rules'.
Jun 17 02:46:02 intel-x86-64 systemd-udevd[252]: Reading rules file: 
/lib/udev/rules.d/01-md-raid-creating.rules
Jun 17 02:46:02 intel-x86-64 systemd-udevd[252]: Reading rules file: 
/lib/udev/rules.d/10-dm.rules
..................

Anybody have meet the same issue? who can help to have a look at this 
issue?



More information about the systemd-devel mailing list