NEWS
js-controller 3.2 jetzt im STABLE!
-
@techmo sagte in js-controller 3.2 jetzt im STABLE!:
really?? Ist das deine domain? Du scheinst Sie in der Konfig aber eingetragen zu haben ..
@apollon77
Nein ich habe die Domain im Log ersetzt.
Wo sie ohne .net steht ist sie auch im Original ohne net.
Bei den anderen eben mit. -
@apollon77
Ist jetzt ein anderer Fehler:2021-02-21 21:21:06.123 - debug: admin.0 (31084) Adding to Greenlock: anstoots.ddns.net with alternative names anstoots.ddns.net 2021-02-21 21:21:06.380 - info: admin.0 (31084) Challenge server listening on port 80 2021-02-21 21:21:06.382 - info: admin.0 (31084) If something is not working and your adapter is not reachable anymore you can turn off HTTPS with executing "iobroker admin.0 set --secure false" in your shell. 2021-02-21 21:21:06.453 - info: admin.0 (31084) https server listening on port 8081 2021-02-21 21:21:06.454 - info: admin.0 (31084) Use link "https://localhost:8081" to configure. 2021-02-21 21:21:06.647 - debug: admin.0 (31084) Subscribe OBJECTS: * 2021-02-21 21:21:16.886 - debug: admin.0 (31084) [LE] certificate_order: {"account":{"key":{"kid":"https://acme-v02.api.letsencrypt.org/acme/acct/113314436"}},"subject":"mydomain.net","altnames":["mydomain.net"],"challengeTypes":["http-01"]} 2021-02-21 21:21:19.306 - debug: admin.0 (31084) [LE] challenge_select: {"altname":"mydomain.net","type":"http-01","keyAuthorization":"SZxIO3ip2CRhSFFNCsIKhbsJL5rNL-IuuKtQoRzsvCE.x5SIlyfhEmleea795fCKMguyqnZwCQZOs7-BVkyoLeQ"} 2021-02-21 21:21:25.662 - debug: admin.0 (31084) [LE] challenge_status: {"status":"pending","type":"http-01","altname":"mydomain.net"} 2021-02-21 21:21:28.068 - debug: admin.0 (31084) [LE] challenge_status: {"status":"valid","type":"http-01","altname":"mydomain.net"} 2021-02-21 21:21:28.072 - info: admin.0 (31084) Received new certificate for mydomain.net via http-01 2021-02-21 21:21:30.451 - debug: admin.0 (31084) [LE] certificate_status: {"subject":"mydomain.net","status":"valid"} 2021-02-21 21:21:31.478 - debug: admin.0 (31084) [LE] cert_issue: {"renewAt":1617822156264,"subject":"mydomain.net","altnames":["mydomain.net"]} 2021-02-21 21:21:31.479 - info: admin.0 (31084) Certificate for mydomain.net is valid till 2021-04-07T19:02:36.264Z 2021-02-21 21:21:38.021 - error: admin.0 (31084) [LE] {"errno":"ENOTFOUND","code":"ENOTFOUND","syscall":"getaddrinfo","hostname":"mydomain","context":"cert_issue","subject":"mydomain","altnames":["mydomain"]} 2021-02-21 21:21:38.025 - error: admin.0 (31084) [LE] {"length":0} 2021-02-21 21:21:38.026 - error: admin.0 (31084) [LE] {"length":0}@techmo Also es sieht an sich gut aus. Das Zertifikat wurde geholt. starte admin mal neu ( hätte eigentlich gedacht der Startet sich automatisch neu ... aber ok). Und durufst es danach EXAKT MIT DEM Domainnamen auch auf für den Du das Zertifikat geholt hast?
-
@apollon77
Ist jetzt ein anderer Fehler:2021-02-21 21:21:06.123 - debug: admin.0 (31084) Adding to Greenlock: anstoots.ddns.net with alternative names anstoots.ddns.net 2021-02-21 21:21:06.380 - info: admin.0 (31084) Challenge server listening on port 80 2021-02-21 21:21:06.382 - info: admin.0 (31084) If something is not working and your adapter is not reachable anymore you can turn off HTTPS with executing "iobroker admin.0 set --secure false" in your shell. 2021-02-21 21:21:06.453 - info: admin.0 (31084) https server listening on port 8081 2021-02-21 21:21:06.454 - info: admin.0 (31084) Use link "https://localhost:8081" to configure. 2021-02-21 21:21:06.647 - debug: admin.0 (31084) Subscribe OBJECTS: * 2021-02-21 21:21:16.886 - debug: admin.0 (31084) [LE] certificate_order: {"account":{"key":{"kid":"https://acme-v02.api.letsencrypt.org/acme/acct/113314436"}},"subject":"mydomain.net","altnames":["mydomain.net"],"challengeTypes":["http-01"]} 2021-02-21 21:21:19.306 - debug: admin.0 (31084) [LE] challenge_select: {"altname":"mydomain.net","type":"http-01","keyAuthorization":"SZxIO3ip2CRhSFFNCsIKhbsJL5rNL-IuuKtQoRzsvCE.x5SIlyfhEmleea795fCKMguyqnZwCQZOs7-BVkyoLeQ"} 2021-02-21 21:21:25.662 - debug: admin.0 (31084) [LE] challenge_status: {"status":"pending","type":"http-01","altname":"mydomain.net"} 2021-02-21 21:21:28.068 - debug: admin.0 (31084) [LE] challenge_status: {"status":"valid","type":"http-01","altname":"mydomain.net"} 2021-02-21 21:21:28.072 - info: admin.0 (31084) Received new certificate for mydomain.net via http-01 2021-02-21 21:21:30.451 - debug: admin.0 (31084) [LE] certificate_status: {"subject":"mydomain.net","status":"valid"} 2021-02-21 21:21:31.478 - debug: admin.0 (31084) [LE] cert_issue: {"renewAt":1617822156264,"subject":"mydomain.net","altnames":["mydomain.net"]} 2021-02-21 21:21:31.479 - info: admin.0 (31084) Certificate for mydomain.net is valid till 2021-04-07T19:02:36.264Z 2021-02-21 21:21:38.021 - error: admin.0 (31084) [LE] {"errno":"ENOTFOUND","code":"ENOTFOUND","syscall":"getaddrinfo","hostname":"mydomain","context":"cert_issue","subject":"mydomain","altnames":["mydomain"]} 2021-02-21 21:21:38.025 - error: admin.0 (31084) [LE] {"length":0} 2021-02-21 21:21:38.026 - error: admin.0 (31084) [LE] {"length":0}@techmo Für mich scheint es, dass du Admin mit
https://mydomain/aufrufst anstatt mithttps://mydomain.net/. Da greenlock den Domainnamen überprüft und damit das Zertifikat auswählt, wird das nicht funktionieren. Du musst die Admin-Seite exakt mit demselben Domainnamen aufrufen. Wenn du das lokal nicht kannst oder willst, dann verwende lokal eine zweite Admin Instanz ohne HTTPS. -
@techmo Für mich scheint es, dass du Admin mit
https://mydomain/aufrufst anstatt mithttps://mydomain.net/. Da greenlock den Domainnamen überprüft und damit das Zertifikat auswählt, wird das nicht funktionieren. Du musst die Admin-Seite exakt mit demselben Domainnamen aufrufen. Wenn du das lokal nicht kannst oder willst, dann verwende lokal eine zweite Admin Instanz ohne HTTPS.Ja das habe ich bei dem Log auch gedacht, aber ich rufe immer genau die Domain auf, die auch als Domain eingetragen ist.
Deswegen frage ich mich was da los ist.Safari auf dem iPhone sagt auch noch:
Malformed HTTP Header: 'Host:mydomain.net:8081'Ging bis zur Umstellung mit dem alten js-Controller immer ohne Probleme.
-
Ja das habe ich bei dem Log auch gedacht, aber ich rufe immer genau die Domain auf, die auch als Domain eingetragen ist.
Deswegen frage ich mich was da los ist.Safari auf dem iPhone sagt auch noch:
Malformed HTTP Header: 'Host:mydomain.net:8081'Ging bis zur Umstellung mit dem alten js-Controller immer ohne Probleme.
-
@techmo Na da haben wirs schon.
Das "Neue "Letsencrypt unterstützt aktuell nur "Standard https", also Port 443
@apollon77
Jap das ist es tatsächlich.Steht das irgendwo?
8081 ist ja der StandardPort für Admin.0, deswegen läuft es bei mir dort.
Habs jezt geändert und es läuft wieder.Vielen Dank.
-
Hallo,
ich bekomme seit dem Update auf js-controller 3.2.16 ab und zu folgende Fehlermeldungen2021-02-24 15:30:43.411 - error: host.iobroker-Server Cannot save backup file /opt/iobroker/iobroker-data/objects.json.bak: ENOENT: no such file or directory, stat '/opt/iobroker/iobroker-data/objects.json'2021-02-24 16:00:36.149 - error: host.iobroker-Server Cannot save backup file /opt/iobroker/iobroker-data/objects.json.bak: ENOENT: no such file or directory, rename '/opt/iobroker/iobroker-data/objects.json' -> '/opt/iobroker/iobroker-data/objects.json.bak'Backups der Datei werden aber gemacht


