[Eisfair] kein Netzwerk nach Update

Daniel Vogel daniel_vogel at t-online.de
So Mär 26 22:27:48 CEST 2023


Hallo Stefan, hallo Marcus,

danke für die Bereitstellung der Aufzeichnungen.

Am 26.03.23 um 10:32 schrieb Marcus Röckrath:
> IMHO aufschlussreich - ganz unten:
> 
> ip_eth.service kommt vor sys-subsystem-net-device...device wird aber erst
> danach gestartet, so dass die Pause hilft.
> 

das stimmt, man sieht gut, dass das Device erst bereit ist, nachdem das 
ip-eth Skript abgearbeitet worden ist. Es muss also eine Abhängigkeit 
definiert werden. Aber welche?

Die Aufgabe lautet, die Ausführung einer systemd-Unit (ip-eth.service) 
so lange zu verzögern, bis ein bestimmter Treiber (oder mehrere Treiber) 
geladen wurden. Allem Anschein nach muss dafür udev mit systemd mittels 
einer Regel verknüpft werden.

Ein Beispiel findet sich hier:

https://github.com/liquidctl/liquidctl/blob/main/docs/linux/making-systemd-units-wait-for-devices.md

Im wesentlichen geht es darum, mittels des Tags TAG+="systemd", systemd 
dazu zu veranlassen eine device-Unit zu erstellen. In einer 
"Requires=<device-name>.device" und einer "After=<device-name>.device" 
Zeile innerhalb der Unit wird dann die Verknüpfung hergestellt.

Als weitere Schwierigkeit kommt dann noch dazu, dass ip-eth keine native 
systemd-Unit ist, sondern über den sysv-generator verwaltet wird. Dort 
kann man zwar einen LSB-Header eintragen. Jedoch scheint mir keiner der 
vorgegebenen facility-Namen ($local_fs, $network, $named, $portmap, 
$remote_fs, $syslog, $time) oder irgend eine andere Dienste-Bezeichnung 
geeignet zu sein. Ob man hier auch eine Device-Unit eintragen kann, 
entzieht sich meiner Kenntnis.

Der aktuelle Workaround mittels der sleep-Anweisung funktioniert, kann 
aber langfristig keine Lösung sein. Es ist alles andere als sicher, dass 
das nur auf virtuellen Maschinen passiert. Es könnte ganz unverhofft 
auch an anderen Stellen zu Problemen kommen. Allerdings bin ich hier 
mangels udev-Kenntnissen und auch mangels Zeit erst mal raus. Vielleicht 
hat hier jemand anderes eine Idee?

-- 
Gruß Daniel
[eisfair-Team]



Mehr Informationen über die Mailingliste Eisfair