Knoten entknoten beim RaspberryPi - Defekte im Paketmanager



Donnerstag 18 Juni 2015 von Trixter Tutorial RaspberryPi keine Kommentare

Aus aktuellem Anlass ein neues Tutorial für den RaspberryPi - diesmal mit dem Schwerpunkt, was tun, wenn ein "Knoten" im Paketmanager neue Installationen oder Deinstallationen verhindert, bzw. blockiert? Was tun, wenn Aktualisierungen zwar verfügbar sind, aber aufgrund von Konflikten verweigert werden? Und zum Schluss fixen wir noch eines der neueren Systemupdates, daß den Raspi gehörig durcheinander bringen kann (und alle vorherigen Fehler produzierte)...

Ursprünglich war dieses Tutorial schon viel früher angedacht - allerdings konnte ich es mir nicht so einfach locker aus dem Ärmel schütteln, da ich diese Fehlersituation bei mir erst selber erreichen mußte um Lösungswege zu ermitteln. Bis gestern Abend lief alles glatt - bis ich auf die Idee kam, ein neues Raspbian Systemupdate einzuspielen und damit ging der Spaß dann erst los.

Anhand von diesem Beispiel möchte ich Lösungswege und Ansätze erläutern, die mit Sicherheit so oder so ähnlich auch bei anderen Fehlern helfen können - eine Garantie ist dies allerdings nicht - dennoch solltet ihr es ersteinmal so probieren und wenn es nicht hinhauen sollte, dann schreibt eure Probleme in unser Forum!

Ein Update macht Probleme

Die Macher von Raspbian sind auf die Idee gekommen, ein wenig an der Funktionsvielfalt der grafischen Oberfläche (genannt Taskbar) zu schrauben - eigentlich keine schlechte Idee, da der Leiste standardmäßig zB. eine Lautstärkeregelung fehlt (diese kann man aber manuell dort einbinden und aktivieren) - der Knackpunkt beginnt aber nicht bei dieser sinnvollen Funktion, sondern bei der neuen Netzwerkfunktion (vor allen Dingen WLAN), die nun ebenfalls in der Leiste zu finden ist. WLAN-User sollen damit einfacher ins Netz finden, LAN User zumindest einen Indikator (Informationen zur Verbindung, grafisch dargestellt) erhalten. Schön und gut - nur - es fehlen wichtige Dateien, die zur Funktion benötigt und die durch das Update nicht automatisch mitinstalliert werden. Dadurch entstehen schon beim Booten dicke Fehlermeldungen und natürlich sind die zuvor schon manuell eingestellten Dinge wie "feste IP Adresse" (war auch mal Inhalt eines meiner Tutorials) hinfällig geworden - ebenso bestimmte Desktopeinstellungen. Dies alles wird vorher unangekündigt (wer liest schon vorher den offiziellen Blog der Raspberry Foundation, wenn er ein Update machen will?) und ungefragt einfach in ein reguläres Systemupdate verpackt und den Usern untergeschoben. Meiner Meinung nach eine eher fragwürdige Methode - aber egal, nun ist die Katze einmal in den Brunnen gefallen, also schauen wir, daß wir sie wieder an Land bekommen...

Knoten lösen mittels Aptitude

Wer das neue Systemupdate (das mit dem Bootkernelupdate) installiert hat, wird später feststellen, daß nicht alle Aktualisierungen durchgeführt werden konnten. Am Ende (in diesem Beispiel) bleiben 4 Updates übrig, die sich weigern installiert zu werden.


Diese 4 Aktualisierungen lassen sich in diesem Fall nicht aktualisieren, da sie von einem Paket abhängen, welches als "fehlerhaft" deklariert wird (sehen wir noch). Solange dieser Fehler also besteht, wird auch diese Weigerung bestehen bleiben - also müssen wir das Problem lösen. Dies geht leider nicht so bequem mit der Maus wie zB. die Bedienung der Oberfläche des Paketmanagers Synaptic, auch gibt es keinen pauschalen Befehl der in der Bash einzutippen ist - wir müssen uns mit dem Systemeigenen Paketmanager "Aptitude" auseinandersetzen. Dieser wird komplett mit der Tastatur gesteuert und hat ziemlich eigenwillige Befehle - da braucht man schon eine gewisse Zeit um durchzusteigen, notfalls mit der Hilfefunktion, die man über die Taste "SHIFT" und "?" erreicht.

