FRITZ!Box oder Repeater automatisch neustarten lassen – Linux Bash-Skript

avm firtzbox labor - FRITZ!Box oder Repeater automatisch neustarten lassen - Linux Bash-Skript

Wir haben in unserem Haushalt eine AVM FRITZ!Box 6490 Cable und zwei FRITZ!WLAN Repeater 1750E im Einsatz. Des Öfteren hat meine Frau geschimpft, dass bei ihr am iPhone gerade das WLAN nicht funktioniert – mit der iOS-App IT Tools habe ich versucht dem Problem auf die Schliche zu kommen. Es hatte immer den Anschein, als hätte die FRITZ!Box die ARP-Tabelle zerschossen und die Route ins Internet war futsch. Egal, nach einem Neustart unserer drei FRITZ!OS Geräte war wieder für 2-3 Wochen Ruhe.

Natürlich wollte ich diesen Neustart dann irgendwie automatisieren, damit ich das nicht immer händisch tun muss. Leider gibt es im aktuellen FRITZ!OS keine Möglichkeit, das Gerät täglich, wöchentlich oder monatlich neu zu starten.

Beim Googlen fand ich zuerst die Möglichkeit über die WEBCM-Schnittstelle – login.lua, Session_IDs über Port 80 / 443. Leider wurde aber diese Schnittstelle mit FRITZ!OS 6 (2013) deaktiviert. Ein wenig später stolperte ich über die FRITZ!Box Skripte für die HomeMatic CCU2 von Dragonfly – die nutzen das offizielle AVM TR-064 Protokoll, welches seit FRITZ!OS 6 verfügbar ist. Aus diesen, teilweise sehr komplexen Skripten, habe ich ein kleines Linux Bash-Skript gebastelt und auf GitHub veröffentlicht.

HIER GEHT ES ZUM SKRIPT

Dieses Skript startet bei uns im Haushalt alle drei FRITZ!OS Geräte neu. Es wird über die Crontab, jeden Freitag um 4:50, ausgeführt und läuft auf unserem NAS-System, welches 24 Stunden, 7 Tage die Woche eingeschaltet ist. Natürlich würde sich hierfür auch ein Raspberry Pi anbieten. 😉

# FRITZ! Geräte neustarten
50 4 * * 5 root /root/Scripts/cron_fritzbox-reboot.sh

Viel Spaß beim Ausprobieren!

Kommentare