hatte das Update schon Freitag gemacht und auch diese Fehlermeldungen bekommen, hab es dann Gestern noch mal neu gemacht, ist aber immer noch das selbe mit denn Fehlermeldungen.
Aufgefallen ist mir das sich die Datei Attribute geändert haben vonobjects.json.bak, objects.json, states.json.bak, states.json
unter js-controller 3.1.6 wahren die noch
Datei Attribute 674
-rw-rwxr--und unter js-controller 3.2.16 sind die
Datei Attribute 664
-rw-rw-r--habe dann nochmal iobroker fix ausgefürt, Datei Attribute wurden auch geändert
Datei Attribute 674
-rw-rwxr--nach dem Start von iobroker haben sich die Datei Attribute aber wieder geändert
Datei Attribute 664
-rw-rw-r--das hab ich dann auch mal getestet
pi@iobroker:~ $ cd /opt/iobroker/iobroker-data pi@iobroker:/opt/iobroker/iobroker-data $ sudo chmod -v 674 objects.json der Modus von 'objects.json' wurde von 0664 (rw-rw-r--) in 0674 (rw-rwxr--) geändert pi@iobroker:/opt/iobroker/iobroker-data $ sudo chmod -v 674 objects.json.bak der Modus von 'objects.json.bak' wurde von 0664 (rw-rw-r--) in 0674 (rw-rwxr--) geändert pi@iobroker:/opt/iobroker/iobroker-data $ sudo chmod -v 674 states.json der Modus von 'states.json' wurde von 0664 (rw-rw-r--) in 0674 (rw-rwxr--) geändert pi@iobroker:/opt/iobroker/iobroker-data $ sudo chmod -v 674 states.json.bak der Modus von 'states.json.bak' wurde von 0664 (rw-rw-r--) in 0674 (rw-rwxr--) geändert pi@iobroker:/opt/iobroker/iobroker-data $nur ändern sich die Datei Attribute wieder wenn die Dateien sich ändern
und unter /opt/iobroker/iobroker-data/backup-objects haben sich die Datei Attribute auch geändertRaspbeery 4
nodejs 12.20.2
node 12.20.2
npm 6.14.11
js-controller 3.2.16
admin 4.2.1
javascript 4.8.4Update habe ich wie folgt gemacht
cd /opt/iobroker
iobroker stop
ps auxww|grep io
iobroker update
iobroker upgrade self
iobroker fix
iobroker startalles ohne Fehler
und nu hab ich keine idee mehr
Gruß Michael
Edit: log angehangen
log0.txt -
Hallo,
ich bekomme seit dem Update auf js-controller 3.2.16 ab und zu folgende Fehlermeldungen2021-02-24 15:30:43.411 - error: host.iobroker-Server Cannot save backup file /opt/iobroker/iobroker-data/objects.json.bak: ENOENT: no such file or directory, stat '/opt/iobroker/iobroker-data/objects.json'2021-02-24 16:00:36.149 - error: host.iobroker-Server Cannot save backup file /opt/iobroker/iobroker-data/objects.json.bak: ENOENT: no such file or directory, rename '/opt/iobroker/iobroker-data/objects.json' -> '/opt/iobroker/iobroker-data/objects.json.bak'Backups der Datei werden aber gemacht