Wir starten unser Terminal und tippen dort ein:

sudo aptitude

Nach einer kleinen Wartezeit erscheint die Oberfläche des Tools auf dem Screen (erinnert etwas an alte DOS-Programme).


Unser Augenmerk liegt bei dem Eintrag "Aktualisierbare Pakete" - diesen markieren wir, indem wir mit den Pfeiltasten darauf gehen und dann die ENTER-Taste drücken.


Danach "hangeln" wir uns immer weiter durch, bis wir am Ende vor der eigentlichen Programmauswahl stehen. Jetzt müssen wir vor jedem dieser Programme die "+" Taste drücken - zur Bestätigung wird die Zeile grün. Das machen wir mit allen Programmen, bis diese allesamt ausgewählt sind - dann drücken wir die Taste "g". Evtl. Fehlermeldungen und Warnhinweise quittieren wir mit der ENTER-Taste. Es kann sein, daß man im Vorschaufenster noch einmal erneut die "g"-Taste drücken muss - nun sollte man sehen, wie die noch "offenen" Programme von Aptitude heruntergeladen und installiert werden. Irgendwann erhält man den Hinweis, daß man zum Abschluss noch die ENTER-Taste drücken soll, danach kommt man zurück ins Hauptmenü des Tools, welches wir mit Druck auf die "q"-Taste beenden.

Nach dem Reboot wird man feststellen, daß die 4 zuvor unwilligen Pakete installiert wurden. Ich vermute in diesem Fall mal, daß es Probleme beim "Umstellen" von RPi1 auf RPi2er Software gab und sich diese als Fehler, bzw. Defekte unbemerkt einschlichen. Solltet ihr also irgendwann (egal durch was verursacht) ähnliche Probleme haben - testet es auf jeden Fall erstmal mit Aptitude an!


Befehl um diesen Screen zu erhalten (es gibt noch weitere, ich nehme aber als Beispiel nur einen):

sudo apt-get autoremove

In unserem Beispiel mit dem Systemupdate wird es besagte Fehler beim Booten geben, nachdem diese Aktualisierungen gefixt wurden. Man wird auch bemerken, daß die Taskleiste nun wieder oben angebracht ist (sollte sie vorher unten gewesen sein) und natürlich die neuen Symbole darin. Daher werden wir jetzt...

Die defekte DHCPCD Installation fixen

Es wurden hierbei schlicht und einfach die benötigten "Network Interface" Daten vergessen beizupacken - oder sagen wir es anders - der Autor meint, der User hat die Entscheidungsfreiheit und kann selber wählen, ob er den neuen Kram haben will oder nicht, deswegen wurde es wohl aus dem regulären Systemupdate ausgelagert. Vielleicht war das sogar mal so geplant und angedacht, aber - das Symbol in der Taskleiste erscheint schon nach dem Systemupdate und nicht erst nachdem man die fehlenden Daten auf eigenem Wunsch installiert. Dh. man wird quasi doch dazu gezwungen, da man sich ansonsten mit nervigen Fehlermeldungen beim Booten rumschlagen darf - Entscheidungsfreiheit sieht in meinen Augen etwas anders aus. Da ich den Mist aber auch nicht deaktiviert bekomme (beim Versuch das wieder rückwirkend zu Deinstallieren habe ich mir Samba und die komplette Internetkonfiguration zerschossen, sodaß ich komplett ohne Netz da stand! Also keine gute Idee, diesen DHCPCD5 Kram zu deinstallieren...) spielen wir das Spielchen mit und rüsten auf den neuen Netzadapter um. Der benötigte Code dazu lautet:

sudo apt-get install raspberrypi-net-mods

