systemd-networkd kann beim Netzwerk-Booten über pxelinux nicht gestartet werden

systemd-networkd kann beim Netzwerk-Booten über pxelinux nicht gestartet werden

Ich habe eine systemd-Linkdatei erstellt, um die dauerhafte Benennung der Netzwerkschnittstellen für einen Stapel von über das Netzwerk gebooteten Hosts zu erzwingen. Da die MAC-Adresse von Maschine zu Maschine unterschiedlich ist, muss ich den PCI-Pfad zum Zuordnen der Schnittstelle verwenden:

[Match]
Path=pci-0000:02:00.0-0

[Link]
Name=eth0

Dies funktioniert in einer VM oder auf einer physischen Box. Auf einem Netboot-Host schlägt es jedoch mit der Meldung fehl:

Failed at step NAMESPACE spawning /usr/lib/systemd/system/systemd-networkd: Invalid Argument

Ich habe versucht, die Linkdatei zu entfernen und neu zu starten, aber mit demselben Ergebnis. Es hat also nichts mit meiner Linkdatei zu tun.

Der Netboot-Host basiert auf Centos 7.2.

Zuvor haben wir mit CentOS 6 eine persistente Netzregel in verwendet /etc/udev.rules, aber das funktioniert unter CentOS 7 nicht.

Antwort1

Systemd bietet eine Reihe von Optionen, die Sie in der Unit-Datei eines Dienstes festlegen können, um bestimmte Verzeichnisse im Dateisystem zu schützen. Dies geschieht mithilfe von Dateisystem-Namespaces.

Es scheint, dass diese Funktionalität auf einem per PXE gebooteten Host nicht unterstützt wird, sodass Dienste, die diese Funktion benötigen, nicht gestartet werden können.

Im Fall von systemd-networkd kann dies behoben werden, indem alle Optionen deaktiviert werden, die Namespaces erfordern.

Erstellen Sie zunächst eine Kopie der Servicedatei. Dateien in /etc/systemdüberschreiben die Standardeinstellungen in /usr/lib/systemd:

cp /usr/lib/systemd/system/networkd-systemd.service /etc/systemd/systemd/

Bearbeiten Sie nun /etc/systemd/system/systemd-networkd.serviceund entfernen Sie den Namespace-Schutz:

ProtectSystem=no
ProtectHome=no

Starten Sie abschließend den Daemon neu:

systemctl restart networkd-systemd

Warnung: Dies kann Sicherheitsrisiken bergen.

verwandte Informationen