NEWS
Neuer Befehl: "iob nodejs-update"
-
@marty56 Das kommt erst mit dem nächsten js-controller auch in "help", geht aber trotzdem
-
Scheint zu funktionieren, mit dem automatisierten Update über den update-Mechanismus von Linux...
Vor dem Update
Building dependency tree... Done Reading state information... Done 1 package can be upgraded. Run 'apt list --upgradable' to see it. martin@iobroker-test-sicher:~$ sudo apt full-upgrade Reading package lists... Done Building dependency tree... Done Reading state information... Done Calculating upgrade... Done The following packages will be upgraded: nodejs 1 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. Need to get 29.5 MB of archives. After this operation, 95.2 kB of additional disk space will be used. Do you want to continue? [Y/n] Y Get:1 https://deb.nodesource.com/node_18.x nodistro/main amd64 nodejs amd64 18.18.2-1nodesource1 [29.5 MB] Fetched 29.5 MB in 2s (18.1 MB/s) Reading changelogs... Done (Reading database ... 48973 files and directories currently installed.) Preparing to unpack .../nodejs_18.18.2-1nodesource1_amd64.deb ... Detected old npm client, removing... Unpacking nodejs (18.18.2-1nodesource1) over (18.18.1-1nodesource1) ... Setting up nodejs (18.18.2-1nodesource1) ... Processing triggers for man-db (2.9.4-2) ... martin@iobroker-test-sicher:~$
So weit so gut, aber dann meldet ioBroker immer noch die alte Version aus dem obigen Screeshot?
Aber wahrscheinlich geht es ohne "iob stop" und "iob start" nicht aus, oder?
-
@martinp sagte in Neuer Befehl: "iob nodejs-update":
Natürlich funktioniert das übliche systemseitige Update weiterhin. Und es sollte auch so verwendet werden, der nodejs-updater ist nur für die einmalige Umstellung des nodesource-Repos gedacht.
Aber wahrscheinlich geht es ohne "iob stop" und "iob start" nicht aus, oder?
Das sollte man vor Updates von nodejs eh immer machen. nodejs ist sowas wie das Betriebssystem für den iobroker, das wechselt man nicht im Vollbetrieb.
-
@thomas-braun also wäre der Entscheidungsprozess
FALLS ioBroker auf der Übersichtsseite einen Minor-Update anzeigt (z. B. den oben aus dem Screenshot):
- iob stop
- updaten:
2a) sudo apt update && sudo apt full-upgrade
2b) iob nodjs-update # (nur bei großem nodjs update!)
2b) iob fix - iob start
NUR FALLS der angezeigte nodejs Update-Schritt zu groß ist ggfs. dann noch 2b) iob nodjs-update einschieben
ist "iob fix" vor "iob start" dringend ratsam? -
iob fix
ist nie falsch.
Minor Updates innerhalb eines Versionszweigs von nodejs wie gehabt über den üblichen apt update / apt full-upgrade
Wenn mal irgendwann nodejs 20 zur Empfehlung wird dann reicht ein (wiederum einmaliges) 'iob nodejs-upgrade' aus, um auf diesen Versionszweig zu wechseln.
-
iob nodejs-update xx
Mega, vielen Dank dafür, Problem gelöst, jetzt geht's
-
iob nodejs-update
So habe ich ausgeführt - hat auch soweit geklappt und nun habe ich nodistro als Quelle - warum ist das notwendig? Wird das andere Repository nicht mehr gepflegt?
-
@mickym sagte in Neuer Befehl: "iob nodejs-update":
Wird das andere Repository nicht mehr gepflegt?
Richtig, wurde seitens nodesource alles vereinfacht und die müssen nun nicht mehr für jedes Debian-Derivat alles neubauen. Die ganzen Ableitungen wie Ubuntu, Raspberry OS usw. greifen jetzt alle auf die gleiche deb-Datei zu.
-
@thomas-braun OK ich hab jetzt Dein Skript bzw. halt iob nodejs-update durchgeführt - das Editieren hätte wahrscheinlich wegen irgendwelcher Schlüssel nicht geklappt.
Muss man nun bei Major Updates den Befehl ausführen oder kann ich wie früher
deb [signed-by=/etc/apt/keyrings/nodesource.gpg] https://deb.nodesource.com/node_18.x nodistro main
einfach die Versionsnummer ändern (also zum Beispiel auf 20.x) ?
-
Kannst du weiterhin mit einem Edit der nodesource.list machen.
An der grundsätzlichen Funktionsweise von apt hat sich natürlich nichts geändert, nur die .list-Datei muss umgestellt werden.Alternativ geht auch
iob nodejs-update XY
XY = veröffentlichter Major-Release-Zweig
-
@thomas-braun Ok danke - dann weiß ich Bescheid.
-
Ich erlaube mir mal diese Liste für ein grösseres Update auf einem Raspberry zu ergänzen
@martinp sagte in Neuer Befehl: "iob nodejs-update":
@thomas-braun also wäre der Entscheidungsprozess
FALLS ioBroker auf der Übersichtsseite einen Minor-Update anzeigt (z. B. den oben aus dem Screenshot):
- iob stop
- updaten:
2a) sudo apt update && sudo apt full-upgrade
2b) iob nodjs-update # (nur bei großem nodjs update!)
2b) iob fix - iob start
NUR FALLS der angezeigte nodejs Update-Schritt zu groß ist ggfs. dann noch 2b) iob nodjs-update einschieben
ist "iob fix" vor "iob start" dringend ratsam?Da ich nur ein Gelegenheit-Linuxer bin, brauch ich immer möglichst vollständige Ablauflisten - ich vermute mal viele andere hier auch
- Auf der Weboberfläche oder mit
iob backup
erstmal ne aktuelle Sicherung schaffen... iob stop
- dann alles anhalten...sudo apt update && sudo apt full-upgrade
- Grundsystem aktualisieren...iob fix
- sonst hat man das nodejs-update nicht zur Verfügung...iob nodejs-update
- Jetzt das Update anstossen und die Rückfrage zum Minor update mit 'y' beantworten...- Kaffee holen, Zeitung lesen, Kaffee trinken...
sudo reboot
- wie aufgefordert Systemneustart durchführen- Kaffee Teil 2...
- Auf Admin-Oberfläche einloggen, Versionen und Logs checken und sich freuen, dass alles geklappt hat
Mein System ist jetzt jedenfalls wieder chic.
Vielen Dank @apollon77, @Thomas-Braun und alle anderen Aktiven. Diese Art ein System zu pflegen ist deutlich einfacher und entspannter als vorher! Gerade, wenn man sich nicht jeden Tag damit beschäftigt.
-
Moin, danke schonmal für den Thread hier. Bei mir meldet IObroker in der Übersicht auch den Wechsel zwischen nodejs 18.17.1 auf 18.18.2. Hab mich dann mal durch die Foren gewühlt und bin dann bis zu untenstehendem Punkt gekommen.
Wie kann ich die Keys für nodejs aktualiseren? Scheinbar reicht mein Google-Vodoo nicht aus um einen Thread dazu auszugraben:-(
Sobald ich in der nodesource.list von Bookworm auf nodistro wechsel, bekomme ich bei Apt Update unten stehenden Fehler.
Den Thread zu Grafana habe ich gefunden (seitdem auch die Source drin) nur schaffe ich es nicht das vorgehen auf Nodesource anzupassen.Dankeschön!
Grüße schreckusInhalt: sudo nano /etc/apt/sources.list.d/nodesource.list
deb [signed-by=/usr/share/keyrings/nodesource.gpg] https://deb.nodesource.com/node_18.x nodistro main deb-src [signed-by=/usr/share/keyrings/nodesource.gpg] https://deb.nodesource.com/node_18.x nodistro main # deb [signed-by=/usr/share/keyrings/nodesource.gpg] https://deb.nodesource.com/node_18.x bookworm main # deb-src [signed-by=/usr/share/keyrings/nodesource.gpg] https://deb.nodesource.com/node_18.x bookworm main
user@F01:/opt/iobroker$ sudo apt update OK:1 http://security.debian.org/debian-security bookworm-security InRelease OK:2 http://deb.debian.org/debian bookworm InRelease OK:3 http://deb.debian.org/debian bookworm-updates InRelease OK:4 https://apt.grafana.com stable InRelease Holen:5 https://deb.nodesource.com/node_18.x nodistro InRelease [12,1 kB] Fehl:5 https://deb.nodesource.com/node_18.x nodistro InRelease Die folgenden Signaturen konnten nicht überprüft werden, weil ihr öffentlicher Schlüssel nicht verfügbar ist: NO_PUBKEY 2F59B5F99B1BE0B4 Paketlisten werden gelesen… Fertig W: GPG-Fehler: https://deb.nodesource.com/node_18.x nodistro InRelease: Die folgenden Signaturen konnten nicht überprüft werden, weil ihr öffentlicher Schlüssel nicht verfügbar ist: NO_PUBKEY 2F59B5F99B1BE0B4 E: Das Depot »https://deb.nodesource.com/node_18.x nodistro InRelease« ist nicht signiert. N: Eine Aktualisierung von solch einem Depot kann nicht auf eine sichere Art durchgeführt werden, daher ist es standardmäßig deaktiviert. N: Weitere Details zur Erzeugung von Paketdepots sowie zu deren Benutzerkonfiguration finden Sie in der Handbuchseite apt-secure(8). user@F01:/opt/iobroker$
-
Befehl um den es in diesem Thread geht ausgeführt? Der zieht auch die Keys rein.
-
@thomas-braun
ja hatte ich - scheinbar hab ich mit dem "any key" bestätigt, statt mit "y". den jetzt lief es durch.Dankeschön!
Wenn ich es richtig gedeutet wurde mit diesem Eintrag die Certs aktualisiert?
*** Installing ca-certificates, curl and gnupg, just in case they are missing.
Grüße schreckus
-
Die ca-certificates, die gpg-Keys zum Repo werden später reingezogen.
-
ok danke, ich versuch mich mal durchzubeissen wie das mit den gpg-Keys funktioniert bzw. wie man sie manuell aktualisiert wenn man nicht nen skript zur hand hat:-)
Dankeschön!
Grüße schreckus -
Steht für nodesource exemplarisch in meinem entsprechenden HowTo drin.
-
Habe jetzt auch den Befehl versucht auf meinem Raspi Slave mit Version nodejs18.17.1. Ist leider schief gegangen. Fallback auf v18.00.
Anbei das Protokoll:ioBroker nodejs fixer 2023-10-13 No recommendation for a nodejs version found on your system. We recommend to install latest version from nodejs v18 tree. Your current setup is: /usr/bin/nodejs v18.17.1 /usr/bin/node v18.17.1 /usr/bin/npm 9.6.7 /usr/bin/npx 9.6.7 /usr/bin/corepack 0.18.0 We found these nodejs versions available for installation: nodejs: Installed: 18.17.1-deb-1nodesource1 Candidate: 18.17.1-deb-1nodesource1 Version table: *** 18.17.1-deb-1nodesource1 500 500 https://deb.nodesource.com/node_18.x bullseye/main arm64 Packages 100 /var/lib/dpkg/status 16.20.2-deb-1nodesource1 500 500 https://deb.nodesource.com/node_16.x bullseye/main arm64 Packages 12.22.12~dfsg-1~deb11u4 500 500 http://deb.debian.org/debian bullseye/main arm64 Packages 500 http://security.debian.org/debian-security bullseye-security/main arm64 Packages Nothing to do - Your installation is using the correct paths. You are running nodejs v18.17.1. Do you want to install latest version from nodejs v.18 tree? Press <y> to continue or any other key to quit Trying to update your installation now. Please be patient. find: '/var/lib/lxcfs/cgroup': Input/output error Waiting for ioBroker to shut down - Give me a minute... ############################################################ *** These repos are active on your system: Hit:1 http://security.debian.org/debian-security bullseye-security InRelease Hit:2 http://deb.debian.org/debian bullseye InRelease Hit:3 http://deb.debian.org/debian bullseye-updates InRelease Hit:4 http://archive.raspberrypi.org/debian bullseye InRelease Hit:5 https://apt.pivccu.de/piVCCU stable InRelease Reading package lists... Done *** Installing ca-certificates, curl and gnupg, just in case they are missing. *** Creating new /etc/apt/sources.list.d/nodesource.list and pinning source deb [signed-by=/etc/apt/keyrings/nodesource.gpg] https://deb.nodesource.com/node_18.x nodistro main Package: nodejs Pin: origin deb.nodesource.com Pin-Priority: 1001 *** These repos are active after the adjustments: Hit:1 http://deb.debian.org/debian bullseye InRelease Hit:2 http://deb.debian.org/debian bullseye-updates InRelease Hit:3 http://security.debian.org/debian-security bullseye-security InRelease Hit:4 http://archive.raspberrypi.org/debian bullseye InRelease Hit:5 https://apt.pivccu.de/piVCCU stable InRelease Get:6 https://deb.nodesource.com/node_18.x nodistro InRelease [12.1 kB] Get:7 https://deb.nodesource.com/node_18.x nodistro/main armhf Packages [6155 B] Get:8 https://deb.nodesource.com/node_18.x nodistro/main arm64 Packages [6123 B] Fetched 24.4 kB in 4s (5509 B/s) Reading package lists... Done Installing the recommended nodejs version now! Exact recommended version unknown, installing a fallback! dpkg: warning: downgrading nodejs from 18.17.1-deb-1nodesource1 to 18.0.0-1nodesource1 (Reading database ... 91249 files and directories currently installed.) Preparing to unpack .../nodejs_18.0.0-1nodesource1_arm64.deb ... Detected old npm client, removing... Unpacking nodejs (18.0.0-1nodesource1) over (18.17.1-deb-1nodesource1) ... Setting up nodejs (18.0.0-1nodesource1) ... Processing triggers for man-db (2.9.4-2) ... Updating fallback to latest nodejs v18 release E: Failed to fetch https://deb.nodesource.com/node_18.x/pool/main/n/nodejs/nodejs_18.18.2-1nodesource1_arm64.deb Connection timed out [IP: 2606:4700:10::ac43:acd 443] E: Unable to fetch some archives, maybe run apt-get update or try with --fix-missing? v18.0.0 has been installed! You are using the latest version now! Installing the recommended nodejs version! E: Failed to fetch https://deb.nodesource.com/node_18.x/pool/main/n/nodejs/nodejs_18.18.2-1nodesource1_arm64.deb Error reading from server - read (5: Input/output error) [IP: 2606:4700:10::6816:41a 443] E: Unable to fetch some archives, maybe run apt-get update or try with --fix-missing? i We tried our best to fix your nodejs. Please run iob diag again to verify. *** RESTARTING ioBroker NOW! *** Please refresh or restart your browser in a few moments.
Auserdem noch das Ergebnis bei iob diag
======================= SUMMARY ======================= v.2023-10-10 Static hostname: raspberrypi-slave Icon name: computer Operating System: Debian GNU/Linux 11 (bullseye) Kernel: Linux 6.1.21-v8+ Architecture: arm64 Installation: native Kernel: aarch64 Userland: arm64 Timezone: Europe/Berlin (CET, +0100) User-ID: 1000 X-Server: false Boot Target: multi-user.target Pending OS-Updates: 1 Pending iob updates: 0 Nodejs-Installation: /usr/bin/nodejs v18.0.0 /usr/bin/node v18.0.0 /usr/bin/npm 8.6.0 /usr/bin/npx 8.6.0 /usr/bin/corepack 0.10.0 Recommended versions are nodejs No connection to databases possible ... and npm No connection to databases possible ... Your nodejs installation is correct MEMORY: total used free shared buff/cache available Mem: 909M 237M 130M 0.0K 541M 608M Swap: 99M 2.0M 97M Total: 1.0G 239M 227M Active iob-Instances: 0 No connection to databases possible ... ioBroker Core: js-controller 5.0.12 admin "admin" not found ioBroker Status: No connection to databases possible ... Status admin and web instance: Objects: 1 States: 1 Size of iob-Database: 12M /opt/iobroker/iobroker-data/objects.jsonl 796K /opt/iobroker/iobroker-data/states.jsonl =================== END OF SUMMARY ====================
Jemand eine Idee?
Danke
-
@bert-0 sagte in Neuer Befehl: "iob nodejs-update":
Jemand eine Idee?
Das dürfte am nodesource-Server liegen, nicht am Skript.
sudo apt update sudo apt full-update
sagt?