Debian

GNOME NetworkManager zeigt "Kabelgebunden nicht verbunden"

31. Juli 2018 · Betriebssysteme · andreas · 2 Kommentare

Sofern der GNOME-Desktop nachträglich installiert wurde, kann es sein, daß der Gnome NetworkManager den Status “Kabelgebunden nicht verbunden” zeigt, obwohl die Netzwerkverbindung funktioniert.

Auch ein Klick auf den im Network-Manager angebotenenen Menüpunkt “Verbinden” hilft nicht und in den Netzwerkeinstellungen taucht die kabelgebundene Verbindung nicht auf.

Die Ursache hierfür liegt an der nachträglichen Installation des NetworkManagers bzw. daran, daß sich der NetworkManager nicht für die kabelgebundene Verbindung zuständig fühlt.

Die Lösung des Problems liegt in der Datei “NetworkManager.conf” im Verzeichnis “/etc/NetworkManager”. In dieser muß der Eintrag

[ifupdown]
managed=false

zu

[ifupdown]
managed=true

geändert werden, dann funtkioniert nach einem Neustart des Network Managers auch die Verwaltung des kabelgebundenen Netzwerks.


GNOME ohne Firefox-ESR

22. Juli 2018 · Anwendungen · andreas · Kein Kommentar

Selbst wenn mit gnome-core lediglich das Minimalpaket gewählt wird, wird bei der Installation von GNOME unter Debian der Browser Firefox in der ESR-Version 52 zwangsweise mitinstalliert.

Spätestens wenn parallel eine aktuelle Version von Firefox installiert wurde, wird die ESR-Version nicht mehr benötigt und könnte deinstalliert werden. Leider quittiert die Paketverwaltung ein

# apt remove firefox-esr

nicht nur damit, daß sie auch “gnome-core” deinstallieren will, zusätzlich wird die Installation von chromium mit eingeplant:

...
Die folgenden Pakete werden ENTFERNT:
  firefox-esr gnome-core
Die folgenden NEUEN Pakete werden installiert:
  chromium
...

Nach einigen ergebnislosen Versuchen fand sich schließlich bei reddit der entscheidende Fingerzeig: die Installation eines mit equivs selbstgebastelten Fake-Pakets, welches dem System einen vorhandenen firefox-esr vorgaukelt.

Ein passendes Muster für eine Control-Datei findet sich in Kapitel “15.2.1. Meta-Pakete oder vorgetäuschte Pakete” des Debian Adminstrator Handbuchs und ist schnell angepasst:

Package: fakefox-esr
Version: 0.1
Maintainer: Andreas Thul <ab@c.de>
Provides: firefox-esr (=52)
Architecture: all
Description: Fake package - Firefox ESR
 This is a fake package to let the packaging system
 believe that Firefox ESR is installed.

Die wichtigste Zeile hierbei ist “Provides: …”, welche vorgaukelt, daß das Paket tatsächlich Firefox in der ESR-Version bereitstellt.

Nachdem das Paket mittels

# equivs-build fakefox-esr

erstellt wurde, kann es über

# sudo dpkg -i fakefox-esr_0.1_all.deb

installiert werden. Anschließend führt die Entfernung des “firefox-esr”-Pakets zum ursprünglich beabsichtigten Ergebnis:

sudo apt remove firefox-esr
...
Die folgenden Pakete werden ENTFERNT:
firefox-esr
0 aktualisiert, 0 neu installiert, 1 zu entfernen und 0 nicht aktualisiert.

Automatische Anmeldung an der Konsole

28. Juni 2018 · Betriebssysteme · andreas · Kein Kommentar

Im Produktivbetrieb undenkbar, auf einer lediglich zu Testzwecken eingerichteten virtuellen Maschine aber ein deutlicher Komfortgewinn ist eine automatische Anmeldung an der Linux-Konsole.

Hierbei ist zu beachten, daß sich unter Debian mit der Einführung von systemd die Einrichtung gegenüber den meist noch zu findenden älteren, auf init bezogenen Anleitungen geändert hat.