83 Kommentare zu „FRITZ!Box oder Repeater automatisch neustarten lassen – Linux Bash-Skript“

  1. Avatar von Thomas
    Thomas

    Umtauschen?

    1. Avatar von Philipp
      Philipp

      Danke fĂŒr deinen Beitrag 🙂
      ich hatte mit unserer FB immer das Problem, dass nach 1 bis 2 Wochen das Telefon einfach nicht mehr funktioniert hat, und ich einen Neustart machen musste.
      Ich hab das ganze auf meinem RPI laufen, allerdings musste ich auf der FB einen Benutzer anlegen und entsprechend im Script eintragen.
      Interessanterweise lag es aber nicht am Login selbst, denn laut internem Log der FB war dieser erfolgreich. Deswegen geh ich davon aus, dass da ggf. rechte fehlen o.Ă€. wenn man keinen Benutzer anlegt?
      Übrigens das Ganze mit einer FritzBox 6840LTE und FritzOS6.84.

      noch mal danke fĂŒr deine Arbeit 🙂

  2. Avatar von schtebo
    schtebo

    Hi,
    hab Àhnliche Probleme bei meinem 1750e festgestellt. Genaue Ursache konnte ich nie richtig eingrenzen, aber seit ein paar Tagen lÀuft es nun ohne Probleme durch:
    Vielleicht hilft Dir das Firmware Update auch:
    FRITZ!OS 6.93
    http://download.avm.de/labor/IQ17.2/1750E/info.txt
    Neu mit FRITZ!OS 6.93:
    – StabilitĂ€tsverbesserung

    1. Avatar von _nico

      Bisher leider keine Besserung. :-/

  3. Avatar von Netcrew
    Netcrew

    Hey, erstmal danke fĂŒr deinen Tipp, bei meiner FB 7490 mit FOS 06.93 funktioniert das Script komischerweise nicht. Auf der Suche nach Hilfe bin ich auch auf die Seite https://www.mengelke.de/Projekte/FritzBoxTools gestoßen, da habe ich dann versucht die Restartfunktion selbst mit einzubauen, aber auch dort reagiert meine FB nicht darauf… Im Log sehe ich jedoch Ereignisse von meinem RPI… Jemand eine Idee?

    1. Avatar von _nico

      Hi Netcrew,

      ich konnte dein Problem soeben mit einer FRITZ!Box 7590 und FRITZ!OS 06.92 reproduzieren. Scheinbar hat sich mit FRITZ!OS Version 6.9x und neuer etwas in der Authentifizierung geÀndert. Es funktioniert nicht mehr ohne Benutzername (FRITZUSER).

      Bei meiner FRITZ!Box 6490 Cable mit FRITZ!OS 06.87 funktioniert noch alles wie gewohnt.

      Workaround: Einfach ein „Restart-User“ auf der FRITZ!Box, mit Berechtigungen fĂŒr die Einstellungen, anlegen und diesen dann in das Skript eintragen.

      Gruß Nico

  4. Avatar von Rainer
    Rainer

    Hallo Nico,

    genau sowas suche ich…eine Möglichkeit automatisiert die FB jede nacht neuzustarten.

    Leider habe ich von Linux und scripting kaum eine Ahnung. Hast du vielleicht eine Anleitung fĂŒr AnfĂ€nger? Wir kommt das Script in die FB? Im Netzwerk sind neben der FB ausschließlich Windows-PCs.

    GrĂŒĂŸe Rainer

  5. Avatar von user
    user

    Ich habe an meine Fritbox einfach ne Zeitschaltuhr gehĂ€ngt, morgens um 4 uhr wird das ding fĂŒr ne minute ausgeschaltet und gut ist 🙂

  6. Avatar von Tockmock
    Tockmock

    Vielen Dank fĂŒr das Skript. Habe es auf meinem Raspberry Pi (Pi-Hole) laufen. Man muss natĂŒrlich den User anlegen damit es geht.
    Danke!

  7. Avatar von Wolfgang

    Hallo Nico,
    bei meiner FB 7490 mit Firmware 07.08-64370 BETA bekomme ich beim AusfĂŒhren des Scripts auf dem RPi die folgende Fehlermeldung:

    cron_fritzbox-reboot.sh: line 35: syntax error near unexpected token `$’do\r“
    ‚ron_fritzbox-reboot.sh: line 35: `for IP in ${IPS}; do

    Hast Du eine Idee???
    Danke
    Wolfgang

    1. Avatar von _nico

      Hallo Wolfgang,

      das Skript sollte weiterhin laufen.
      Du hast dir offensichtlich einen Syntax-Fehler in der Variable „IPS“ gebaut. 🙂

      Oder keine UNIX Line Endings / EOL?

      Poste doch mal einen Editor-Screenshots des Skripts.

      Viele GrĂŒĂŸe
      Nico

  8. […] loggn.de – FRITZ!Box oder Repeater automatisch neustarten lassen – Linux Bash-Skript […]

  9. Avatar von Chris
    Chris

    Hallo lieber Nico, ich wĂŒrde dein Script auch gerne nutzen. Ich bin aber leider ein Linux Frischling.
    Habe einen Pi Zero W als Home Automation Server und wĂŒrde ĂŒber diesen Pi auch das neustarten erledigen lassen. Kannst du bitte erklĂ€ren wie man dieses Script installiert? Vielen Dank.

    MfG

    Chris

  10. Avatar von Wolfsrabe
    Wolfsrabe

    @_nico:
    Kann es sein, dass das Script bei den Repeatern 1750 in der Firmware-Version 7.12 nicht mehr funktioniert?

    Bei einem Test mit dem Script startet die Fritzbox 7490 (auch Version 7.12) neu, aber die beiden Repeater 1750 nicht (mehr).

    1. Avatar von _nico

      Hi Wolfsrabe,

      habe es gerade mit meinen beiden 1750E mit Firmware-Version 7.12 getestet. Funktioniert bei mir!

      Gruß Nico

      1. Avatar von Wolfsrabe
        Wolfsrabe

        Danke @_Nico, dann muss bei mir irgendwo der Wurm drin sein.

        1. Avatar von Timo Widmann
          Timo Widmann

          Hat sich erledigt… Ohne User nur mit Passwort geht es nicht auf der 7560 OS 7.12 Einfach User/Passwort auf der Fritzbox erstellen dann geht das Skript wieder.

    2. Avatar von Timo
      Timo

      Fritzbox 7560 OS 7.12 geht leider nicht.
      root@raspberrypi:~# curl -k -m 5 –anyauth -u „:WebLoginPasswort“ -H ‚Content-Type: text/xml; charset=“utf-8″‚ -H „SoapAction:urn:dslforum-org:service:DeviceConfig:1#Reboot“ -d „
      401 Unauthorized (ERR_NONE)401 UnauthorizedERR_NONEWebserver Thu, 18 Feb 2021 17:23:37 GMT

      Bei meiner 3370 OS 6.55 geht es:
      root@raspberrypi:~# curl -k -m 5 –anyauth -u „:WebLoginPasswort“ -H ‚Content-Type: text/xml; charset=“utf-8″‚ -H „SoapAction:urn:dslforum-org:service:DeviceConfig:1#Reboot“ -d „



      root@raspberrypi:~#

  11. Avatar von Dirk
    Dirk

    Hallo Nico,
    habe auch div. Verbindungprobleme mit meinen SmartHome WLAN Schaltern.
    WĂŒrde gerne dein Script testen, habe aber keine Ahnung wie ich dein Script als Cron direkt auf meinem NAS (Synology) oder in meiner SmartHomeAnwendung (openHAB2 auf Synology) einbinden soll.
    Hast du ein paar Tipps fĂŒr mich?

  12. Avatar von Prime

    Hallo zusammen habe bei meiner Fritzbox 6820 LTE den Effekt das ich zeitweise nicht per VPN Verbindung aufbauen kann. Nach reboot geht es wieder.
    Ich wĂŒrde den Code gerne in meinem Octoprint laufen lassen da der immer an ist. Kann mir jemand bitte Schritt fĂŒr Schritt beschreiben wie man das auf crontab eintrĂ€gt. Habe es versucht. Und es passiert nichts.

    LG Prime

  13. Avatar von Sebastian Weiß
    Sebastian Weiß

    Hallo _nico,

    Wollte nur kurz meinen Dank hinterlassen!

  14. Avatar von fritzuser
    fritzuser

    funktioniert (immer noch) danke

    1. Avatar von _nico

      Super, danke. Magst du uns noch sagen welches Modell und welche Firmware du verwendest? 🙂

  15. Avatar von Frank
    Frank

    kurze rĂŒckmeldung: mit ner fb4790 und firmware 07.12 lĂ€uft das script super. reboot-user einrichten nicht vergessen, username und passwort im script anpassen – fertig 🙂 herzlichen dank fĂŒr dieses praktische script!

  16. Avatar von Richard_it
    Richard_it

    Danke fĂŒr deine Arbeit,

    bei meiner FB 7390 FritzOS 06.85 klappt dein script mit einem dafĂŒr angelegten User einwandfrei.
    Hatte das frĂŒher ĂŒber telnet (Synology-NAS) realisiert, welches aber irgendwann aus der FB (und aus DSM) rausgeflogen ist.
    Die regelmĂ€ĂŸig wiederkehrenden Troubles mit IOS-GerĂ€ten und FireTV-Stick sollten mich ab jetzt verschonen ;-), großer Dank!

  17. Avatar von hoventroven
    hoventroven

    Hallo Nico,

    vielen, vielen Dank fĂŒr Dein Script, lĂ€uft auf meiner FB einwandfrei. Super!

    FB 7530 mit OS7.14 (vom Provider gestellt), Synology-NAS 216II

    Schöne GrĂŒĂŸe
    hoventroven

    PS: Mußte keinen Benutzer fĂŒrs Rebooten anlegen. „root“ und Passwort reichten.

  18. Avatar von Dirk

    Hallo Nico,
    danke fĂŒr deine Arbeit, genau so etwas habe ich gesucht. Habs auf meiner Synology NAS laufen und der erste Testlauf hat prima funktioniert. Den Strom abzuschalten via Zeitschaltuhr funktioniert zwar auch aber das mag die FB nicht wirklich. Da passieren dann schon einmal seltsame Dinge. Hatte das Problem das der Speicher meiner FB volllĂ€uft und das Webinterface dann nicht mehr erreichbar ist. AVM konnte mir da auch nicht weiter helfen, da es zu viele verschiedene Möglichkeiten geben wĂŒrde. Wenn es so mit deinem Script auf Dauer funktioniert bin ich vollauf zufrieden.
    Gruß und Danke nochmal
    Dirk

    1. Avatar von Thomas
      Thomas

      Hallo Dirk,
      durch Zufall bin ich auf das Thema gestoßen.
      Ich meine eine Antwort auf die Frage zu haben warum das Wlan nach ca. 2 Wochen nur noch kriecht. Ich habe gelesen, dass die FritzBox die Autokanalsuche einmal nach Neustart durchfĂŒhrt und dann dort bleibt. Egal wie viele andere den gleiche Kanal benutzen. DrĂŒckt man den Knopf zur Aktualisierung, geht bei mir das Wlan sofort wieder. DafĂŒr muss ich mich aber in die OberflĂ€che einwĂ€hlen und den Knopf ĂŒber das MenĂŒ ansteuern.

      Jetzt bin ich natĂŒrlich an der eleganten Version per NAS Synology interessiert und habe total keine Ahnung von Skripten.
      Oben im Verlauf sehe ich immer wieder die gleiche Frage anch einer Hilfe zu diesem Thema.
      Könntest Du so nett sein und mir hier helfen.
      Ich benutze ebenfalls einen Synology NAS und ein FritzBox. Meine ist eine 6490 Cable mit aktueller Firmware.

      vg
      Thomas

    2. Avatar von Uli
      Uli

      Hallo Dirk,

      kannst du mkir sagen, wie du es auf der Syno zum Laufen gebracht hast?

      habe das gleiche vor

      Gruß
      Uli

      1. Avatar von Dirk Gerspacher
        Dirk Gerspacher

        Hallo Uli,
        sorry hat etwas gedauert aber hier eine kleine Hilfestellung zur Synology NAS:
        1. Melde dich an deiner NAS an und speichere das angepasste Skript (IP Adresse, Benutzer, Passwort deiner Fritzbox) mit Hilfe der File Station auf deiner NAS (mit Rechtsklick auf die Datei und bei Auswahl der Eigenschaften wird dir der Pfad angezeigt den du dann kopieren kannst)
        2. Gehe auf Systemsteuerung
        3. Klicke auf Aufgabenplaner
        4. WĂ€hle dann Erstellen/Geplante Aufgabe/Benutzerdefiniertes Skript
        5. Gib als Vorgang „Fritzbox Neustart“ ein, wĂ€hle admin als Benutzer
        6. Stelle unter Zeitplan deinen persönlichen Startzeitpunkt ein
        7. Unter Aufgabeneinstellung gib den Pfad zum Skript an
        8. Dann auf OK und das war’s schon.
        Jetzt kannst du deine Aufgabe auswĂ€hlen und ĂŒber AusfĂŒhren testweise starten. Jetzt sollte die Fritzbox einen Neustart machen.
        Hoffe das hilft dir weiter. wĂ€re nett wenn du ne kurze Info geben wĂŒrdest ob’s geklappt hat.
        Gruß Dirk

  19. Avatar von Thomas
    Thomas

    Hat sich erledigt. Habe meinen Fehler selbst gefunden.

  20. Avatar von Wolfsrabe
    Wolfsrabe

    Hallo in die Runde und an den Autor!

    Ich denke, es ist Zeit fĂŒr eine Aktualisierung:

    Mit der Fritzbox 7530 mit der Version 7.20 funktioniert das Script noch immer.

    Allerdings streikt der Repeater 1750E mit derselben Version 7.20. Der Neustart bleibt aus.

    Kann das jemand bestÀtigen?

    1. Avatar von mh
      mh

      Ja das Problem habe ich genauso. An dem Repeater kann ich mich aber auch an der WeboberflĂ€che nur mit dem „Fritzbox-Kennwort“ nicht aber mit dem angelegten Benutzer anmelden, da der Benutzer gar nicht angebbar ist. Könnte es damit zusammenhĂ€ngen?

      1. Avatar von Wolfsrabe
        Wolfsrabe

        Ich bin mir nicht sicher, ob man im Repeater ĂŒberhaupt weitere Nutzer anlegen kann. Da ich den Repeater bei mir im Mesh habe, ist es ohnehin nicht möglich, weil die Repeater alle Einstellungen der FritzBox ĂŒbernimmt.

        Da es vor der Version 7.20 aber tadellos funktionierte, tippe ich eher darauf, daß AVM irgendetwas geĂ€ndert hat.

  21. Avatar von feik
    feik

    Danke fĂŒr das Skript!
    Ich musste es fĂŒr meine BedĂŒrfnisse aufteilen, eins fĂŒr die Repeater nur mit Kennwort fĂŒr die WeboberflĂ€che und eins fĂŒr die Fritzbox mit Username/Passwort Kombination. Angewendet auf 1750E(7.20) und 7490 (7.21)

    Ein kleiner Hinweis noch, sollte z.B. ein $ im Kennwort vorkommen, muss das mit einem \ „escaped“ werden.

    1. Avatar von Sand
      Sand

      Hi
      Wie könnte ich es mit dem Skript trotzdem umsetzen?
      Habe kein NAS

      1. Avatar von Wolfsrabe
        Wolfsrabe

        @Sand
        Du brauchst auf jeden Fall irgendeinen Rechner/NAS/Raspberry/wasauchimmer, der zu der gewĂŒnschten Reboot-Zeit lĂ€uft und Scripte ausfĂŒhren kann.

  22. Avatar von Jan
    Jan

    Hallo,
    ich versuche auch dein Script zu nutzen auf einer Ubuntu-VM mit Crontab.

    Leider funktioniert es nur, wenn ich das Script manuell ĂŒber die Konsole starte – Crontab löst es nicht aus. Ich habe mittels crontab -e folgendes im Nano-Editor hinterlegt:
    #Script starten Fritzbox reboot
    15 04 * * * /bin/bash /home/Scripte/cron_fritzbox-reboot.sh

    Es passier leider nichts. Könntest du dein Script vielleicht nochmal etwas ausfĂŒhrlicher, auch fĂŒr AnfĂ€nger wie mich, erklĂ€ren? 🙂

    Viele GrĂŒĂŸe
    Jan

    1. Avatar von Wolfsrabe
      Wolfsrabe

      @Jan mit dem Script ist offenbar alles in Ordnung, wenn es manuell angestoßen funktioniert. Irgendetwas hĂ€ngt da also an deiner Cron-Geschichte.

  23. Avatar von Mick
    Mick

    Danke!

    Dein Beitrag ist zwar schon 3 Jahre alt, funktioniert aber immer noch bestens 🙂 2 x 7490 mit 07.21

    Das habe ich schon lange gesucht 🙂

  24. Avatar von DGP
    DGP

    Hallo,

    Ich bekomme Folgendes outcome mit sh fritzbox.sh….. Kann jemand weiterhelfen?

    : not found: 2: fritzbox.sh:
    : not found: 6: fritzbox.sh:
    : not found: 9: fritzbox.sh:
    : not found: 13: fritzbox.sh:
    : not found: 15: fritzbox.sh:
    : not found: 16: fritzbox.sh:
    : not found: 20: fritzbox.sh:
    : not found: 23: fritzbox.sh:
    : not found: 26: fritzbox.sh:
    : not found: 27: fritzbox.sh:
    : not found: 31: fritzbox.sh:
    : not found: 35: fritzbox.sh:

    1. Avatar von DGP
      DGP

      fritzbox.sh: 36: fritzbox.sh: Syntax error: word unexpected (expecting „do“)

      1. Avatar von Sven
        Sven

        Hallo,
        ich hatte die gleichen „command not found errors“ / „Syntax error“ und der reboot Script funktionierte nicht. ;-(

        Hab das Problem behoben, indem ich den cron_fritzbox-reboot.sh script direkt auf dem RPI erstellt habe.
        Also per:
        sudo nano cron_fritzbox-reboot.sh das file erstellen und den Script text von Nico (danke dafĂŒr!) dort reinkopieren, sowie die IPS, FRITZUSER und FRITZPW anpassen.
        Danach die rechte anpassen:
        sudo chmod +x cron_fritzbox-reboot.sh
        sowie die crontab erweitern.

        LĂ€uft nun!

        Beachte: Den *.sh NICHT per DOS/Windows erstellen und auf den RPI kopieren. Das funktioniert wegen der verschiedenen EndOfLine Interpretation (\r) nicht!

        Gruß Sven

        1. Avatar von Martin
          Martin

          Bei mir klappt es leider auch nicht, weder manuell via SSH, noch ĂŒber die Synology Aufgabenplanung.

          Es macht auch keinen Unterschied, ob ich das Script via SSH auf dem NAS erstelle oder es lokal unter Windows anlege und rĂŒberkopiere (Stichwort EOL-Format) – ich erhalte immer folgende Fehler:

          cron_fritzbox-reboot.sh: line 39: syntax error near unexpected token `<'
          cron_fritzbox-reboot.sh: line 39: ` curl -k -m 5 –anyauth -u "$FRITZUSER:$FRITZPW" http://$IP:49000$location -H 'Content-Type: text/xml; charset="utf-8"' -H "SoapAction:$uri#$action" -d "“ -s > /dev/null‘

          Hat jemand eine Idee?

          1. Avatar von Wolfsrabe
            Wolfsrabe

            @Martin kannst du deinen kompletten angepassten Code hier mal posten (am besten in - Formatierung)? Syntaxfehler sind eigentlich immer genau das, auch wenn man sie manchmal partout nicht findet.

            Wir kriegen das bestimmt hin.

            Ich hab bei mir auch bisschen rumbasteln mĂŒssen, ehe alles funktioniert. Habe zwei Scripts zu laufen, eins fĂŒr die Fritzbox 7530 und eins fĂŒr den Fritzrepeater 1750.

          2. Avatar von Wolfsrabe
            Wolfsrabe

            Jetzt hab ich in meinem Kommentar die Formatierung versaut… ich meinte natĂŒrlich nur: Bitte den Scriptcode in „Code“-Formatierung einfĂŒgen.

  25. Avatar von Martin
    Martin

    @Wolrfsrabe

    Klaro, hier ist das Script:

    #!/bin/bash

    #######################################################
    ### Autor: Nico Hartung #
    #######################################################

    # Skript sollte ab FritzOS 6.0 (2013) funktioneren - also auch fĂŒr die 6.8x und 6.9x
    # Dieses Bash-Skript nutzt das Protokoll TR-064 nicht die WEBCM-Schnittstelle

    # http://fritz.box:49000/tr64desc.xml
    # https://wiki.fhem.de/wiki/FRITZBOX#TR-064
    # https://avm.de/service/schnittstellen/

    # Thanks to Dragonfly (https://homematic-forum.de/forum/viewtopic.php?t=27994)

    ###=======###
    # Variablen #
    ###=======###

    IPS="192.168.1.1"

    FRITZUSER="User"
    FRITZPW="password"

    ###====###
    # Skript #
    ###====###

    location="/upnp/control/deviceconfig"
    uri="urn:dslforum-org:service:DeviceConfig:1"
    action='Reboot'

    for IP in ${IPS}; do
    curl -k -m 5 --anyauth -u "$FRITZUSER:$FRITZPW" http://$IP:49000$location -H 'Content-Type: text/xml; charset="utf-8"' -H "SoapAction:$uri#$action" -d "" -s > /dev/null
    done

    1. Avatar von Wolfsrabe
      Wolfsrabe

      Das ist ja seltsam: Wenn ich deinen Code kopiere (beginnend mit #!bin/bash und endend mit done in meinen Editor einfĂŒge, habe ich nur 35 Zeilen. Dein Fehler bezieht sich aber auf Zeile 39. Oder zĂ€hlt dein Editor ZeilenumbrĂŒche mit (bei Zeilen die zu breit sind)?

      1. Avatar von Martin
        Martin

        Ja, Notepad++ zĂ€hlt die Leerzeilen mit…

        Ich verstehe es nicht, habe den Code raw aus github kopiert und sauber EOL formatiert, selbst direkt mit nano erstellt und es Ă€ndert nix…

        1. Avatar von Wolfsrabe
          Wolfsrabe

          Du kannst im Notepad++ bei Edit--> EOL-Conversion (oder so Ă€hnlich) direkt ins Unix-Format konvertieren. Probiere das mal aus. Dein Code sieht ja sonst in Ordnung aus, wenn ich nichts ĂŒbersehen habe.

          1. Avatar von Martin
            Martin

            Das habe ich doch bereits gemacht, weil ich auch vermutet hatte, daran liegt es.

            Ändert aber nix, auch nicht wenn ich wie etwas weiter oben beschrieben, das Sricpt via SSH und nano direkt auf dem NAS anlege :/

  26. Avatar von _nico

    @Martin: Kannst du uns mal einen Screenshot des Skripts im Notepad++ machen?

    Danke

      1. Avatar von _nico

        Hmm, sieht gut aus.

        Eventuell noch ein ENTER nach dem „done“ in Zeile 35, damit es eine leere Zeile 36 gibt?

        Viele GrĂŒĂŸe

  27. Avatar von Wolfsrabe
    Wolfsrabe

    Habe jetzt doch einen Unterschied im Quellcode entdeckt, weiß aber nicht ob er damit zusammenhĂ€ngt
    Die curl-Zeile (innerhalb der for-done-Schleife) ist bei dir kĂŒrzer. Nach dem „-d“-Parameter kommen bei dir nur zwei AnfĂŒhrungszeichen ohne Inhalt drin, bei mir ist da noch eine Menge mehr. Hier mal die komplette Zeile:
    curl -k -m 5 --anyauth -u "$FRITZUSER:$FRITZPW" http://$IP:49000$location -H 'Content-Type: text/xml; charset="utf-8"' -H "SoapAction:$uri#$action" -d "" -s > /dev/null
    Kann dir zwar nicht sagen ob das das Problem löst, aber ein Versuch ist es wert.

  28. Avatar von Wolfsrabe
    Wolfsrabe

    Tschuldige, habe versehentlich deinen Code eingefĂŒgt.
    Hier meiner:
    curl -k -m 5 --anyauth -u "$FRITZUSER:$FRITZPW" http://$IP:49000$location -H 'Content-Type: text/xml; charset="utf-8"' -H "SoapAction:$uri#$action" -d "" -s > /dev/null

    1. Avatar von Wolfsrabe
      Wolfsrabe

      Ich werd verrĂŒckt – das ist hier wohl ein Fehler im Editor dieser Seite hier, das wird wohl irgendwie gefiltert…..

      1. Avatar von Martin
        Martin

        Kannst du mal dein Script mal irgendwo hochladen (ohne sensible Variablen) – ich bin hier momentan ein wenig verwirrt….

        1. Avatar von Wolfsrabe
          Wolfsrabe

          @Martin Hier das Script. Benutzername und Passwort sind hier durch „xxxx“ ersetzt, ansonsten ist alles „original“.

          1. Avatar von Martin
            Martin

            Danke:)
            Aber auch hier das gleiche Problem :/

            Hab jetzt zum Testen Ubuntu 20.04 LTS im WSL2 installiert, bringt auch nix – kann gar nicht glauben, dass es bei euch problemlos funktioniert 😀

            ./cron_fritzbox-reboot.sh: line 36: syntax error near unexpected token `<'
            ./cron_fritzbox-reboot.sh: line 36: ` curl -k -m 5 --anyauth -u "$FRITZUSER:$FRITZPW" http://$IP:49000$location -H 'Content-Type: text/xml; charset="utf-8"' -H "SoapAction:$uri#$action" -d "" -s > /dev/null'

          2. Avatar von _nico

            @Martin: Das hat irgendwas mit deinem „Copy & Paste“ zu tun.

            Lade aus dem GitHub mal die ZIP Datei runter, entpacken und Skript mit User und Passwort anpassen, dann testen.

            Viele GrĂŒĂŸe

            PS: Wie erstellst du das Skript auf dem NAS? Terminal? Oder lÀdst du es mit SFTP hoch? Welches Tool verwendest du?

  29. Avatar von Martin
    Martin

    @Nico

    Danke fĂŒr deine Antwort.

    Hab jetzt das Skript aus der ZIP von Github entpackt und die Variablen angepasst (EOL Format war logischerweise schon korrekt), hab dann die Datei via WinSCP aufs NAS geladen und mit chmod +x ausfĂŒhrbar gemacht, bekomme aber den gleichen Fehler:/

    Erstelle ich das Skript im SSH Terminal via nano, kommt das Gleiche raus – es will einfach nicht funktionieren!

    1. Avatar von _nico

      Ich kann es nicht verstehen! Vor allem weil es bei anderen mit Synology NAS funktioniert …

      Hast du eventuell eine besondere Firmware drauf? Alt oder neu?

      Gruß Nico

      1. Avatar von Martin
        Martin

        Hallo, ich kann es auch beim besten Willen nicht verstehen.

        Ist ja quasi unabhĂ€ngig vom NAS – wenn ich das Script im WSL erstelle und starte, kommt genau der gleiche Fehler…

        Firmware beim NAS ist aktuell und nichts modifiziert…

        Ich teste mal ein anderes Notebook aus, hab ja noch zwei weitere zur VerfĂŒgung…

        1. Avatar von _nico

          Stimmt, hattest ja auch Ubuntu getestet. Irgendwas passt da bei deinem Doing nicht.

          Können gerne mal TeamViewer machen. 🙂

          Gruß

          1. Avatar von Martin
            Martin

            Genau, und auf dem 2. GerĂ€t eben im WSL genau den gleichen Fehler…

            Hab dir schon via Mail geantwortet;)

  30. Avatar von Martin
    Martin

    Heureka es funktioniert!

    Eigentlich darf ich den Fehler gar nicht nennen *duckundweg*

    Ich hatte fĂŒr die angebotene TeamviewerSession von Nico (danke nochmal dafĂŒr) eine separate Windows 10 VM aufgesetzt und dort Ubuntu via WSLv1 installiert (WSL2 geht nicht da der Ryzen 7 im Host keine Nested Virtualization kann) – fĂŒr die Session hatte ich auch das mit KeePass generierte Passwort auf ein Standardpasswort fĂŒr den „Rebootbenutzer“ auf der entfernten FritzBox gesetzt.

    Im Windows 10 habe ich dann das Skript via Github geladen und die Parameter angepasst und via WSL Bash problemlos ausgefĂŒhrt!

    Danach habe ich das Script auf den Host kopiert und konnte es dort via WSL Bash auch problemlos starten.

    Als ich dann die ursprĂŒnglichen Parameter fĂŒr die loake FritzBox in das Skript eingefĂŒgt habe, ging es wieder nicht!

    Habe dann beide Scripte in Notepad++ verglichen.
    Bild: https://abload.de/image.php?img=errfujzd.png

    Danach war es dann einfach –> es lag am generierten Kennwort – dies beinhaltete AnfĂŒhrungsstriche!

    Mit einem anderen Kennwort wurde dann die for-Schleife auf farblich wieder korrekt im Editor angezeigt und das Skript konnte problemlos auch vom NAS gestartet werden.

    Mit Skript 1 werden die beiden WLAN-Repeater am entfernten Ort neugestartet und mit Skript 2 wird eine Minute spĂ€ter die entfernte FritzBox und dann die lokale FritzBox neugestartet – ein manuelles Starten der beiden Aufgaben auf dem NAS funktioniert problemlos und der Tunnel stand nach ca. 2min wieder 🙂

    Ende gut, alles gut 🙂

    Danke nochmal an Wolfsrabe und Nico fĂŒr die UnterstĂŒtzung hier – hĂ€tte Nico nicht seine Remotehilfe angeboten, hĂ€tte ich vermutlich nicht das Passwort geĂ€ndert und den Fehler vermutlich nie gefunden

  31. Avatar von Gabriel
    Gabriel

    Hallo zusammen,
    ich habe 2x FB7590 + 2 Repeater und wĂŒrde diese hin und wieder manuell neu starten. Ich wĂŒrde das gerne von meinem Windows PC initiieren. Irgendeine Idee wie ich das hinkriege?

    Gruß

    1. Avatar von _nico

      Hi Gabriel,

      dazu mĂŒsste mein Bash-Skript (Linux) in ein Powershell-Skript (Windows) hĂ€ndisch und in mĂŒhevoller Kleinarbeit umgeschrieben werden.

      Prinzipiell sicher möglich! Ich bin kein Powershell-Experte, brÀuchte da mit Recherche sicherlich 1-3 Stunden.

      Gruß Nico

      1. Avatar von Martin
        Martin

        Oder das ganze in WSL laufen lassen, klappt auch, dann muss man nix umschreiben…

  32. Avatar von tandir
    tandir

    Hi, weiß jemand, wie man wie man ĂŒber Kurzbefehle oder Scriptable ein Neustart bei der Fritzbox auslössen könnte?

    https://apps.apple.com/de/app/shortcuts/id915249334
    https://apps.apple.com/de/app/scriptable/id1405459188

  33. Avatar von JohnD
    JohnD

    Funktioniert tadellos mit FritzBox 6820 v3 (LTE-Fritzbox). 🙂
    Danke nicoh88

  34. […] een aangepast script kun je de Fritzbox router laten herstarten met een opdracht die de NAS aan de router geeft. Net […]

  35. Avatar von Volker
    Volker

    Moin,
    ich bekomme das partout nicht hin. Ich habe hier einen alten Nettop PC mit Ubuntu 20.04.4 am laufen. Habe dort das Script auf Github im RAW Format offen und in eine Datei kopiert die ich per sudo nano fritz-reboot.sh erstellt habe. IP und User/PW angepasst und gespeichert.
    Rufe ich die nun im Terminal per sudo ./fritz-reboot.sh auf bekomme ich immer die RĂŒckmeldung Befehl nicht gefunden.
    Was mache ich falsch? Bin unter Linux echt nicht gut zu Fuß.

    gruß,
    Volker

    1. Avatar von _nico

      Hi Volker,

      darf das Skript ausgefĂŒhrt werden? Danach nochmal versuchen.

      chmod 777 fritz-reboot.sh

      Viele GrĂŒĂŸe

      1. Avatar von Volker Arndt
        Volker Arndt

        Moin Nico,

        danke fĂŒr die Antwort. Genau das war das Problem. Nun lĂ€uft das Script und der Repeater startet neu.

        Vielen Dank

      2. Avatar von Volker
        Volker

        Moin,

        leider kann ich die Scripte nur manuell ausfĂŒhren, per Cron laufen die einfach nicht. Ich bin mit meinem Benutzer angemeldet und die Scripte liegen im Ordner /Dokumente/Scripte

        Im Crontab sind die wie folgt eingetragen:
        47 19 * * 1 Volker /home/volker/Dokumente/Scripte/fritz-rep-reboot.sh

        Auch mit dem User root und dem Pfad geht es nicht. Wo ist mein Fehler?

        1. Avatar von Volker
          Volker

          So, Fehler gefunden – es lĂ€uft jetzt, es war wohl ’nur‘ der falsch geschriebene Username.

          Als Windows User fĂ€llt es mir schwer mich an das Case Sensitive zu gewöhnen. 😉

          1. Avatar von Marco Primus
            Marco Primus

            Seid mir bitte nicht böse aber das ist alles nur keine vernĂŒnftige anleitung fĂŒr jedne zum nachmachen. Ich arbeite fast ausschliessblich mit Linux und Raspberry aber diesen Mist hier habe ich seit 3 tagen nicht ans laufen grberacht. hier ist eindeutig eine berechtigung die nicht funktioniert. sowas ins internet zu stellen ist wirklich eine frechheit. hatte schon eine bessere Anleitung gefunden die ich licher nicht mehr habe aber das hier ist einfach nur ich habe was das funktioniert wie genau musst selbst probieren. 🙁

            Sollte ich sie wiedr finden informiere ich euch gerne darĂŒber ihr könnt mich auch ĂŒber m3d@m3d.at erreichen. sollte ich vergessen es hier zu posten

            Beste GrĂŒĂŸe

  36. Avatar von 3D-Sonic

    Hallo Zusammen ich habe seit der Version 7.57 auf meiner FB 6850 5G immer wieder Probleme das die OberflĂ€che ewig ladet und neuerdings auch das script die box sich seit tagen nicht neu startet. Ja ich habe einiges an der FB verĂ€ndern mĂŒssen seit dem gibts diese Probleme. Aber ich kann mir nicht erklĂ€ren das es damit zusammen hĂ€ngt.

    Was habe ich geÀndert:
    Die IP Range von xxx.xxx.178.x subnet 22
    auf: xxx.xxx.176.x subnet 23.
    Seit dem Zeitpunkt musste ich die IP der FB auch von xxx.xxx.176.254 auf 176.1 Àndern da diese sonst nicht mehr erreichbar war. Zuvor hatte die FB 178.254 ich habe es in der sh Datei angepasst und trotzdem funktioniert der Reboot nicht es kommt auf der FB nichtmal eine anfrage an sofern ich es auf der FB sehen kann. Alles andere wird auch geloggt und zeigt alles korrekt an. Kann mir da jemand helfen dieses Problem zu beseitigen? Die 177.x Range brauche ich unbedingt und eine 23 subnet ist sinnvoll da ich die gerÀte im Hobbyraum und die der wohnung in 2 ip bereiche teile will. Da im 177.x alle server usw. drin sind und das nicht so leicht ist alle GerÀte zu drehen. Was ich auch nicht verstehe ist warum ich ein 176.x bis 177.x subnet 23 machen muss und nicht ein 23 subent mit 177.x bis 178.x erstellen kann.

  37. Avatar von Alex
    Alex

    Bei mir funktioniert das Skript seit dem Update auf 7.57 auch nicht mehr.

  38. Avatar von Hugo Balder
    Hugo Balder

    Hallo Nico,
    vielen Dank fĂŒr Dein Skript – Stand 6.11.2023 heute funktioniert es immer noch perfekt.
    Bei mir geht es um einen Fritz Repeater 1750E der nach einiger Zeit immer zickt und das Internet langsam ist. FritzOS ist die 7.27.
    Vorhin auf den Raspberry das Skript kopiert, chmod +x, nur die IP-Adresse vom Repeater und das Passwort eingetragen, laufen lassen und der rebootet wunderbar !!!
    Viele GrĂŒĂŸe

Antworte auf den Kommentar von Sebastian Weiß Antwort abbrechen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert