Adapter Update nicht möglich:

Ich wollte meine Adapter nach einiger Zeit mal wieder auf den neusten Stand bringen.

Im ioBroker unter Adapter, bei denen eine neue Version verfügbar ist, habe ich das Update angestoßen. Dies mache ich, indem ich beim jeweiligen Adapter auf das Symbol mit dem gedrehten Pfeil klicke. Bei den meisten Adaptern war hier kein Problem festzustellen. Lediglich die Adapter: Admin – Das Wetter – JavaScript – Sonoff und Telegram ließen sich nicht automatisch updaten. Hier wurde mir angezeigt, dass meine node.js Version veraltet ist. Ich verwende derzeit Version 16.20.2, gefordert wird aber die Version 18 und höher.

Node.js kann leider nicht automatisch über den ioBroker aktualisiert werden. Die Aktualisierung muss also über die Konsole durchgeführt werden.

Zunächst recherchierte ich im Internet und versuchte das Update zu bewerkstelligen, was sich jedoch als schwierig erwies. Wie ich außerdem feststellen musste, bedurfte es auch einer erheblichen Aktualisierung meiner Raspberry-Software.

Daher werde ich in diesem Artikel mal meine Vorgehensweise schildern.

1. Betriebssystem sichern:

Zunächst habe ich mein völlig fehlerfrei laufendes Betriebssystem von der SD-Karte als Image auf meinem Windows-PC gesichert. Siehe hierzu meinen Beitrag unter Kapitel T1. Dies war auch gut so. Denn beim ersten Versuch habe ich meine SD-Karte geschrotet.

SD-Karte wieder in den Raspberry gesteckt und das System booten lassen.

2. Konsole über Putty am Raspberry öffnen, siehe Kapitel A3.

3. Prüfen der installierten Version:

Eingabe am Cursor> node -v

Hier wird mir die Version v16.20.2 angezeigt. Ich benötige jedoch mindestens Version18.x

4. Software auf den aktuellen Stand bringen:

Eingabe am Cursor> sudo apt-get update

Eingabe am Cursor> sudo apt-get upgrade

Beim Upgrade bekam ich bereits eine Fehlermeldung, dass verschiedene Pakete unerfüllte Abhängigkeiten zeigen. Dazu aber im Nachtrag mehr. Zunächst beschreibe ich den normalen Updateverlauf da die Meldung nicht zwingend der Fall sein muss.

5. ioBroker anhalten:

Eingabe am Cursor> iobroker stop

6. Herunterladen node.js Version 18.x

Eingabe am Cursor> curl -sl https://deb.nodesource.com/setup_18.x | sudo -E bash –

Senkrechten Strich mit (AltGr + <) erzeugen. Setup_18.x steht für die gewünschte Versionsnummer. ZZt. Bis 20.x erhältlich. Mir genügt jedoch 18.x. (nur erforderliche Version laden!).

7. Down geladene Version installieren:

Eingabe am Cursor> sudo apt-get install -y nodejs

Das -y gibt die Erlaubnis zum Überschreiben der derzeitigen Version.

8. Version prüfen:

Eingabe am Cursor> node -v

Nun wird mir die Version v18.20.4 angezeigt. Also die benötigte Node.js Version.

9. An dieser Stelle kann man noch einen ioBroker Fix durchführen: (nicht zwingend erforderlich)

Eingabe am Cursor> iobroker fix

Das Ausführen des Fix-Scrips übernimmt die korrekten Einstellungen des Systems automatisch. Es entlastet damit den Nutzer, der in der Regel nicht versiert genug ist diese einzeln und manuell durchzuführen. In Einzelfällen kann dies aber auch zu Problemen führen. Am Ende sollte die Meldung “Your installation was fixed successfully“ stehen.

10. ioBroker wieder starten:

Eingabe am Cursor> iobroker start

Damit ist das Update der Node.js fertig. Ich kann Putty schließen und mich an meinen ioBroker wie gewohnt anmelden. Das Update der ausstehenden Adapter kann nun problemlos durchgeführt werden.

Nachtrag:

Wie oben erwähnt gelang mir die beschriebene Installaton der neuen Version erst, nachdem ich den Fehler in meiner installierten Software beseitigen konnte bzw. meine Installierte Software auf den aktuellen Stand brachte.

Die Fehlermeldung beim Upgrade: Pakete haben unerfüllte Abhängigkeiten. Versuchen Sie es mit <<apt –fix-broken install<<

Eingabe am Cursor> sudo apt –fix-broken install (Achtung! vor fix zwei -)

Nach dieser Option werden 552 MB Plattenplatz zusätzlich genutzt. Mit Ja (j) bestätigen. Die weitere Verarbeitung der Pakete nimmt eine längere Zeit in Anspruch.

Wenn alle Pakete installiert sind und der Cursor zur weiteren Eingabe erscheint ist das Upgrade erneut durchzuführen. Ich führe sicherheitshalber Update und Upgrade nochmals aus.

Eingabe am Cursor> sudo apt-get update

Eingabe am Cursor> sudo apt-get upgrade

Hinweis, dass nochmals 95 MB Speicher benötigt werden. Mit Ja (j) bestätigen. Nun erfolgt eine längere Upgrade Prozedur, bei dem weite Teile des Alten Betriebssystem erneuert werden. Unbedingt so lange warten bis der Eingabecursor wieder erscheint.

Erst danach war das Update von Node.js auf die Version 18.x möglich.

Ab hier ist oben bei Punkt “5. IoBroker anhalten“ mit dem Update von Node.js fort zu fahren.

Zum Seitenanfang