You are not logged in.

#1 2018-06-23 23:25:34

thoss
Member
Registered: 2015-02-16
Posts: 33

udev db applies an alias to my networking device and breaks netctl

Seems that udev's hwdb has an inconsistent naming which is kind of breaking my networking scripts.

I don't know why it has these or how to fix it -- it looks like I have to create a udev hwdb mod in /etc/udev/hwdb.d? Not really convenient. Anyway, what would the format of that file be? Or is that not the correct method?

Below are the outputs of some status commands and the relevant section of udevadm info -e.

% ip link         
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000
    link/ether 6c:0b:84:06:40:c1 brd ff:ff:ff:ff:ff:ff
% grep Interface /etc/netctl/lan
Interface=eth0   
% netctl status lan                            
● netctl@lan.service - A basic static ethernet connection
   Loaded: loaded (/etc/systemd/system/netctl@lan.service; enabled; vendor preset: disabled)
   Active: inactive (dead)
     Docs: man:netctl.profile(5)

Jun 23 18:13:56 janus systemd[1]: Dependency failed for A basic static ethernet connection.
Jun 23 18:13:56 janus systemd[1]: netctl@lan.service: Job netctl@lan.service/start failed with result 'dependency'.
Jun 23 18:37:38 janus systemd[1]: netctl@lan.service: Bound to unit sys-subsystem-net-devices-eth0.device, but unit isn't active.
Jun 23 18:37:38 janus systemd[1]: Dependency failed for A basic static ethernet connection.
Jun 23 18:37:38 janus systemd[1]: netctl@lan.service: Job netctl@lan.service/start failed with result 'dependency'.
% systemctl status sys-subsystem-net-devices-eno1.device              
● sys-subsystem-net-devices-eno1.device - Ethernet Connection I217-LM
   Loaded: loaded
   Active: active (plugged) since Sat 2018-06-23 18:12:28 EDT; 1h 5min ago
   Device: /sys/devices/pci0000:00/0000:00:19.0/net/eth0
% systemctl status sys-subsystem-net-devices-eth0.device 
● sys-subsystem-net-devices-eth0.device
   Loaded: loaded
   Active: inactive (dead)

Jun 23 18:13:56 janus systemd[1]: sys-subsystem-net-devices-eth0.device: Job sys-subsystem-net-devices-eth0.device/start timed out.
Jun 23 18:13:56 janus systemd[1]: Timed out waiting for device sys-subsystem-net-devices-eth0.device.
Jun 23 18:13:56 janus systemd[1]: sys-subsystem-net-devices-eth0.device: Job sys-subsystem-net-devices-eth0.device/start failed with result 'timeout'.
Jun 23 18:37:38 janus systemd[1]: Unnecessary job for sys-subsystem-net-devices-eth0.device was removed.
P: /devices/pci0000:00/0000:00:19.0/net/eth0
E: DEVPATH=/devices/pci0000:00/0000:00:19.0/net/eth0
E: ID_BUS=pci
E: ID_MM_CANDIDATE=1
E: ID_MODEL_FROM_DATABASE=Ethernet Connection I217-LM
E: ID_MODEL_ID=0x153a
E: ID_NET_DRIVER=e1000e
E: ID_NET_LABEL_ONBOARD=en Onboard LAN
E: ID_NET_LINK_FILE=/usr/lib/systemd/network/99-default.link
E: ID_NET_NAME=eno1
E: ID_NET_NAME_MAC=enx6c0b840640c1
E: ID_NET_NAME_ONBOARD=eno1
E: ID_NET_NAME_PATH=enp0s25
E: ID_OUI_FROM_DATABASE=Universal Global Scientific Industrial Co., Ltd.
E: ID_PATH=pci-0000:00:19.0
E: ID_PATH_TAG=pci-0000_00_19_0
E: ID_PCI_CLASS_FROM_DATABASE=Network controller
E: ID_PCI_SUBCLASS_FROM_DATABASE=Ethernet controller
E: ID_VENDOR_FROM_DATABASE=Intel Corporation
E: ID_VENDOR_ID=0x8086
E: IFINDEX=2
E: INTERFACE=eth0
E: SUBSYSTEM=net
E: SYSTEMD_ALIAS=/sys/subsystem/net/devices/eno1
E: TAGS=:systemd:
E: USEC_INITIALIZED=27001520

Offline

#2 2018-06-23 23:31:23

loqs
Member
Registered: 2014-03-06
Posts: 19,113

Re: udev db applies an alias to my networking device and breaks netctl

It should not be either eth0 or eno1 by default see https://www.freedesktop.org/wiki/Softwa … faceNames/
Edit:
my mistake eno1 is working as expected with predictable interface naming.
Edit2:
Have you got any existing rules to rename the interface?  Is there any output showing the interface being renamed?
See `man hwdb` for details of the hwdb.

Last edited by loqs (2018-06-23 23:49:50)

Offline

#3 2018-06-24 01:17:14

thoss
Member
Registered: 2015-02-16
Posts: 33

Re: udev db applies an alias to my networking device and breaks netctl

No rules in /etc/udev/rules.d

I'm not following from the man hwdb page how to alter these entries in hwdb --

 % udevadm info -e | grep eno1                                                                                                                                                                                 :(
E: ID_NET_NAME=eno1                                                                                                                                                                                                           
E: ID_NET_NAME_ONBOARD=eno1                                                                                                                                                                                                   
E: SYSTEMD_ALIAS=/sys/subsystem/net/devices/eno1 

Which I am currently thinking should be changed to eth0 to resolve this.

Offline

#4 2018-06-24 02:49:41

circleface
Member
Registered: 2012-05-26
Posts: 639

Re: udev db applies an alias to my networking device and breaks netctl

Why can't you just edit the netctl profile to include eno1 instead of eth0?

Edit: nevermind, I misread the logs.  It seems that your system is referring to the same device with two names, but I have no idea why since you don't have any rules set up to change it.

Last edited by circleface (2018-06-24 02:50:48)

Offline

#5 2018-06-24 08:34:44

seth
Member
From: Won't reply 2 private help req
Registered: 2012-09-03
Posts: 78,846

Re: udev db applies an alias to my networking device and breaks netctl

You've onely one interface, so the straight forward fix seems to disable the predictable name system as described at the end of loqs' link?

Offline

Board footer

Powered by FluxBB