Als erstes wird von dem “normalen” getty-Service eine Kopie erzeugt:

cp /lib/systemd/system/getty@.service /lib/systemd/system/autologin@.service

In der soeben erzeugten Kopie wird dann im Abschnitt “[Service]” die Zeile

ExecStart=-/sbin/agetty --noclear %I $TERM

nach “–noclear” um den Parameter “-a Benutzername” ergänzt, so daß die Zeile für den Benutzer “root” wie folgt aussieht

ExecStart=-/sbin/agetty --noclear -a root %I $TERM

Anschließend wird mittels

systemctl disable getty@tty1

zuerst der getty-Service für tty1 deaktiviert, bevor mit

systemctl enable autologin@tty1

die soeben erzeugte Kopie aktiviert wird.


Kein Netzwerk nach Upgrade von Debian Jessie auf Stretch

19. Juli 2017 · Betriebssysteme · andreas · Kein Kommentar

Ein Upgrade von Debian Jessie nach Stretch ist schnell erledigt: in der Datei “/etc/apt/sources.list” alle Einträge, die auf “jessie” lauten durch “stretch” ersetzen und anschließend mit

apt-get update
apt-get upgrade
apt-get dist-upgrade

das System auf die neue Version aktualisieren.

Das Upgrade lief auch problemlos durch, allerdings war nach einem Reboot kein Netzwerk (mehr) vorhanden:

root@sandbox:~# ifconfig
lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1  (Lokale Schleife)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

Während vor dem Reboot die Netzwerkkarte noch mit “eth0” identifiziert wurde

root@sandbox:~# networkctl
WARNING: systemd-networkd is not running, output will be incomplete.

IDX LINK             TYPE               OPERATIONAL SETUP
  1 lo               loopback           n/a         unmanaged
  2 eth0             ether              n/a         unmanaged

2 links listed.

wurde nach dem Reboot die Netzwerkkarte als “enp0s3” erkannt:

root@sandbox:~# networkctl
WARNING: systemd-networkd is not running, output will be incomplete.

IDX LINK             TYPE               OPERATIONAL SETUP
  1 lo               loopback           n/a         unmanaged
  2 enp0s3           ether              n/a         unmanaged

2 links listed.

Nachdem in der Datei “/etc/network/interfaces” alle Einträge von “eth0” durch “enp0s3” ersetzt wurden, stand nach einem weiteren Reboot das Netzwerk wieder zur Verfügung.


Icinga2 startet nicht mehr nach Debian-Systemupdate

23. September 2016 · Anwendungen · andreas · Kein Kommentar

Nach einem Systemupdate wird Icinga2 nicht mehr ausgeführt und apt-get meldet eine Reihe von Fehlern:

icinga2-common (2.5.4-1~debmon70+3) wird eingerichtet ...
Neue Version der Konfigurationsdatei /etc/icinga2/icinga2.conf wird installiert ...
Neue Version der Konfigurationsdatei /etc/icinga2/features-available/gelf.conf wird installiert ...
Job for icinga2.service failed. See 'systemctl status icinga2.service' and 'journalctl -xn' for details.
invoke-rc.d: initscript icinga2, action "start" failed.
dpkg: Fehler beim Bearbeiten des Paketes icinga2-common (--configure):
Unterprozess installiertes post-installation-Skript gab den Fehlerwert 1 zurück
libicinga2 (2.5.4-1~debmon70+3) wird eingerichtet ...
dpkg: Abhängigkeitsprobleme verhindern Konfiguration von icinga2-bin:
icinga2-bin hängt ab von icinga2-common (= 2.5.4-1~debmon70+3); aber:
Paket icinga2-common ist noch nicht konfiguriert.
dpkg: Fehler beim Bearbeiten des Paketes icinga2-bin (--configure):
Abhängigkeitsprobleme - verbleibt unkonfiguriert
dpkg: Abhängigkeitsprobleme verhindern Konfiguration von icinga2-ido-mysql:
icinga2-ido-mysql hängt ab von icinga2-bin (= 2.5.4-1~debmon70+3); aber:
Paket icinga2-bin ist noch nicht konfiguriert.
icinga2-ido-mysql hängt ab von icinga2-common (= 2.5.4-1~debmon70+3); aber:
Paket icinga2-common ist noch nicht konfiguriert.
dpkg: Fehler beim Bearbeiten des Paketes icinga2-ido-mysql (--configure):
Abhängigkeitsprobleme - verbleibt unkonfiguriert
dpkg: Abhängigkeitsprobleme verhindern Konfiguration von icinga2:
icinga2 hängt ab von icinga2-bin (= 2.5.4-1~debmon70+3); aber:
Paket icinga2-bin ist noch nicht konfiguriert.
icinga2 hängt ab von icinga2-common (= 2.5.4-1~debmon70+3); aber:
Paket icinga2-common ist noch nicht konfiguriert.
dpkg: Fehler beim Bearbeiten des Paketes icinga2 (--configure):
Abhängigkeitsprobleme - verbleibt unkonfiguriert
..........
Fehler traten auf beim Bearbeiten von:
icinga2-common
icinga2-bin
icinga2-ido-mysql
icinga2
E: Sub-process /usr/bin/dpkg returned an error code (1)

