c't 1/2023
S. 162
Praxis
NetworkManager

Netzwerk-Disponent

Unter Linux mit NetworkManager bei Verbindungswechsel Aktionen automatisieren

Bei vielen Linux-Desktops kümmert sich der NetworkManager-Daemon um das Netzwerk und bleibt dabei meist dezent im Hintergrund. Der Dienst führt auf Wunsch aber auch Skripte aus, sobald man das Netzwerk wechselt. Wir zeigen, wie Sie selbst so ein Skript erstellen.

Von Keywan Tonekaboni

Der NetworkManager-Daemon kann mehr, als dessen grafischen Bedienoberflächen in Gnome, Cinnamon und anderen Linux-Desktops erahnen lassen. Im Hintergrund versucht er, automatisch eine funktionierende Netzwerkbindung aufzubauen, ganz gleich, ob über LAN, WLAN oder VPN. NetworkManager hat mit dem Dispatcher zudem einen Dienst, der bei Veränderungen an der Netzwerkverbindung vom Benutzer hinterlegte Skripte ausführt. Damit können Sie zum Beispiel automatisch eine Netzwerkfreigabe mounten, sobald Sie Ihren Laptop mit dem heimischen Netz verbinden. Oder schonen Sie den Akku, indem Sie die WLAN-Schnittstelle ausschalten, sobald Sie ein Netzwerkkabel einstecken. Wir zeigen, was es dabei zu beachten gilt und wie Sie selbst ein Skript erstellen.

Arbeitsweise

NetworkManager durchsucht die Verzeichnisse /etc/NetworkManager/dispatcher.d und /usr/lib/NetworkManager/dispatcher.d und führt die dort vorhandenen ausführbaren Skripte nacheinander in lexikografische Reihenfolge aus. Da /usr/lib für Distributionsskripte vorgesehen ist, speichern Sie Ihre eigenen Skripte unterhalb von /etc/NetworkManager/dispatcher.d, damit diese bei Updates nicht überschrieben oder gelöscht werden. Das Skript muss dem User root gehören und nur er darf dafür Schreibrechte haben, sonst ignoriert NetworkManager es.

Kommentieren