hatte das Update schon Freitag gemacht und auch diese Fehlermeldungen bekommen, hab es dann Gestern noch mal neu gemacht, ist aber immer noch das selbe mit denn Fehlermeldungen.
Aufgefallen ist mir das sich die Datei Attribute geändert haben vonobjects.json.bak, objects.json, states.json.bak, states.json
unter js-controller 3.1.6 wahren die noch
Datei Attribute 674
-rw-rwxr--und unter js-controller 3.2.16 sind die
Datei Attribute 664
-rw-rw-r--habe dann nochmal iobroker fix ausgefürt, Datei Attribute wurden auch geändert
Datei Attribute 674
-rw-rwxr--nach dem Start von iobroker haben sich die Datei Attribute aber wieder geändert
Datei Attribute 664
-rw-rw-r--das hab ich dann auch mal getestet
pi@iobroker:~ $ cd /opt/iobroker/iobroker-data pi@iobroker:/opt/iobroker/iobroker-data $ sudo chmod -v 674 objects.json der Modus von 'objects.json' wurde von 0664 (rw-rw-r--) in 0674 (rw-rwxr--) geändert pi@iobroker:/opt/iobroker/iobroker-data $ sudo chmod -v 674 objects.json.bak der Modus von 'objects.json.bak' wurde von 0664 (rw-rw-r--) in 0674 (rw-rwxr--) geändert pi@iobroker:/opt/iobroker/iobroker-data $ sudo chmod -v 674 states.json der Modus von 'states.json' wurde von 0664 (rw-rw-r--) in 0674 (rw-rwxr--) geändert pi@iobroker:/opt/iobroker/iobroker-data $ sudo chmod -v 674 states.json.bak der Modus von 'states.json.bak' wurde von 0664 (rw-rw-r--) in 0674 (rw-rwxr--) geändert pi@iobroker:/opt/iobroker/iobroker-data $nur ändern sich die Datei Attribute wieder wenn die Dateien sich ändern
und unter /opt/iobroker/iobroker-data/backup-objects haben sich die Datei Attribute auch geändertRaspbeery 4
nodejs 12.20.2
node 12.20.2
npm 6.14.11
js-controller 3.2.16
admin 4.2.1
javascript 4.8.4Update habe ich wie folgt gemacht
cd /opt/iobroker
iobroker stop
ps auxww|grep io
iobroker update
iobroker upgrade self
iobroker fix
iobroker startalles ohne Fehler
und nu hab ich keine idee mehr
Gruß Michael
Edit: log angehangen
log0.txt@michi68 sagte in js-controller 3.2 jetzt im STABLE!:
.json
sind keine ausführbaren Dateien. Darüber hinaus sind die Dateien per ACL angelegt, dir fehlen also Informationen über die Attribute.
Jag da mal wieder den Fixer drüber.
iobroker fix -
@michi68 sagte in js-controller 3.2 jetzt im STABLE!:
.json
sind keine ausführbaren Dateien. Darüber hinaus sind die Dateien per ACL angelegt, dir fehlen also Informationen über die Attribute.
Jag da mal wieder den Fixer drüber.
iobroker fix@thomas-braun
iobroker fix gemacht
nach dem start dann wieder

