NEWS
Server Cannot start inMem-objects on port 9001
-
@haselchen sagte in Server Cannot start inMem-objects on port 9001:
Wenn ich das noch in Erinnerung habe kann er auf die JSON nicht zugreifen .
@alcalzone sagte in Server Cannot start inMem-objects on port 9001:
@wendy2702 Gute Frage. Ein Versuch wäre es
objects.jsonl.lock
undstates.jsonl.lock
(beides Verzeichnisse in/opt/iobroker/iobroker-data
) zu löschen und schauen ob sie wieder kommen. Wenn nicht, sollte ioBroker eigentlich auch starten. -
Wenn ich das noch in Erinnerung habe kann er auf die JSON nicht zugreifen .
Benenne sie mal um und starte neu.
Normal sollte er eine neue anlegen .Habe ich gemacht, hat beim start auch eine neue angelegt. aber trotzdem startet der iobroker weiterhin nicht.
-
Und er ist auch beendet und du startest nicht nochmal oder so? Was steht denn im log?
Ps: mit restore ist vllt löschen der files nicht die beste Wahl. Also am besten nochmal restore machen.
-
@mlotek said in Server Cannot start inMem-objects on port 9001:
@apollon77 tut mir leid kann ich dir nicht mehr sagen. Ich habe das jetzt so gelöst, indem ich einen zweiten admin Adapter mit dem Port 8089 erstellt habe. Darüber konnte ich mich dann einloggen. Daraufhin musste / konnte ich bei jedem Adapter unter "Startreihenrolge ändern" meinen eigentlichen Host (der auch gebackuped würde) und die Instanzen dann neu starten. Zu guter Letzt den neu erstellten Admin Adapter löschen und nun läuft's. Hat mich aber locker 6 Stunden gekostet, um diesen "Workaround" heraus zu finden.
Habe jetzt auch einen zweiten Admin Adapter erstellt und kann mich jetzt auch einloggen. Kannst Du das mit der Startreihenfolge und was Du gemacht hast etwas genauer beschreiben? Und wie bekommst Du vor allem dann den Admin.0 also den eigentlichen ans laufen?
Edit:
Habs heraus gefunden. Ich muss nicht die Startreihenfolge ändern, sondern den "Host für diese Instanz". Damit wird der Adapter Admin.0 grün. Das muss ich bei allen Adaptern machen damit sie grün werden. -
@jaridian Also lief der iobroker die ganze Zeit nur Admin nicht?
Das alles beweisst nur eins: LEUTE SCHAUT INS LOG! (anschreien zum Unterstreichen des Punks in der Wiederholung beabsichtigt) bevor Ihr panisch werdet :-))
-
Aber es kann ja auch nicht richtig sein das man diesen Umweg gehen muss sobald man sein Backup einspielt?! Irgendwo wird's ja an irgendeiner Stelle "haken".
-
@mlotek Ja aber ohne Log finden wir das nicht raus. Richtig: Normal kann/sollte es nicht sein
-
@mlotek said in Server Cannot start inMem-objects on port 9001:
Aber es kann ja auch nicht richtig sein das man diesen Umweg gehen muss sobald man sein Backup einspielt?! Irgendwo wird's ja an irgendeiner Stelle "haken".
Richtig, denn vor kurzem war das einspielen des Backups kein Problem.
Panisch werde ich nicht, denn ich habe mindestens 3 SD Karten mit komplett Sicherungen.
In der Log hatte ich ja geguckt, kann aber nicht viel damit anfangen, bzw, wie es zu beheben ist ohne diesen Umweg? Worüber ich jedoch @mlotek sehr dankbar bin.
Und noch eine Frage, ist es denn bei jedem jetzt so der ein Backup einspielt? Wenn ja, dann werden in Zukunft noch viele Kommentare und Fragen auftauchen. Nicht jeder steckt in dem Thema so tief drin. -
@jaridian sagte in Server Cannot start inMem-objects on port 9001:
Und noch eine Frage, ist es denn bei jedem jetzt so der ein Backup einspielt? Wenn ja, dann werden in Zukunft noch viele Kommentare und Fragen auftauchen. Nicht jeder steckt in dem Thema so tief drin.
Das ist es ja ... wenn es so wäre, dann wäre der Thread viel voller ... das KANN nicht so sein ... ALso wenn Du ein Log von sowas noch hast dann zeig mal ...
-
Das ist es ja ... wenn es so wäre, dann wäre der Thread viel voller ... das KANN nicht so sein ... ALso wenn Du ein Log von sowas noch hast dann zeig mal ...
Ich habe doch die Fehlermeldung die in der /opt/iobroker/Log/iobrokerxxxxxx.log gepostet. Das ist der einzigste Error der in der Log stand.
Der Thread wird schon noch voller werden, macht ja nicht jeder jeden Tag ein backup. Und ich kann den Fehler jederzeit, auch mit dem Aufsetzen eines neuen Betriebssystem, reproduzieren.
Eben mit dem vorhandenen Betriebsystem ( Buster) reproduziert beim backup einspielen.
hier die aktuelle Log:
2022-04-28 23:01:45.252 - [31merror[39m: host.raspby4-Server Cannot start inMem-objects on port 9001: Failed to lock DB file "/opt/iobroker/iobroker-data/objects.jsonl"!Edit:
jetzt hat der Start des Iobrokers mal geklappt, nachdem ich folgendes ausgeführt habe:
curl -sL https://iobroker.net/fix.sh | bash -
sudo -u iobroker -H npm install iobroker.js-controller
rebootdas hatte ich aber früher auch schon mal ausgeführt, der Start des Iobrokers hatte aber bisher nicht geklappt.
P.S. Ja klar, wenn ich sage der Iobroker läuft nicht, dann meine ich natürlich der Admin läuft nicht, ohne Admin kein Iobroker start
-
@jaridian sagte in Server Cannot start inMem-objects on port 9001:
ohne Admin kein Iobroker start
aber sicher doch!
für iobroker start braucht es keinen admin.
-
@jaridian sagte in Server Cannot start inMem-objects on port 9001:
P.S. Ja klar, wenn ich sage der Iobroker läuft nicht, dann meine ich natürlich der Admin läuft nicht, ohne Admin kein Iobroker start
Naja das sind aber alles verschiedene Dinge.
Auchsicher das vor dem Backup restore alles sauber beendet ist? AN sich kommt die Meldung nur wenn ein prozess läuft der die DB offen hat ...
-
@homoran said in Server Cannot start inMem-objects on port 9001:
@jaridian sagte in Server Cannot start inMem-objects on port 9001:
ohne Admin kein Iobroker start
aber sicher doch!
für iobroker start braucht es keinen admin.
Ihr habt natürlich recht, er läuft natürlich auch ohne den Admin, Sorry, dann habe ich mich leienhaft falsch ausgedrückt und bitte um Nachsicht. Ich meine damit, ich benötige den Admin (wie wahrscheinlich die meisten Anwender) um auf die Weboberfläche des Iobrokers zu kommen, um auf meine Instanzen zugreifen zu können. Ist das jetzt korrekter ausgedrückt?
Auchsicher das vor dem Backup restore alles sauber beendet ist? AN sich kommt die Meldung nur wenn ein prozess läuft der die DB offen hat ...
Es läuft auf dem Raspberry nur der Iobroker, ich werde das nächstmal vor dem Einspielen des Backups, alle Instanzen beenden (bis auf dem Admin und Backitup). Mal sehen ob das was bringt.
-
@jaridian Oder Du beendest alles und machst es auf der Console:
iob restore <pfad zu backup datei>
Da biste noch sicherer das nichts läuft, was nicht soll
-
@great-sun said in Server Cannot start inMem-objects on port 9001:
iob restore <pfad zu backup datei>
Danke Dir für den Tip. Werde ich machen.
-
Hallo,
habe das gleiche Problem beobachtet. Nach einem Stromausfall startet der ioBroker nicht und gibt immer wieder die Fehlermeldung "host.raspberrypi-Server Cannot start inMem-objects on port 9001: Failed to lock DB file "/opt/iobroker/iobroker-data/objects.jsonl"!" aus.
Nach ca. 10min startet er aber dann, ohne, dass ich irgendetwas mache.
Hier ein Auschschnitt aus den Logs:
-
Könntest du den Text aus der Konsole bitte auch als TEXT in CodeTags eingebettet hier reinkopieren? Bilder aus der Konsole sind sinnfrei.
-
@thomas-braun
Hab ich angefügt -
@foxy99 Das sind keine CodeTags.
Dann verwendest du eine ungerade Version von nodeJS und dein iobroker-Repo scheint auch falsch zu sein.
-
@thomas-braun Ich hatte das auch schon, nur weil ich den iobroker nicht sauber runterfahren konnte, weil sich storage-seitig was weggehängt hat. Stromausfall gibts bei mir normal nicht hab ne USV davor
Das Problem liegt halt eher daran, dass der Prozess gerade in einem Zustand ist, in dem ihn beenden heißt, dass man sich die jsonl zerschießt. Da geht nix mehr außer restore. Evtl. könnte man überlegen das irgendwann mit wechselnden dateien zu machen:- Datei1 und Datei2 sind in sync
- Datei1 wird gelocked
- Datei1 wird geändert
- Detei1 wird sauber geschlossen (-lock)
- Detei2 wird gelocked
- Datei2 wird in Sync gebracht
- Datei2 wird sauber geschlossen (-lock)
So wäre immer eine Datei zum Lesen ohne lock verfügbar und bei solchen Stromausfällen, oder Storage-Problemen wäre ioBroker dann resilient. @Thomas-Braun was meinst Du? Soll/kann ich da irgendwo unterstützen/wollt Ihr sowas da haben?