Erstes Hardcore-Debugging
Update: Due to an increasing number of english speaking visitors I have translated the main conclusion of this entry. Have a look at the comments.
Na, das ging ja gut los. Der Versuch, mit dem KNetworkManager eine statische IP-Adresse über's normale Kabel einzurichten, scheiterte. Die Daten wurden akzeptiert, aber nicht aktiviert. Der gleiche Versuch mit der Gnome-Variante des Tools ( nm-applet
) verlief erfolgreich, integrierte sich aber natürlich alles andere als gut in die KDE-Umgebung (ansonsten hätte ich damit auch leben können).
Auf der Kommandozeile war als Ausgabe nur diese läppische Zeile zu finden:
Activate Connection /org/freedesktop/NetworkManagerSettings/Connection/2 on Device /org/freedesktop/Hal/devices/net_00_00_f1_7b_97_e0
Das Syslog ( /var/log/syslog
) war da etwas informativer:
Nov 3 14:02:40 sam NetworkManager: connection _get _settings _cb(): connection _get _settings _cb: Invalid connection: 'NMSettingIP4Config' / 'addresses' invalid: 1
Nov 3 14:02:40 sam NetworkManager: connection _get _settings _cb(): connection _get _settings _cb: Invalid connection: 'NMSettingIP4Config' / 'addresses' invalid: 1
Nov 3 14:02:57 sam NetworkManager: connection _updated _cb: assertion `old _connection != NULL' failed
Bei der Suche nach dieser Ausgabe stieß ich auf einen Bugreport, der mir zeigte, dass ich nicht der einzige mit dem Fehler war. Um es kurz zu machen: Nachdem es auch dort keine Lösung gab, habe ich mir die Quelltexte der Pakete network-manager
und network-manager-kde
heruntergeladen, mit einigen Debugging-Ausgaben angereichert und bin schließlich dahinter gekommen, dass der Systemdienst NetworkManager die Netmask im CIDR-Format erwartet ("/24"), KNetworkManager diese aber im Dezimalformat ("255.255.255.0") übergibt.
Zu einem Patch hatte ich dann keine Zeit mehr, aber es gibt einen einfachen Workaround: Im Feld für die Netzmaske diese in CIDR-Schreibweise in den ersten Block eintragen, und die restlichen mit Nullen auffüllen: "24.0.0.0". Dann bekommt NetworkManager genau das übergeben, was er erwartet.
Aber das so ein fundamentaler Fehler im Release noch nicht behoben worden ist, erstaunt mich dann ja doch.