2021-02-24 22:44:49.947 - error: host.iobroker-Server Cannot save backup file /opt/iobroker/iobroker-data/objects.json.bak: ENOENT: no such file or directory, stat '/opt/iobroker/iobroker-data/objects.json' -
@thomas-braun
iobroker fix gemacht
nach dem start dann wieder

2021-02-24 22:44:49.947 - error: host.iobroker-Server Cannot save backup file /opt/iobroker/iobroker-data/objects.json.bak: ENOENT: no such file or directory, stat '/opt/iobroker/iobroker-data/objects.json'pi@raspberrypi:~ $ getfacl /opt/iobroker/iobroker-data/iobroker.json getfacl: Entferne führende '/' von absoluten Pfadnamen # file: opt/iobroker/iobroker-data/iobroker.json # owner: iobroker # group: iobroker user::rw- group::r-- group:iobroker:rwx mask::rwx other::r--Gut, bei der Gruppe iobroker ruder ich zurück, iobroker hat das x-bit.
-
@thomas-braun
iobroker fix gemacht
nach dem start dann wieder

2021-02-24 22:44:49.947 - error: host.iobroker-Server Cannot save backup file /opt/iobroker/iobroker-data/objects.json.bak: ENOENT: no such file or directory, stat '/opt/iobroker/iobroker-data/objects.json'@michi68 Ist das auf ner synology? Da gabs ja weiter oben ähnliche berichte ... ich weiss aber nicht was das issue sein soll ...
Das interessante ist auch das beim "nach dem Start"-Screenshot die objects.bak fehlt.
EDIT: Ok ich habs gefunden ... Der Fehler bedeutet (meeh unglücklich formuliert) erstmal nur das kein objects.json existiert und daher dieses auch nicht in "objects.json.bak" umbenannt werden kann. Es wird danach trotzdem das objects.json neu geschrieben . Beim nächsten Speichern sollte an sich dann wieder alles klappen und der Fehler nicht nochmals vorkommen.
Falls doch ist die Frage was da bei Dir passiert das das File verschwindet
-
@michi68 Ist das auf ner synology? Da gabs ja weiter oben ähnliche berichte ... ich weiss aber nicht was das issue sein soll ...
Das interessante ist auch das beim "nach dem Start"-Screenshot die objects.bak fehlt.
EDIT: Ok ich habs gefunden ... Der Fehler bedeutet (meeh unglücklich formuliert) erstmal nur das kein objects.json existiert und daher dieses auch nicht in "objects.json.bak" umbenannt werden kann. Es wird danach trotzdem das objects.json neu geschrieben . Beim nächsten Speichern sollte an sich dann wieder alles klappen und der Fehler nicht nochmals vorkommen.
Falls doch ist die Frage was da bei Dir passiert das das File verschwindet
@apollon77
jo fehlt hatte ich auch noch nicht bemerkt, :grin: ist aber wieder da

ist Raspbian buster

