NEWS
Keine Änderungen in Scipts möglich
-
Vorweg: Suchfunktion hat mich nicht weitergebracht.
Problem: Wenn ich eines meiner Scripts versuche zu ändern, und sei die Änderung noch so klein, bekomme ich nach dem Speichern die Meldung das die Instanz nicht läuft. In der Instanzüberischt werden ALLE Instanzen als inaktiv angezeigt, der ioBroker reagiert wenige Minuten überhaupt nicht und wenn er dann wieder da ist, sind die Änderungen im Script nicht übernommen.
Ich habe aktuell keine Idee mehr, wo ich anfangen soll nach dem Fehler zu suchen und muss hier gerade mal nach Hilfe schreien.
Zur Info: Mein ioBroker läuft in einer Proxmox-VM. Diese habe ich kürzlich aus einem Backup von einem Proxmoxserver auf einem neuen Proxmoxserver importiert. Ich glaube das Problem besteht seitdem. Der Versuch den Javascript Adapter zu entfernen und neu zu installieren war schonmal nicht erfolgreich.
Eine Neuinstallation auf einer weiteren VM mit dem Wiederherstellen eines Backups mittels Backitup war ebenfalls erfolglos.
Sonst läuft alles wie vorher, nur kann ich keine Scripte neu erstellen oder verändern und das macht mich verrückt.Etwas anderes bereitet mir auf Kopfzerbrechen. Ich bekomme im Log folgende Meldung:
javascript.0 2023-08-06 16:45:00.015 info script.js.common.IoniqDatenPeriodischLesen: Own states (javascript.0.scriptEnabled.common.IoniqGPSlesen) should not be used in javascript.X.scriptEnabled.*! Please move the states to 0_userdata.0.* javascript.0 2023-08-06 16:45:00.013 info script.js.common.IoniqDatenPeriodischLesen: Own states (javascript.0.scriptEnabled.common.IoniqEVNotifyLesen) should not be used in javascript.X.scriptEnabled.*! Please move the states to 0_userdata.0.* javascript.0 2023-08-06 16:45:00.011 info script.js.common.IoniqDatenPeriodischLesen: Own states (javascript.0.scriptEnabled.common.IoniqSchwellenwertLesen) should not be used in javascript.X.scriptEnabled.*! Please move the states to 0_userdata.0.* javascript.0 2023-08-06 16:45:00.008 info script.js.common.IoniqDatenPeriodischLesen: Own states (javascript.0.scriptEnabled.common.IoniqAkkuLesen) should not be used in javascript.X.scriptEnabled.*! Please move the states to 0_userdata.0.*
In javascript.0.scriptEnabled.common.IoniqXXX habe ich keine eigenen States angelegt. In besagtem Pfad habe ich keine States angelegt, dort sind nur die beim Script erstellen automatisch angelegten Daten.
Hat irgendwer eine Idee und kann mich mit der Nase drauf schubsen?
-
@berndroid
hat du in der Javascript Instanz etwas bei mirror eingetragen? -
@ticaki Bei mir ist die Oberfläche deutsch, darum habe ich jetzt nen Moment suchen müssen.
Nein, bei "Spiegeln von Skripten in den Dateipfad" steht nichts drin.
-
@berndroid
Ich hab keine Lösung kann nur sagen was ich probieren würde,auf der Konsole
iobroker fix
kann ich ein neues Skript erstellen, kann ich das speichern.
Wenn nein:
kann ich eine weitere Javascript Instanz anlegen, kann ich dort erstellen und speichern.
Wenn nein, was passiert wenn ich den Javascript Adapter mit gelöschtem javascript.0 Zweig starte (vor dem löschen beenden)
hast ja ne kopie der Script hoffe ich?
Dann würde ich auch mal die Script löschen und dann testen.
-
@ticaki Ok, danke.
Der fix hat nichts gebracht, Neue Instanz muss mal testen.Edit: Ja, Backups von allem sind vorhanden. Scripte gelöscht und neu anlegen funktioniert nicht.
-
@berndroid dann mal von Anfang, dia Ausgabe von
iob diag
@berndroid sagte in Keine Änderungen in Scipts möglich:
Nein, bei "Spiegeln von Skripten in den Dateipfad" steht nichts drin.
da sollte aber etwas stehen, z.b.
/home/mirrorscript
-
@crunchip
Ausgabe von iob diag:======================= SUMMARY ======================= v.2023-04-16 Operatingsystem: Debian GNU/Linux 10 (buster) Kernel: 4.19.0-25-amd64 Installation: qemu Timezone: Europe/Berlin (CEST, +0200) User-ID: 0 X-Server: false Boot Target: graphical.target Pending OS-Updates: 0 Pending iob updates: 0 Nodejs-Installation: /usr/bin/nodejs v16.20.1 /usr/bin/node v16.20.1 /usr/bin/npm 8.19.4 /usr/bin/npx 8.19.4 Recommended versions are nodejs 18.x.y and npm 9.x.y Your nodejs installation is correct MEMORY: total used free shared buff/cache available Mem: 16G 2.9G 8.7G 18M 4.4G 12G Swap: 0B 0B 0B Total: 16G 2.9G 8.7G Active iob-Instances: 22 Active repo(s): Stable (default) ioBroker Core: js-controller 4.0.24 admin 6.6.5 ioBroker Status: iobroker is running on this host. Objects type: jsonl States type: jsonl Status admin and web instance: + system.adapter.admin.0 : admin : iobroker - enabled, port: 8081, bind: 192.168.10.1, run as: admin system.adapter.web.0 : web : iobroker - disabled, port: 8082, bind: 0.0.0.0, run as: admin Objects: 48705 States: 40602 Size of iob-Database: 61M /opt/iobroker/iobroker-data/objects.jsonl 31M /opt/iobroker/iobroker-data/objects.json.migrated 31M /opt/iobroker/iobroker-data/objects.json.bak.migrated 30M /opt/iobroker/iobroker-data/states.jsonl 7.9M /opt/iobroker/iobroker-data/states.json.migrated 7.9M /opt/iobroker/iobroker-data/states.json.bak.migrated =================== END OF SUMMARY ====================
-
@berndroid sagte in Keine Änderungen in Scipts möglich:
User-ID: 0
Immer wieder grüßt das root-Tier...
NICHT als root herumhampeln und dein Buster ist auch tot.
Installier da einen noch unterstützten Nachfolger.Vermutlich hast du dir da per root-Gehampel die Rechte zerschossen. Ziemlich sicher sogar.
-
@berndroid sagte in Keine Änderungen in Scipts möglich:
Debian GNU/Linux 10 (buster)
@berndroid sagte in Keine Änderungen in Scipts möglich:
Eine Neuinstallation auf einer weiteren VM mit dem Wiederherstellen eines Backups mittels Backitup war ebenfalls erfolglos
du machst ne neue VM und installierst wieder buster????
setzt eine aktuelle auf und spiel dein backup zurück
-
Lol, nein. Blöder Fehler von mir. Falsches Terminalfenster und ich habs nicht gemerkt. Das war der alte ioBroker, sorry.
Bevor ich jetzt nochmal diag auf dem richtigen System starte, installier ich mal neu, ohne root und berichte dann.
Danke für die Erinnerung, leider vergesse ich immer wieder, dass der iob kein root mag -
Wenn man erst gar keinen root anlegt und sich immer nur als user anmeldet kann das gar nicht passieren.
Die Verwendung einer root shell ist bereits seit
JahrenJahrzehnten nicht mehr 'best practice'. -
Kleines Update:
Ich bekomme es nicht repariert. Neue Instanz zeigt den gleichen Fehler. Beim Umzug der VM scheint ne Menge kaputt gegangen zu sein.
Swappartition wurde nicht benutzt, wurde gefixt.Es wird Zeit, den Broker mal komplett neu aufzubauen, dann mit ganz sauber strukturierten Scripten mit Alias und so.
-
@berndroid sagte in Keine Änderungen in Scipts möglich:
Beim Umzug der VM scheint ne Menge kaputt gegangen zu sein.
was soll denn kaputt gehen,
wenn du eine neue VM anlegst, iobroker installierst und dein backup zurück spielst, muss dieser natürlich aufgrund nodejs v18, neu gebaut werden.
Es kann durchaus möglich sein, in speziellen Fällen, das der rebuild nicht funktioniert, diesbezüglich bekommt man im log Meldung und muss selbst Hand anlegen.Zu deinem Javascript Problem, wie eingangs erwähnt, du der Meinung bist, das dies erst aufgrund eines Umzugs entstanden ist, läuft möglicherweise ein script nicht korrekt(Ip Adresse irgendwo in Verwendung?)