sh-Skript automatisch starte bei FritzBox Reboot

Begonnen von stobor, 03 Februar 2013, 22:35:56

Vorheriges Thema - Nächstes Thema

stobor

Hallo,
weiß jemand, wie ich auf der FritzBox automatisch bach einem Reboot ein sh-Skript ausführen kann?
Intel NUC (Ubuntu 22.04.2 LTS (GNU/Linux 5.15.0-113-generic x86_64))  mit CUL V3.2 (FW 1.57 CUL868) für FS20 und CCU3 für HM(IP) + Arduino Mega (Firmata) - FHEM Revision: 29534 - FS20, HM(IP), MQTT, Philips HUE, ModBus

Markus Bloch

Ganz einfach, füge den Aufruf deines Skriptes an das Ende von /var/flash/debug.cfg an. Alle Befehle die in dieser Datei stehen, werden beim Hochfahren der Box gestartet.

Allerdings sollte das Skript nicht endlos laufen, sondern am besten mit


script.sh &


in den Hintergrund schicken.

Viele Grüße

Markus
Developer für Module: YAMAHA_AVR, YAMAHA_BD, FB_CALLMONITOR, FB_CALLLIST, PRESENCE, Pushsafer, LGTV_IP12, version

aktives Mitglied des FHEM e.V. (Technik)

stobor

Intel NUC (Ubuntu 22.04.2 LTS (GNU/Linux 5.15.0-113-generic x86_64))  mit CUL V3.2 (FW 1.57 CUL868) für FS20 und CCU3 für HM(IP) + Arduino Mega (Firmata) - FHEM Revision: 29534 - FS20, HM(IP), MQTT, Philips HUE, ModBus

Markus Bloch

Hi Stobor,

nein leider nicht, du musst dir dazu den Telnetzugang an der FritzBox aktivieren und das ganze auf einer Linux-Kommandozeile durchführen.

Viele Grüße

Markus
Developer für Module: YAMAHA_AVR, YAMAHA_BD, FB_CALLMONITOR, FB_CALLLIST, PRESENCE, Pushsafer, LGTV_IP12, version

aktives Mitglied des FHEM e.V. (Technik)

stobor

Wie füge ich denn am einfachsten was zu dieser Datei?
Intel NUC (Ubuntu 22.04.2 LTS (GNU/Linux 5.15.0-113-generic x86_64))  mit CUL V3.2 (FW 1.57 CUL868) für FS20 und CCU3 für HM(IP) + Arduino Mega (Firmata) - FHEM Revision: 29534 - FS20, HM(IP), MQTT, Philips HUE, ModBus

UliM

Hi,
mit Verlaub: Wenn Du das nicht weisst, solltest Du da auch nix reinhängen - denn wenn das Reingehängte nicht läuft, kannst Du evtl die FB nicht mehr starten.
=8-)
RPi4/Raspbian, CUL V3 (ca. 30 HomeMatic-devices), LAN (HarmonyHub, alexa etc.).  Fördermitglied des FHEM e.V.

stobor

Hmmmmm, ich hatte das vor längerer Zeit schon einmal probiert.
Meine debug.cfg sieht noch immer so aus:

# cat debug.cfg  
                                               
# =========== Pruefung, ob Internet erreichbar =========        
while !(ping -c 1 www.google.de); do                            
sleep 5                                                        
                                                           
done                                                            
# =========== dann weiter und Skripte ausfuehren =======        
/var/InternerSpeicher/256MB-01/Tuerklingel.sh &                
/var/InternerSpeicher/fhem/startfhem                            
#                                                            


Aber das Tuerklingel.sh Script scheint nicht zu laufen. Ich sehe es auch nicht über den ps-Befehl, wenn ich mit der FritzBox per Telnet verbunden bin. Nach einem FritzBox-Neustart mussich das Script immer manuell starten, indem ich mich per Telnet mit der FritzBox verbinde und dann

/var/media/ftp/256MB-01/Tuerklingel.sh &

eingebe. Ich meine anstatt .../media/ftp/... habe ich auch schon .../InternerSpeicher/... Probiert zu haben.

Mache ich da einen Gedankenfehler?

Danke für weitere Hilfe.
Intel NUC (Ubuntu 22.04.2 LTS (GNU/Linux 5.15.0-113-generic x86_64))  mit CUL V3.2 (FW 1.57 CUL868) für FS20 und CCU3 für HM(IP) + Arduino Mega (Firmata) - FHEM Revision: 29534 - FS20, HM(IP), MQTT, Philips HUE, ModBus

PeMue

Hallo Stobor,

probier's doch mal mit ein bisschen warten vor dem Start des Skripts. Scheint beim Start von fhem auch schon mal geholfen zu haben ...

Gruß PeMue
RPi3Bv1.2 rpiaddon 1.66 6.0 1xHM-CC-RT-DN 1.4 1xHM-TC-IT-WM 1.1 2xHB-UW-Sen-THPL-O 0.15 1x-I 0.14OTAU  1xCUNO2 1.67 2xEM1000WZ 2xUniroll 1xASH2200 3xHMS100T(F) 1xRFXtrx 90 1xWT440H 3xTFA30.3150 5xFA21
RPi1Bv2 LCDCSM 1.63 5.8 2xMAX HKT 1xMAX RT V200KW1 Heizung Wasser

stobor

