NEWS
Gelöst: Wo liegt das Startscript von Iobroker?
-
Hallo,
zuerst mal meine "Arbeitsumgebung":
QNAP NAS mit Virtualization Station. Hierauf Debian (ohne GUI / Desktop) und hier nach Anleitung den Iobroker installiert. Es läuft alles gut :)
Mein Problem: Da man die angeschlossenen USB Geräte (Bluetooth Dongle, Zigbee Stick) manuell von der QNAP "lösen" und an die Virtualization Station weiterreichen muss, verliert Iobroker die USB Geräte nach einem Neustart des NAS.
Um das zu vehindern habe ich eine Anleitung im Netz gefunden. Jetzt ist es nur noch wichtig, dass erst das "USB weiterreichen" Script durchläuft, bevor Iobroker startet. Dafür wollte ich den Start von Iobroker verzögern. (Erst muss die Virtualization Station laden, dann Debian, dann das Script um die USB Geräte weiter zu reichen und dann erst Iobroker).
Leider liegt bei mir unter /etc/init.d kein iobroker.sh. Ist das richtig so? Wenn ja, wo liegt das Startscript? Derzeit starte ich iobroker glaube ich immer manuell neu...
Wenn im o.g. Verzeichnis bei mir die iobroker.sh tatsächlich fehlt: Warum^^? Ich habe alles nach Anleitung neu installiert, da ich meine vorherige Installation durch böse Fehler komplett zerschossen hatte^^.
Wo bekomme ich - sollte das Script dort fehlen - das script her? Es ist doch bestimmt sehr kurz und kann manuell angelegt werden?
Vielen Dank im Voraus@M-A-X
Welches Debian?
Der Systemstart läuft da schon länger nicht mehr über initd sondern über systemd. -
-
Da bin ich ja froh, dass ich nicht gebastelt habe, sonder erstmal gefragt :)
es ist das aktuellste (10.4)
Da ich mich absolut nicht auskenne und nichts falsch machen möchte :) wie verzögere ich künstlich den Start von Iobroker (in Debian 10.4)?@M-A-X Ganz so trivial ist das nicht (und dann wieder doch...)
Du musst das Durchreichen als 'unit' in den den Startprozess eingliedern.
Die unit muss dann vor der iobroker unit liegen.Ist hier ganz gut erklärt:
https://www.tecchannel.de/a/systemd-in-der-praxis-nutzen,3286175Da ich aber keine weitere Ahnung von VMs habe bin ich dann auch raus an der Stelle.
-
@Thomas-Braun
Hmm. Wenn ich das richtig verstehe, wird das ein "Problem", denn Debian wird ja automatisiert von QNAP gestartet (bzw. QNAP startet die Virtualization Station und hier habe ich eingestellt, dass dann Debian startet). Das Durchreichen muss ich auf dem "Muttersystem" anstoßen. Hier passiert das X Sekunden nach dem Start des QNAP.
Da schon das ein sehr unsicherer Faktor ist, habe ich das Startscript vom "Durchreichen" einfach ans Ende des Bootvorgangs gesetzt. So kann in der Zeit die Virtualization Station und hier drinnen Debian "in Ruhe" hochfahren.
Jetzt muss aber in Debian gewartet werden (ich schätze mal 1-2 Minuten) bis der Iobroker starten kann. Denn sonst ist Iobroker gestartet, findet die USB Geräte nicht, und schaltet die Adapter nicht grün.
Vielleicht ist das aber auch kein Problem? Lösung 2 wäre ein Skript (oder ähnliches) im Iobroker, der die Adapter erst nach X Minuten startet, statt direkt beim start. GIbt es das? Oder ein Script, dass einen Adapter nach X Minuten "neustartet"? -
@Thomas-Braun
Hmm. Wenn ich das richtig verstehe, wird das ein "Problem", denn Debian wird ja automatisiert von QNAP gestartet (bzw. QNAP startet die Virtualization Station und hier habe ich eingestellt, dass dann Debian startet). Das Durchreichen muss ich auf dem "Muttersystem" anstoßen. Hier passiert das X Sekunden nach dem Start des QNAP.
Da schon das ein sehr unsicherer Faktor ist, habe ich das Startscript vom "Durchreichen" einfach ans Ende des Bootvorgangs gesetzt. So kann in der Zeit die Virtualization Station und hier drinnen Debian "in Ruhe" hochfahren.
Jetzt muss aber in Debian gewartet werden (ich schätze mal 1-2 Minuten) bis der Iobroker starten kann. Denn sonst ist Iobroker gestartet, findet die USB Geräte nicht, und schaltet die Adapter nicht grün.
Vielleicht ist das aber auch kein Problem? Lösung 2 wäre ein Skript (oder ähnliches) im Iobroker, der die Adapter erst nach X Minuten startet, statt direkt beim start. GIbt es das? Oder ein Script, dass einen Adapter nach X Minuten "neustartet"?@M-A-X
Wenn ich das richtig verstehe muss der ganze Kram mit dem Durchreichen vor dem Start von Debian passieren.
Mit dem Start des Debians selber das direkt nichts zu tun, sollte aber abgeschlossen sein. Da musst du in der Startabfolge des QNAP ran, denke ich. -
@M-A-X
Wenn ich das richtig verstehe muss der ganze Kram mit dem Durchreichen vor dem Start von Debian passieren.
Mit dem Start des Debians selber das direkt nichts zu tun, sollte aber abgeschlossen sein. Da musst du in der Startabfolge des QNAP ran, denke ich.@Thomas-Braun
Oh Mist. Du hast recht. Es muss zwischen 'vorhanden sein' der virtualization Station und Start von Debian passieren...
Da hatte ich nen Denkfehler. Sorry...
EDIT: Trotzdem würde mir helfen, wenn es ne Möglichkeit gibt per Skript einen Adapter neu zu starten^^ dann wäre es nämlich egal, wann die USB zur Verfügung gestellt werden :) -
@Thomas-Braun
Oh Mist. Du hast recht. Es muss zwischen 'vorhanden sein' der virtualization Station und Start von Debian passieren...
Da hatte ich nen Denkfehler. Sorry...
EDIT: Trotzdem würde mir helfen, wenn es ne Möglichkeit gibt per Skript einen Adapter neu zu starten^^ dann wäre es nämlich egal, wann die USB zur Verfügung gestellt werden :)Da brauchst du kein skript für, das geht direkt per command:
iobroker restart - restarts the js-controller iobroker restart <adapter>[.instance] - restarts a specified adapterWobei sich deine Herangehensweise für mich immer noch etwas 'konfus' anhört. Warum sollte man Adapter per skript neustarten wollen?
In den meisten VMs kann man eine Konfiguration definieren, die zusammengebastelt wird bevor das dort eingebettete System startet. Würde mich wundern, wenn das bei dir anders wäre. Dann wäre nämlich der USB-Kram immer schon da, wenn Debian startet und du müsstest da nicht so komisch rumfrickeln.
-
Da brauchst du kein skript für, das geht direkt per command:
iobroker restart - restarts the js-controller iobroker restart <adapter>[.instance] - restarts a specified adapterWobei sich deine Herangehensweise für mich immer noch etwas 'konfus' anhört. Warum sollte man Adapter per skript neustarten wollen?
In den meisten VMs kann man eine Konfiguration definieren, die zusammengebastelt wird bevor das dort eingebettete System startet. Würde mich wundern, wenn das bei dir anders wäre. Dann wäre nämlich der USB-Kram immer schon da, wenn Debian startet und du müsstest da nicht so komisch rumfrickeln.
@Thomas-Braun
Hey. Danke für die Hilfe.
Also ich finde die Virtualization Station sehr suboptimal für eine VM. Da mein NAS aber eh 24/7 läuft, bietet es sich halt an iobroker darauf laufen zu lassen :)
Die Einstellungen in der VS sind sehr begrenzt.
Was ich mit dem Skript machen möchte, ist die Adapter (hier zigbee und ble) einfach nach 2 Minuten zu restarten, damit USB bereit gestellt ist.
Da hilft mir ein Befehl nicht, oder?
Ich würde einfach gerne ein Skript haben 'timeout 2 Minuten' -> 'restart ble.0, restart zigbee.0'.
Die VS ist wie gesagt sehr 'schlecht', aber so würde es sicher funktionieren. -
@Thomas-Braun
Hey. Danke für die Hilfe.
Also ich finde die Virtualization Station sehr suboptimal für eine VM. Da mein NAS aber eh 24/7 läuft, bietet es sich halt an iobroker darauf laufen zu lassen :)
Die Einstellungen in der VS sind sehr begrenzt.
Was ich mit dem Skript machen möchte, ist die Adapter (hier zigbee und ble) einfach nach 2 Minuten zu restarten, damit USB bereit gestellt ist.
Da hilft mir ein Befehl nicht, oder?
Ich würde einfach gerne ein Skript haben 'timeout 2 Minuten' -> 'restart ble.0, restart zigbee.0'.
Die VS ist wie gesagt sehr 'schlecht', aber so würde es sicher funktionieren.@M-A-X Warum du die Adapter neustarten willst kapier ich immer noch nicht, sorry. Wenn die Kiste eh 24/7 rennt, was willst du da dann neustarten? Einen sauberen Start bei dem du den USB-Kram abwartest, dann das OS startest und dann ist das Thema doch gegessen. Das timeout-skript müsstest du doch auch anstupsen oder was soll das triggern?
-
@M-A-X Warum du die Adapter neustarten willst kapier ich immer noch nicht, sorry. Wenn die Kiste eh 24/7 rennt, was willst du da dann neustarten? Einen sauberen Start bei dem du den USB-Kram abwartest, dann das OS startest und dann ist das Thema doch gegessen. Das timeout-skript müsstest du doch auch anstupsen oder was soll das triggern?
@Thomas-Braun
Also ich dachte man kann ein Skript automatisch nach start von Iobroker starten^^ hab mich damit noch nicht beschäftigt, aber ich dachte, wenn man KEINEN Trigger einbaut, startet das Skript automatisch sobald der Skript Adapter initialisiert wurde (einmal).
Die Kiste rennt 24/7. Aber ab und zu gibt es (automatische) Updates bei denen die Virtualization Station oder das ganze NAS neu startet - oder bei einem Stromausfall. Wenn ich dann keinen Automatismus hinterlegt habe, funktioniert z.B. der Zigbee Adapter nicht, was bedeutet meine Türsensoren klappen nicht, was bedeutet - wenn ich nicht da bin - erkenne ich keinen "Einbruch" :)
Ich habe aber - vor allem dank deiner bohrenden Fragen :) - eine Lösung (sehr einfach eigentlich) gefunden. Ich wollte dir gerade nochmal schreiben, wann was genau (chronologisch) passieren muss, als mir (und dir bestimmt schon länger) erst aufgefallen ist, dass es unerheblich ist, wann Debian startet... Wichtig ist ja nur 1. Virtualization station 2. USB weitergabe 3. Iobroker. Daher konnte ich einfach den Start von der VM (Debian) verzögert einstellen und alles sollte funktionieren.
Leider stand ich anscheinend 2 Tage lang auf dem Schlauch.
Danke an dich für deine Hartnäckigkeit :) -
@Thomas-Braun
Also ich dachte man kann ein Skript automatisch nach start von Iobroker starten^^ hab mich damit noch nicht beschäftigt, aber ich dachte, wenn man KEINEN Trigger einbaut, startet das Skript automatisch sobald der Skript Adapter initialisiert wurde (einmal).
Die Kiste rennt 24/7. Aber ab und zu gibt es (automatische) Updates bei denen die Virtualization Station oder das ganze NAS neu startet - oder bei einem Stromausfall. Wenn ich dann keinen Automatismus hinterlegt habe, funktioniert z.B. der Zigbee Adapter nicht, was bedeutet meine Türsensoren klappen nicht, was bedeutet - wenn ich nicht da bin - erkenne ich keinen "Einbruch" :)
Ich habe aber - vor allem dank deiner bohrenden Fragen :) - eine Lösung (sehr einfach eigentlich) gefunden. Ich wollte dir gerade nochmal schreiben, wann was genau (chronologisch) passieren muss, als mir (und dir bestimmt schon länger) erst aufgefallen ist, dass es unerheblich ist, wann Debian startet... Wichtig ist ja nur 1. Virtualization station 2. USB weitergabe 3. Iobroker. Daher konnte ich einfach den Start von der VM (Debian) verzögert einstellen und alles sollte funktionieren.
Leider stand ich anscheinend 2 Tage lang auf dem Schlauch.
Danke an dich für deine Hartnäckigkeit :)@M-A-X
Genau so meinte ich das mit der Abfolge des Startes der einzelnen Komponenten.
Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.
Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.
Mit deinem Input könnte dieser Beitrag noch besser werden 💗
Registrieren Anmelden