Bislang habe ich bei meinem Ubuntu 18.04 das Netzwerk mittels ifup / ifdown über die Einträge in /etc/network/interfaces betrieben. Das funktioniert natürlich tadellos. Der bei der Installation vorgegebene NetworkManager hatte allerdings eine zeitlang nicht zuverlässig funktioniert und die komfortable Möglichkeit der Nutzung verschiedener VPN habe ich nicht gebraucht. Daher hatte ich das Paket network-manager deinstalliert, also nicht nur deaktiviert. Ein Fehler, wie sich zeigte!
Gerade die VPN-Fähigkeiten werde ich aber möglicherweise demnächst brauchen. Also wollte ich „mal eben“ den NetworkManager wieder installieren. Weit gefehlt – natürlich ließ er sich installieren, auch die Schnittstelle eth0 konnte ich einrichten, aber die Sache lief nicht. Ich schaltete nach der Installation (danach, sonst ginge die Installation natürlich nicht) das Netzwerk ab (sudo ifdown eth0
) und ersetzte /etc/network/interfaces durch die Minimalversion:
# interfaces(5) file used by ifup(8) and ifdown(8)
auto lo
iface lo inet loopback
Dann wollte ich den NetworkManager starten mit
sudo systemctl start NetworkManager
Nichts, keine Fehlermeldung, aber auch keine Funktion. Wo lag das Problem? Eine Recherche im Usenet brachte auch keine Erhellung. Dabei hatte ich die Lösung schon längst gefunden, nur hatte ich sie nicht vollständig umgesetzt! Hier wird beschrieben, wie es geht, ich musste es nur vollständig (!) machen. Ich habe den gesamten Abschnitt „Enable NetworkManager and Disable systemd networkd“ abgearbeitet und es hat funktioniert. Hier nochmal die Kurzfassung:
sudo apt-get install network-manager network-manager-gnome
sudo systemctl disable systemd-networkd.service
sudo systemctl mask systemd-networkd.service
sudo systemctl stop systemd-networkd.service
File /etc/netplan/config.yaml erstellen oder editieren (root):
network:
version: 2
renderer: NetworkManager
sudo netplan generate
ersetzen der /etc/network/interfces durch die minimlaen Einträge:
# interfaces(5) file used by ifup(8) and ifdown(8)
auto lo
iface lo inet loopback
sudo systemctl unmask NetworkManager
sudo systemctl enable NetworkManager
sudo systemctl start NetworkManager
Startet man jetzt mittels nm-applet
das Applet in der Taskleiste, kann man seine Netzwerkverbindung einrichten. Sie steht bereits automatisch drin, aber mit DHCP.
Fazit: Bei den erfolglosen Versuchen hatte ich den Abschnitt mit netplan „übersehen“, ich meinte, sowas habe ich nicht… Genau das hat sich als der notwendige Schlüssel herausgestellt.
Nachtrag: Einen notwendigen Nachtrag habe ich in einem Folgeartikel gemacht, weil es so wie hier beschrieben nicht unbedingt funktioniert. Ich freue mich auch auf ergänzende Kommentare!