Ausschlaggebend ist der Fehler in dem Paket “icinga2-common”, die Fehler in den restlichen Pakten sind Folgefehler.

Freundlicherweise gibt dpkg auch gleich einige Tips zur Fehlersuche aus

root@monitoring:~# systemctl status icinga2.service
 ● icinga2.service - LSB: icinga2 host/service/network monitoring and management system
 Loaded: loaded (/etc/init.d/icinga2)
 Active: failed (Result: exit-code) since Do 2016-09-22 09:17:37 CEST; 8min ago
 Process: 6270 ExecStart=/etc/init.d/icinga2 start (code=exited, status=1/FAILURE)
Sep 22 09:17:37 vm-00017 icinga2[6270]: checking Icinga2 configuration
 Sep 22 09:17:37 vm-00017 icinga2[6270]: checking Icinga2 configuration. Check '/var/log/icinga2/startup.log' for details. ... failed!
 Sep 22 09:17:37 vm-00017 systemd[1]: icinga2.service: control process exited, code=exited status=1
 Sep 22 09:17:37 vm-00017 systemd[1]: Failed to start LSB: icinga2 host/service/network monitoring and management system.
 Sep 22 09:17:37 vm-00017 systemd[1]: Unit icinga2.service entered failed state.

Systemctl liefert den Hinweis, daß beim Check der Konfiguration wohl etwas nicht passt, und verweist auf die Logdatei “/var/log/icinga2/startup.log”

root@monitoring:~# cat /var/log/icinga2/startup.log
 information/cli: Icinga application loader (version: r2.5.4-1)
 information/cli: Loading configuration file(s).
 information/ConfigItem: Committing config item(s).
 critical/config: Error: Error while evaluating expression: Tried to access undefined script variable 'PluginContribDir'

die dann auch mehrfach den kitischen Fehler “Tried to access undefined script variable ‘PluginContribDir’” anmerkt.

Ein Blick in die Datei “/etc/icinga2/constants.conf” zeigt dann auch, daß die Variable tatsächlich weder gesetzt noch vorhanden ist. Im Verzeichnis “/etc/icinga2/” liegt aber noch eine “constants.conf.dpkg-dist” mit neuerem Datum als die “constants.conf”, in der die Zeile

/* The directory which you use to store additional plugins which ITL provides user contributed command definitions for.
 * Check the documentation, chapter "Plugins Contribution", for details.
 */
 const PluginContribDir = "/usr/lib/nagios/plugins"

vorhanden ist. Nach Hinzufügen der Definition in die “constants.conf” kann dpkg das Paket “icinga2-common” erfolgreich konfigurieren:

root@monitoring:~# dpkg --configure icinga2-common
 icinga2-common (2.5.4-1~debmon70+3) wird eingerichtet ...

Ein “apt-get update” läuft anschließend für die abhängigen Pakete problemlos durch.