Aber Achtung... während der Installation wird man gefragt, ob man die neuen Configdaten oder seine alten beibehalten will (dies wird sogar empfohlen!) - nehmt die neuen (also Taste "y" oder "j") - nur damit funktioniert alles (beim Booten und später unter Raspbian) einwandfrei. Bleibt ihr bei euren alten Daten, bleibt das Spiel bestehen und kann uU. nur durch eine komplette Neuinstallation (also erst den Kram wieder runterwerfen, dann neu ziehen und neu installieren) angestoßen werden, daß ihr diese Option ändern könnt.

Das bedeutet zwar, daß ihr augenscheinlich die statischen Einstellungen verliert, dies ist aber kein Problem, da man diese Dinge jetzt über dieses Icon in der Taskleiste selber festlegen kann. Klickt mit der rechten Maus darauf, wählt "WiFi Networks (dhcpcdui) Settings", dann wählt ihr bei "Configure" das "interface" aus und klickt in das rechte leere Feld - dort taucht dann euer Netzwerkadapter auf. Klickt ihn erneut an, nehmt dann das Häkchen bei "Automatically configure empty options" heraus und tragt manuell bei IP-Adresse: eure gewünschte feste, statische IP Adresse des Pi´s ein, bei Router und bei DNS Servers die IP des Routers, DNS Search laßt ihr leer. Speichert das Ganze durch einen Klick auf den "Anwenden"-Button. Fertig... beim nächsten Booten werdet ihr exakt wieder die von euch gewünschte und vergebene IP Adresse erhalten. Nungut, ob´s die Umstellung jetzt wert war, das über eine GUI zu tun oder per Texteditor zu bewerkstelligen, sei mal dahingestellt - für mich wäre es nicht nötig gewesen...

dpkg Hänger fixen

Der folgende Hinweistext gilt natürlich nur für dieses Fallbeispiel in diesem Artikel - solltet ihr aufgrund irgendeiner Aktion ebenfalls einen solchen Fehler verursacht haben, dann probiert direkt den Code weiter unten aus.

Noch ein Achtung... brecht ihr während der Frage bei der Installation diese ab, "beschädigt" ihr "APT" das Advanced Packaging Tool, bzw. es hängt dann an einer "unerledigten" Aufgabe fest - damit verliert ihr die Möglichkeit neue Software zu installieren oder zu deinstallieren. Aber keine Panik - wenn ihr diesen Code verwendet, wird an der zuvor abgebrochenen Stelle weiter gemacht und die ursprüngliche Installation abgeschlossen:

sudo dpkg --configure -a

Sonstige Fixmaßnahmen

Nachfolgende Codes könnt ihr ebenfalls noch ausprobieren, ehe ihr euren Raspi komplett frisch neu aufsetzt (als absolute Notlösung natürlich):

sudo apt-get dist-upgrade

sudo rpi-update

aptitude dist-upgrade -s

Schlagworte : RaspberryPi, Tutorial

Trixter
Administration Nemesiz v4 Projekt
Aufgaben im Nemesiz: Administrator, Autor & Moderator, Übersetzung & Bugfixing
Freier Redakteur bei Special Interest Magazinen & Online-Blogs
Retro & Emulation, Alternative Computersysteme, Schwerpunkt: Spiele

  • Schreibe einen Kommentar


    Dein Name (Pflichtfeld):



    Deine Webseite (optional - http://www.):



    Deine E-Mail (wird nicht veröffentlicht):



    Dein Kommentar:

     Soll unser Blog deine Daten für weitere Kommentare merken? (setzt Cookie)
      1x aktiviert ist die Funktion gültig bis Cookielöschung. (Haken rein = Ja)

    Was ist der letzte Buchstabe des Wortes lxsp ?
Evtl. Statusmeldungen erscheinen nach dem Absenden in roter Schrift direkt unter
dem Artikel - bitte Herunterscrollen, falls dein Browser wieder zum Anfang der Seite
gesprungen ist. Beachte: Neue Kommentare erscheinen erst nach Freigabe durch
einen Administrator!
Danach wird dein Name mitsamt Email auf unsere Whitelist
gesetzt und deine Kommentare bei uns erscheinen dann immer direkt. (Spamschutz)