-
ich hatte auch mal die objects.json, states.json gelöscht und aus denn .gz wiederhergestellt, geht.
Also Backups werden gemacht nur ab und zu meckert er das er die objects.json.bak nicht findet
dann kann ich die aber schon mal verstehen2021-02-24 16:00:36.149 - error: host.iobroker-Server Cannot save backup file /opt/iobroker/iobroker-data/objects.json.bak: ENOENT: no such file or directory, rename '/opt/iobroker/iobroker-data/objects.json' -> '/opt/iobroker/iobroker-data/objects.json.bak' -
@marty56 Naja vor heute hast du den ioBroker ja die Tage auch neu gestartet. Und irgendwann danach ging das los. Frage ist wann das war und was da so im log Stand.
@apollon77 Nach Neustart bisher nicht mehr aufgetreten
-
ich hatte auch mal die objects.json, states.json gelöscht und aus denn .gz wiederhergestellt, geht.
Also Backups werden gemacht nur ab und zu meckert er das er die objects.json.bak nicht findet
dann kann ich die aber schon mal verstehen2021-02-24 16:00:36.149 - error: host.iobroker-Server Cannot save backup file /opt/iobroker/iobroker-data/objects.json.bak: ENOENT: no such file or directory, rename '/opt/iobroker/iobroker-data/objects.json' -> '/opt/iobroker/iobroker-data/objects.json.bak'@michi68 nee das ist es ja. Er meckert das keine objects.json da ist. Heißt davor hätte er die wegkopiert aber nicht neu geschrieben. Dann müsste von davor noch eine zweite/andere logzeile gewesen sein wo er sagt das er die objects.Jain nicht hat schreiben können. Sonst kann der Fall an sich nicht auftreten
-
@michi68 nee das ist es ja. Er meckert das keine objects.json da ist. Heißt davor hätte er die wegkopiert aber nicht neu geschrieben. Dann müsste von davor noch eine zweite/andere logzeile gewesen sein wo er sagt das er die objects.Jain nicht hat schreiben können. Sonst kann der Fall an sich nicht auftreten
@apollon77
Hallo,
sorry das ich jetzt erst antworte, war Heute etwas im Stress.
Ja aber beim Start meckert er doch erst mal das die objects.json.bak nicht da ist und kopiert die objects.json die er dann in objects.json.bak umbennent oder sehe ich das falsch?2021-02-24 16:00:36.149 - error: host.iobroker-Server Cannot save backup file /opt/iobroker/iobroker-data/objects.json.bak: ENOENT: no such file or directory, rename '/opt/iobroker/iobroker-data/objects.json' -> '/opt/iobroker/iobroker-data/objects.json.bak'und dann im Betrieb fehlt ab und zu die objects.json die er nicht zur objects.json.bak kopieren kann, ich bin verwirrt
host.iobroker-Server 2021-02-25 22:00:59.000 error Cannot save backup file /opt/iobroker/iobroker-data/objects.json.bak: ENOENT: no such file or directory, stat '/opt/iobroker/iobroker-data/objects.json'aber davon abgesehen hat er die Macke immer noch :thinking_face: :grin:
-
@apollon77
Hallo,
sorry das ich jetzt erst antworte, war Heute etwas im Stress.
Ja aber beim Start meckert er doch erst mal das die objects.json.bak nicht da ist und kopiert die objects.json die er dann in objects.json.bak umbennent oder sehe ich das falsch?2021-02-24 16:00:36.149 - error: host.iobroker-Server Cannot save backup file /opt/iobroker/iobroker-data/objects.json.bak: ENOENT: no such file or directory, rename '/opt/iobroker/iobroker-data/objects.json' -> '/opt/iobroker/iobroker-data/objects.json.bak'und dann im Betrieb fehlt ab und zu die objects.json die er nicht zur objects.json.bak kopieren kann, ich bin verwirrt
host.iobroker-Server 2021-02-25 22:00:59.000 error Cannot save backup file /opt/iobroker/iobroker-data/objects.json.bak: ENOENT: no such file or directory, stat '/opt/iobroker/iobroker-data/objects.json'aber davon abgesehen hat er die Macke immer noch :thinking_face: :grin:
-
Hallo ioBroker-Community,
mit etwas zeitlicher Verspätung, dafür aber um so besser, kommt heute der neue js-controller 3.2 (Releasename "Grace") ins Stable Repository (sollte im laufe des Abends bei allen auftauchen). Ein großer Dank geht an alle User die in der letzten Zeit diese Version bereits im Beta- und Latest-Test getestet und Probleme und Fehler zur Behebung gemeldet haben!
Node.js Versions-Anforderungen
Die unterstützten Node.js Versionen bleiben in diesem Update gleich: 10.x, 12.x und auch 14.x werden offiziell unterstützt. Aufgrund der übergreifenden Adapter-Kompatibilität bleibt die empfohlene Node.js Version für ioBroker aktuell weiterhin auf 12.x. Falls jemand wirklich mit Node.js 15.x experimentieren will, dann bitte AUSSCHLIESSLICH mit npm 6 !! (die npm Leute haben in npm 7 wieder Dinge geändert, die wir noch untersuchen)
Bitte beachtet weiterhin bei Node.js Updates die Anleitung im Forum unter https://forum.iobroker.net/post/266625Informationen zur Version
Neben einigen Features haben wir unter der Haube weiter aufgeräumt und sehr viel modernisiert und vereinheitlicht.
Auch daran den Wildwuchs in der Umsetzung einiger Adapter etwas einzugrenzen wurde weiter gearbeitet, was ggf. zu neuen Log-Meldungen für bestimmte Fälle führt. Bitte unterstützt hier wieder und legt bei den relevanten Adaptern im GitHub Issues an, damit diese Dinge gefixt werden können.Besonders zu erwähnen ist die Grundlage für das neue Benachrichtigungssystem (kommt dann in einem Admin-Update) und die Reaktivierung von Let's Encrypt zur automatischen Zertifikatsaktualisierung.
Detailliertere Informationen zu allen Änderungen und Features findet Ihr weiter unten und im Changelog. Ich hoffe auch diesmal auf Eure tatkräftige Unterstützung, sodass der Latest-Release dann genau so reibungslos verläuft wie bei den letzten Versionen.In Summe sind in diese Version über 750 commits eingeflossen. Dafür bedanke mich diesmal besonders bei foxriver76, AlCalzone und natürlich Bluefox und auch ein paar weiteren Entwicklern für die aktive Mitarbeit an dieser Version!
Der js-controller 3.2 ist generell kompatibel mit allen bestehenden ioBroker-Systemen. Was es bei Multihost Systemen zu beachten gibt findet Ihr etwas weiter unten! Ein Update von der 2.0/2.1/2.2 ist problemlos möglich. Nur die Node.js Version muss jetzt mindestens 10.x sein, wie oben bereits ausgeführt. Wer überlegt die Node.js Version anzuheben bitte weiter unten im Abschnitt "Was ist zu testen" lesen 🙂
Es gibt aktuell keine inkompatiblem Adapter, aber einige Empfehlungen weiter unten.
Installation
VOR der Installation
Wie bei jedem Test dieser Art: Bitte macht ein Backup!
iobroker backupbzw kopieren desiobroker-dataVerzeichnisses reichen an sich aus. Bitte nicht das node_modules Verzeichnis einfach kopieren, da sonst symbolische Links kaputt gehen können, was zu größeren Problemen danach führt. Die alte Version des js-controller kann im Notfall einfach wieder pernpm install iobroker.js-controller@versioninstalliert werden und sollte alles wieder herstellen.Nötige Adapter-Aktualisierungen
Aktuell sind keine Inkompatibilitäten bekannt, damit allerdings Let's encrypt wieder funktioniert benötigt es einige Adapter in "Latest" Versionen von mindestens:
- ioBroker.lovelace 1.4.1 oder höher
- ioBroker.simple-api 2.5.2 oder höher
- ioBroker.socketio 3.1.3 oder höher
- ioBroker.telegram 1.7.0 oder höher
- ioBroker.web 3.2.2 oder höher
- ioBroker.admin 4.2.1 oder höher
Es werden aber, wie oben ausgeführt, einige Adapter ggf Warnungen ins Log schreiben. Falls das Problematisch ist ist aktuell die einzige Option das Loglevel der Instanz auf "Error" zu setzen.
Achtung: Multihost-Systeme Reihenfolgen beachten!
Bei einem Multi-Host-System, welches auf js-controller 2.2 oder 3.1 läuft ist es beim Update auf Version 3.2 nötig, zuerst das Master-System zu aktualisieren. Der Master muss dann wieder gestartet werden. Die Slaves werden danach aktualisiert!
Bei Updates von Master/Slave-Systemen mit js-controller 1.5 oder früher auf die 3.2 müssen zwingend zuerst die Slaves und der Master als letztes aktualisiert werden. Beim Slave Update muss der alte master aber noch laufen. Die Slaves bleiben nach dem Update offline und können sich nicht zum Master verbinden und werden erst wieder funktionieren wenn auch der Master auf die 3.2 aktualisiert wurde!
Windows
Auf Systemen, die mit dem neuen Windows Installer eingerichtet wurden weiss ich gerade nicht wie der aktuelle Prozess ist, da der Windows Installer nicht ganz aktuell ist. Bitte hier berichten dann kann ich ergänzen.
Für alle "alten manuellen" Installationen gilt
- ioBroker muss gestoppt sein.
- Vor dem Update bitte prüfen das keine Prozesse mehr laufen
iobroker updateiobroker upgrade self- ioBroker starten
Linux
- ioBroker stoppen (
iobroker stop) - prüfen das keine Prozesse (Adapter, Backups) mehr laufen (
ps auxww|grep iound auchps auxww|grep backup). Es passiert manchmal das trotz dem Stoppen noch Zombies zurückbleiben iobroker update- Wie üblich wird das Update dann per
iobroker upgrade selfausgeführt. - ioBroker starten (
iobroker start)
Bei Fehlern:
Wenn bei der Installation Fehler wegen fehlender Zugriffsrechte auftreten, am besten den Installation-Fixer (iobroker fixwer schon einen js-controller 2.x oder höher hat, alternativ weiterhin manuell via curl -sL https://iobroker.net/fix.sh | bash -) nutzen und die Installation wiederholen.
Falls es auch danach noch Fehler gibt, bitte die Installation erneut mittelssudo -H -u iobroker npm install iobroker.js-controllerversuchen. Bitte berichtet solche Fälle hier im Thread.NACH der Installation
Nach der Installation den ioBroker wieder starten (z.B. mittels
iobroker start).Wenn alles klappt merkt Ihr ausser der höheren Versionsnummer in der Host-Ansicht im Admin keinen Unterschied. Alles funktioniert weiterhin wie vorher. Alle Adapterinstanzen starten und funktionieren. Wenn das so ist hat alles geklappt.
Falls im Log Warn-Meldungen auftauchen mit dem Hinweis diese an den Entwickler zu senden, dann bitte schauen welcher Adapter es ist und entsprechend dort Issues bitte anlegen!
Mit
iobroker helpwird eine Liste der möglichen Kommandozeilen-Kommandos angezeigt, die mit Version 2.0 um einige Befehle länger geworden ist. Es geht jetzt auch Kommandospezifisch Hilfe zu erhalten (iobroker upgrade --help)
Was hat sich geändert, was besonders ansehen/beachten?
Neben einiger weiterer Bugfixes gibt es folgende Änderungen und Fixes zu erwähnen:
- generell siehe Changelog, speziell auch für Features
- Let's Encrypt sollte wieder tun. Minimum Adapterversionen dazu siehe weiter oben!
- Einige Adapter werden Warnungen ausgeben wenn State-Werte gesetzt werden VOR dem Anlegen von Objekten. Bitte bei den Adapter-Repos melden
Speziell die Entwickler sollten bitte die genannten Deprecations anschauen und beachten
Wie bereits gesagt, viele Änderungen fanden hinter den Kulissen statt. Hier für Interessierte als Spoiler eine Zusammenfassung:
Generell ist zu prüfen, ob alles noch so funktioniert wie vorher auch. Das ist das wichtigste!
Wie Fehler melden?
Wer sich unsicher ist, ob ein Fehler vorliegt, sollte am besten hier im Thread das Problem beschreiben. So können wir alle versuchen, das Problem nachzuvollziehen und ggf. einzugrenzen.
Sobald ein Fehler auftritt der in einer Fehlermeldung oder einen Crash mit Fehlerdetails im Log oder auf Kommandozeile endet, dann dazu am besten direkt ein GitHub-Issue im js-controller Projekt öffnen und zusätzlich hier im Thread posten. Je detaillierter die Angaben im Issue sind (genaue Fehlermeldungen/Logs, Infos zur OS- und Node.js-Umgebung sowie genaue Schritte zur Reproduktion des Problems), umso schneller können wir Fehler einkreisen und beheben.
Wir wünschen allen viel Spaß beim Testen und vielen Dank für Eure Unterstützung!
Ingo
@apollon77 sagte in js-controller 3.2 jetzt im STABLE!:
Windows
Auf Systemen, die mit dem neuen Windows Installer eingerichtet wurden weiss ich gerade nicht wie der aktuelle Prozess ist, da der Windows Installer nicht ganz aktuell ist. Bitte hier berichten dann kann ich ergänzen.
Für alle "alten manuellen" Installationen gilt
- ioBroker muss gestoppt sein.
- Vor dem Update bitte prüfen das keine Prozesse mehr laufen
iobroker updateiobroker upgrade self- ioBroker starten
@sigi234 hat mich ermutigt es genau so wie oben beschrieben zu tun und auch bei mir hat es so funktioniert. Mein Win-System wurde mit dem Installer von @Stabilostick aufgesetzt und mit dem Workaround von @AlCalzone upgedatet.
Bin jetzt auf js-controller 3.2.16, node-js v10.17.0, npm v6.11.3 und soweit scheint alles zu funktionieren. -
Danke an die Entwickler und Tester!
Bis auf ein paar komische Fehlermeldungen (die wohl nichts mit dem Update zu tan haben?) ist es problemlos durchgelaufen.raspberrypi
Platform linux
Betriebssystem linux
Architektur arm
CPUs 4
Geschwindigkeit 700 MHz
Modell ARMv7 Processor rev 3 (v7l)
RAM 3.74 GB
System Betriebszeit 70 T. 22:58:00
Node.js v12.20.2 (Es gibt eine neuere Version: v12.21.0)
NPM 6.14.11
Festplatte Größe 14.09 GB
Festplatte frei 10.7 GB
Anzahl der Adapter 331
Betriebszeit 00:06:00
Aktive Instanzen 13
Hostname raspberrypipi@raspberrypi:~ $ iobroker upgrade self Update js-controller from @3.1.6 to @3.2.16 NPM version: 6.14.11 npm install iobroker.js-controller@3.2.16 --loglevel error --unsafe-perm --prefi x "/opt/iobroker" (System call) Package pangocairo was not found in the pkg-config search path. Perhaps you should add the directory containing `pangocairo.pc' to the PKG_CONFIG_PATH environment variable No package 'pangocairo' found gyp: Call to 'pkg-config pangocairo --libs' returned exit status 1 while in binding.gyp. while trying to load binding.gyp gyp ERR! configure error gyp ERR! stack Error: `gyp` failed with exit code: 1 gyp ERR! stack at ChildProcess.onCpExit (/usr/lib/node_modules/npm/node_modules/node-gyp/lib/configure.js:351:16) gyp ERR! stack at ChildProcess.emit (events.js:314:20) gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:276:12) gyp ERR! System Linux 5.4.79-v7l+ gyp ERR! command "/usr/bin/node" "/usr/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "configure" "--fallback-to-build" "--module=/opt/iobroker/node_modules/canvas/build/Release/canvas.node" "--module_name=canvas" "--module_path=/opt/iobroker/node_modules/canvas/build/Release" "--napi_version=7" "--node_abi_napi=napi" "--napi_build_version=0" "--node_napi_label=node-v72" gyp ERR! cwd /opt/iobroker/node_modules/canvas gyp ERR! node -v v12.20.2 gyp ERR! node-gyp -v v5.1.0 gyp ERR! not ok node-pre-gyp ERR! build error node-pre-gyp ERR! stack Error: Failed to execute '/usr/bin/node /usr/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js configure --fallback-to-build --module=/opt/iobroker/node_modules/canvas/build/Release/canvas.node --module_name=canvas --module_path=/opt/iobroker/node_modules/canvas/build/Release --napi_version=7 --node_abi_napi=napi --napi_build_version=0 --node_napi_label=node-v72' (1) node-pre-gyp ERR! stack at ChildProcess.<anonymous> (/opt/iobroker/node_modules/node-pre-gyp/lib/util/compile.js:83:29) node-pre-gyp ERR! stack at ChildProcess.emit (events.js:314:20) node-pre-gyp ERR! stack at maybeClose (internal/child_process.js:1022:16) node-pre-gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:287:5) node-pre-gyp ERR! System Linux 5.4.79-v7l+ node-pre-gyp ERR! command "/usr/bin/node" "/opt/iobroker/node_modules/.bin/node-pre-gyp" "install" "--fallback-to-build" node-pre-gyp ERR! cwd /opt/iobroker/node_modules/canvas node-pre-gyp ERR! node -v v12.20.2 node-pre-gyp ERR! node-pre-gyp -v v0.11.0 node-pre-gyp ERR! not ok Starting node restart.js -
Danke an die Entwickler und Tester!
Bis auf ein paar komische Fehlermeldungen (die wohl nichts mit dem Update zu tan haben?) ist es problemlos durchgelaufen.raspberrypi
Platform linux
Betriebssystem linux
Architektur arm
CPUs 4
Geschwindigkeit 700 MHz
Modell ARMv7 Processor rev 3 (v7l)
RAM 3.74 GB
System Betriebszeit 70 T. 22:58:00
Node.js v12.20.2 (Es gibt eine neuere Version: v12.21.0)
NPM 6.14.11
Festplatte Größe 14.09 GB
Festplatte frei 10.7 GB
Anzahl der Adapter 331
Betriebszeit 00:06:00
Aktive Instanzen 13
Hostname raspberrypipi@raspberrypi:~ $ iobroker upgrade self Update js-controller from @3.1.6 to @3.2.16 NPM version: 6.14.11 npm install iobroker.js-controller@3.2.16 --loglevel error --unsafe-perm --prefi x "/opt/iobroker" (System call) Package pangocairo was not found in the pkg-config search path. Perhaps you should add the directory containing `pangocairo.pc' to the PKG_CONFIG_PATH environment variable No package 'pangocairo' found gyp: Call to 'pkg-config pangocairo --libs' returned exit status 1 while in binding.gyp. while trying to load binding.gyp gyp ERR! configure error gyp ERR! stack Error: `gyp` failed with exit code: 1 gyp ERR! stack at ChildProcess.onCpExit (/usr/lib/node_modules/npm/node_modules/node-gyp/lib/configure.js:351:16) gyp ERR! stack at ChildProcess.emit (events.js:314:20) gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:276:12) gyp ERR! System Linux 5.4.79-v7l+ gyp ERR! command "/usr/bin/node" "/usr/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "configure" "--fallback-to-build" "--module=/opt/iobroker/node_modules/canvas/build/Release/canvas.node" "--module_name=canvas" "--module_path=/opt/iobroker/node_modules/canvas/build/Release" "--napi_version=7" "--node_abi_napi=napi" "--napi_build_version=0" "--node_napi_label=node-v72" gyp ERR! cwd /opt/iobroker/node_modules/canvas gyp ERR! node -v v12.20.2 gyp ERR! node-gyp -v v5.1.0 gyp ERR! not ok node-pre-gyp ERR! build error node-pre-gyp ERR! stack Error: Failed to execute '/usr/bin/node /usr/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js configure --fallback-to-build --module=/opt/iobroker/node_modules/canvas/build/Release/canvas.node --module_name=canvas --module_path=/opt/iobroker/node_modules/canvas/build/Release --napi_version=7 --node_abi_napi=napi --napi_build_version=0 --node_napi_label=node-v72' (1) node-pre-gyp ERR! stack at ChildProcess.<anonymous> (/opt/iobroker/node_modules/node-pre-gyp/lib/util/compile.js:83:29) node-pre-gyp ERR! stack at ChildProcess.emit (events.js:314:20) node-pre-gyp ERR! stack at maybeClose (internal/child_process.js:1022:16) node-pre-gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:287:5) node-pre-gyp ERR! System Linux 5.4.79-v7l+ node-pre-gyp ERR! command "/usr/bin/node" "/opt/iobroker/node_modules/.bin/node-pre-gyp" "install" "--fallback-to-build" node-pre-gyp ERR! cwd /opt/iobroker/node_modules/canvas node-pre-gyp ERR! node -v v12.20.2 node-pre-gyp ERR! node-pre-gyp -v v0.11.0 node-pre-gyp ERR! not ok Starting node restart.js@jack01
Zu den 'komischen' Meldungen:sudo apt update sudo apt install build-essential libcairo2-dev libpango1.0-dev libjpeg-dev libgif-dev librsvg2-dev libpixman-1-dev sudo apt dist-upgrade sudo rebootDann sollten die künftig nicht mehr auftauchen.