Ich versuche, einen Systemdienst für Debian Jessie zu erstellen. Ich brauche es, um zu starten, nachdem network-online.target
es erreicht ist.
Das Problem ist, dass network-online.target
gleichzeitig mit network.target
und zu diesem Zeitpunkt meine Schnittstellen noch nicht konfiguriert sind, nur die DHCP-Abfrage gestartet wurde.
Es sieht so aus, als ob dieses Problem spezifisch für Debian ist, da es eine alte Netzwerkkonfiguration verwendet.
Wie kann man dieses Problem umgehen oder network-online.target
arbeiten lassen?
network-online.target ● └─systemd-networkd-wait-online.service
Ich habe diese Seite bereits gelesen, ich verstehe das Grundkonzept dort, aber es ist immer noch sehr seltsam, keinen definierten Punkt zu haben, an dem netzwerkkritische Dienste starten können. Zumindest könnte es auf eine ordnungsgemäße DHCP-Zuweisung warten.
network-online.target
nur von dem systemd-networkd-wait-online.service
Spruch abhängt , dass es fertig ist. Es hängt nicht davon ab, ob NetworkManager sagt, dass es bereit ist, oder ob überprüft wird, ob ifup
alle Verknüpfungen erfolgreich hergestellt wurden (wenn Sie diese Methode zum Konfigurieren Ihres Netzwerks verwenden). Ubuntu hingegen ist abhängig von ifup
und NetworkManager, jedoch nicht für systemd-networkd-wait-online.
.
/etc/network/interfaces
:, .network
Systemdateien oder NetworkManager?
network-online.target
und network.target
werden gleich danach ausgelöst ifup
. Ich verwende Debian-Standard, also /etc/network/interfaces
mit DHCP-Adresse. Es sieht so aus, als ob networkd eine bessere Lösung sein könnte, aber die Implementierung ist nicht einfach.
systemctl list-dependencies network-online.target
? Beachten Sie auch, dass diesnetwork-online.target
möglicherweise nicht zwingend bedeutet, dass ein Internetzugang vorhanden ist. Weitere Informationen finden Sie auf dieser Seite.