Hallo PeMue,
wie sollte das bei mir genau aussehen. In der Schleife am Anfang wird doch schon gewartet.
Danke, Stobor
Intel NUC (Ubuntu 22.04.2 LTS (GNU/Linux 5.15.0-113-generic x86_64))  mit CUL V3.2 (FW 1.57 CUL868) für FS20 und CCU3 für HM(IP) + Arduino Mega (Firmata) - FHEM Revision: 29534 - FS20, HM(IP), MQTT, Philips HUE, ModBus

PeMue

Hallo Stobor,

in Deiner ersten Schleife prüfst Du, ob die Internetverbindung klappt. Ich bin mir aber nicht sicher, ob da schon der USB Stick erkannt wird. Daher habe ich Dir im letzten Post den Link reinkopiert, wo der automatische Start erst nach Warten erfolgt ist.

Viele Grüße

PeMue
RPi3Bv1.2 rpiaddon 1.66 6.0 1xHM-CC-RT-DN 1.4 1xHM-TC-IT-WM 1.1 2xHB-UW-Sen-THPL-O 0.15 1x-I 0.14OTAU  1xCUNO2 1.67 2xEM1000WZ 2xUniroll 1xASH2200 3xHMS100T(F) 1xRFXtrx 90 1xWT440H 3xTFA30.3150 5xFA21
RPi1Bv2 LCDCSM 1.63 5.8 2xMAX HKT 1xMAX RT V200KW1 Heizung Wasser

stobor

Das Script verstehe ich irgendwie nicht wirklich. Geht's da nicht um das Starten von fhem?
fhem startet bei mir ja wunderbar.
Intel NUC (Ubuntu 22.04.2 LTS (GNU/Linux 5.15.0-113-generic x86_64))  mit CUL V3.2 (FW 1.57 CUL868) für FS20 und CCU3 für HM(IP) + Arduino Mega (Firmata) - FHEM Revision: 29534 - FS20, HM(IP), MQTT, Philips HUE, ModBus

stobor

Hallo,

ich stehe noch immer auf dem Schlauch. Ich habe mein Skript mal vom USB-Stick auf die FritzBox geschoben und die debug.cfg angepasst:
                                               
# =========== Pruefung, ob Internet erreichbar =========         
while !(ping -c 1 www.google.de); do                             
sleep 5                                                           
                                                                 
done                                                             
# =========== dann weiter und Skripte ausfuehren =======         
/var/InternerSpeicher/eigeneProgramme/Tuerklingel.sh &           
sleep 5                                                           
/var/InternerSpeicher/fhem/startfhem
                             

Trotzdem finde ich Tuerklingel.sh nicht in der über ps aufgerufenen Prozessliste.
Was mache ich denn nur falsch?
Führe ich /var/InternerSpeicher/eigeneProgramme/Tuerklingel.sh & über Telnet aus, läuft alles wunderbar.
FHEM läuft im übrigen wunderbar. Auch ohne das vorgestellte sleep 5.
Intel NUC (Ubuntu 22.04.2 LTS (GNU/Linux 5.15.0-113-generic x86_64))  mit CUL V3.2 (FW 1.57 CUL868) für FS20 und CCU3 für HM(IP) + Arduino Mega (Firmata) - FHEM Revision: 29534 - FS20, HM(IP), MQTT, Philips HUE, ModBus

stobor

Intel NUC (Ubuntu 22.04.2 LTS (GNU/Linux 5.15.0-113-generic x86_64))  mit CUL V3.2 (FW 1.57 CUL868) für FS20 und CCU3 für HM(IP) + Arduino Mega (Firmata) - FHEM Revision: 29534 - FS20, HM(IP), MQTT, Philips HUE, ModBus

Mani007

Doch eine Lösung hätte ich noch wenn du freetz drauf hättest könntest du die sh in die .profile oder rc.custom eintragen.
FHEM 5.5 auf Raspberry Pi B+

FB7390 Fritz!OS6.23
CUL 868  V1.61 / 1 x HM-SCI-3-FM / 1 x HM-SEC-SC / 3 x HM-LC-DIM1T-FM / 1 x HM-LC-DIM1TBU-FM /     
4 x HM-CC-RT-DN / 3 x HM-LC-SW1-FM / 2 x HM-WDS30-T-O / 2 x FRITZ!DECT 200 / Openvpn /VU + DUO

Mani007

Hallo stobor,

vorab korrigiert mich wenn das nicht stimmt . Habs aber selbst an einer 2 x FB7390 probiert .

Das wird auch nicht so funktionieren wie oben beschrieben !!



Grund: wenn das Script durchgelaufen ist das in der debug.cfg steht beendet er auch die Türklingel.sh (Warum er das nicht bei fhem tun weiß ich nicht, wird wahrscheinlich woanders gestart. Aufruf an die Profis grins)

Deswegen findest du mit ps den Hintergrundprozess nicht .

Abhilfe schreibe am Anfang der Türklingel.sh          trap ' ' SIGHUP         somit wird der Befehl die sh zu beenden ignoriert .

Das erklärt auch das du per telnet wenn du es manuell eintippst solange läuft bist du die Session beendest .

Bitte Feedback obs funst !!!
FHEM 5.5 auf Raspberry Pi B+

FB7390 Fritz!OS6.23
CUL 868  V1.61 / 1 x HM-SCI-3-FM / 1 x HM-SEC-SC / 3 x HM-LC-DIM1T-FM / 1 x HM-LC-DIM1TBU-FM /     
4 x HM-CC-RT-DN / 3 x HM-LC-SW1-FM / 2 x HM-WDS30-T-O / 2 x FRITZ!DECT 200 / Openvpn /VU + DUO