[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