Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Praktische Anwendungen (Showcase)
  4. Qnap NAS von Iobroker aus herunterfahren

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    15
    1
    638

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    630

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    1.9k

Qnap NAS von Iobroker aus herunterfahren

Geplant Angeheftet Gesperrt Verschoben Praktische Anwendungen (Showcase)
11 Beiträge 4 Kommentatoren 1.3k Aufrufe 6 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • ? Offline
    ? Offline
    Ein ehemaliger Benutzer
    schrieb am zuletzt editiert von Ein ehemaliger Benutzer
    #1

    @BananaJoe

    Hier die gewünschte Beschreibung QNAP von Iobroker aus herunterfahren zu lassen indem ein DP gesetzt wird, wie besprochen in [Problem mit dem Blockly-Block "exec"]
    Die Idee mit dem Qnap runterfahren kam, als ich den "Core Temperaturen zu Iobroker Beitrag hier aus dem Forum um die Möglichkeit erweitert hatte Proxmox (z.B. bei Stromausfall mit USV) von Iobroker heraus runter fahren zu lassen.
    Script zum schicken der Core Temperaturen und Shutdown von Proxmox
    Qnap herunterfahren von Iobroker aus:

    Ziel soll sein einen DP auf true zu setzen und die Qnap fährt eigenständig runter. Hoch fahren klappt ja bereits über den WOL Befehl.

    Vorbereitung im Iobroker, Erstellung eines DP
    0_userdata.0.System.nas.shutdown

    0_userdata.0.System.nas.shutdown
    

    Per ssh auf der Qnap einloggen (Putty)
    login admin passwort

    cd /share/homes
    (DP1 und IPP anpassen)
    vim shutdown.sh

    #!/bin/bash
    #ioBroker-Datenpunkt der den Shutdown auslöst
    DP1=0_userdata.0.System.nas.shutdown
    #ioBroker-IP:Port
    IPP=192.168.0.222:8087
    
    # ioBroker-Datenpunkt auslesen
    DPSD=$(wget -qO- http://${IPP}/getPlainValue/${DP1})
    # Wenn Datenpunkt für Shutdown gesetzt
    if [ $DPSD = 'true' ]
    then
       # kurz warten
       sleep 10
       # Rueckmeldung an ioBroker senden und DP auf false
    curl http://${IPP}/set/${DP1}?value=false
       sleep 10
       # System standby/shutdown
       #echo mem > /sys/power/state
       /sbin/poweroff
    fi
    
    

    [ESC] :wq für speichern und schliessen
    [ESC] :q! für quit ohne speichern
    (nochmal reingehen und angucken!)

    Ausführbar machen:
    chmod +x shutdown.sh
    testen (DP steht auf false)
    Qnap sollte nach Aufruf des Scripts anbleiben
    nach setzen des DP auf true und Aufruf des Scrips sollte Qnap runterfahren

    Nun eine Zeile (ganz unten) hinzufügen ([EINFG]:
    (ACHTUNG, der übliche Weg mit crontab -e funktioniert, aber nur bis zum nä. reboot)

    vim /etc/config/crontab

    * * * * * /bin/sh /share/homes/shutdown.sh > /dev/null 2>&1
    

    Mit [ESC]:wq Speichern und schließen, Crontab Dienst neu starten

    crontab /etc/config/crontab && /etc/init.d/crond.sh restart
    

    Prüfen ob eingetragen:

    crontab -l
    
    0 12 * * * /mnt/ext/opt/LicenseCenter/bin/qlicense_tool local_check
    0 0 * * * /usr/local/sbin/qsh nc.archive >/dev/null 2>&1
    45 15 * * * /mnt/ext/opt/QcloudSSLCertificate/bin/ssl_agent_cli
    * * * * * /bin/sh /share/homes/shutdown.sh > /dev/null 2>&1
    

    0f5f8940-1c28-43dc-9295-f876ec1ac7c7-image.png
    Soweit so gut, es funktioniert und übersteht einen reboot/neustart! Zum Schluss noch die Logik für Alexa:
    411fffbb-c6d7-43a3-a580-8982b596040b-image.png

    Der DP Nas1starten triggert den WOL Skript, somit funktioniert „Alexa, schalte NAS ein“ UND „Alexa, schalte NAS aus“

    createState("javascript.0.NAS1Starten", 0);   // Generiert beim starten den Datenpunkt, wenn nicht vorhanden
    var wol = require('wake_on_lan');         // Lädt von ioBroker die das nötige Paket
    var myNAS1 = "00:08:9B:E6:7F:C0";         // MAC definieren
    // Ab hier automatisch
    on({id: "javascript.0.NAS1Starten", change: 'any'}, function (obj) {
       wol.wake(myNAS1);
       log("Script WOL - NAS 1 gestartet", "info");
        }
    );
    
    N 1 Antwort Letzte Antwort
    2
    • B Offline
      B Offline
      BigMike71
      schrieb am zuletzt editiert von
      #2

      Vielen Dank!
      Benutze zwar kein Alexa, aber dafür eine Sofabaton X1s Fernbedienung und damit funktioniert es auch wunderbar :+1:

      1 Antwort Letzte Antwort
      0
      • ? Ein ehemaliger Benutzer

        @BananaJoe

        Hier die gewünschte Beschreibung QNAP von Iobroker aus herunterfahren zu lassen indem ein DP gesetzt wird, wie besprochen in [Problem mit dem Blockly-Block "exec"]
        Die Idee mit dem Qnap runterfahren kam, als ich den "Core Temperaturen zu Iobroker Beitrag hier aus dem Forum um die Möglichkeit erweitert hatte Proxmox (z.B. bei Stromausfall mit USV) von Iobroker heraus runter fahren zu lassen.
        Script zum schicken der Core Temperaturen und Shutdown von Proxmox
        Qnap herunterfahren von Iobroker aus:

        Ziel soll sein einen DP auf true zu setzen und die Qnap fährt eigenständig runter. Hoch fahren klappt ja bereits über den WOL Befehl.

        Vorbereitung im Iobroker, Erstellung eines DP
        0_userdata.0.System.nas.shutdown

        0_userdata.0.System.nas.shutdown
        

        Per ssh auf der Qnap einloggen (Putty)
        login admin passwort

        cd /share/homes
        (DP1 und IPP anpassen)
        vim shutdown.sh

        #!/bin/bash
        #ioBroker-Datenpunkt der den Shutdown auslöst
        DP1=0_userdata.0.System.nas.shutdown
        #ioBroker-IP:Port
        IPP=192.168.0.222:8087
        
        # ioBroker-Datenpunkt auslesen
        DPSD=$(wget -qO- http://${IPP}/getPlainValue/${DP1})
        # Wenn Datenpunkt für Shutdown gesetzt
        if [ $DPSD = 'true' ]
        then
           # kurz warten
           sleep 10
           # Rueckmeldung an ioBroker senden und DP auf false
        curl http://${IPP}/set/${DP1}?value=false
           sleep 10
           # System standby/shutdown
           #echo mem > /sys/power/state
           /sbin/poweroff
        fi
        
        

        [ESC] :wq für speichern und schliessen
        [ESC] :q! für quit ohne speichern
        (nochmal reingehen und angucken!)

        Ausführbar machen:
        chmod +x shutdown.sh
        testen (DP steht auf false)
        Qnap sollte nach Aufruf des Scripts anbleiben
        nach setzen des DP auf true und Aufruf des Scrips sollte Qnap runterfahren

        Nun eine Zeile (ganz unten) hinzufügen ([EINFG]:
        (ACHTUNG, der übliche Weg mit crontab -e funktioniert, aber nur bis zum nä. reboot)

        vim /etc/config/crontab

        * * * * * /bin/sh /share/homes/shutdown.sh > /dev/null 2>&1
        

        Mit [ESC]:wq Speichern und schließen, Crontab Dienst neu starten

        crontab /etc/config/crontab && /etc/init.d/crond.sh restart
        

        Prüfen ob eingetragen:

        crontab -l
        
        0 12 * * * /mnt/ext/opt/LicenseCenter/bin/qlicense_tool local_check
        0 0 * * * /usr/local/sbin/qsh nc.archive >/dev/null 2>&1
        45 15 * * * /mnt/ext/opt/QcloudSSLCertificate/bin/ssl_agent_cli
        * * * * * /bin/sh /share/homes/shutdown.sh > /dev/null 2>&1
        

        0f5f8940-1c28-43dc-9295-f876ec1ac7c7-image.png
        Soweit so gut, es funktioniert und übersteht einen reboot/neustart! Zum Schluss noch die Logik für Alexa:
        411fffbb-c6d7-43a3-a580-8982b596040b-image.png

        Der DP Nas1starten triggert den WOL Skript, somit funktioniert „Alexa, schalte NAS ein“ UND „Alexa, schalte NAS aus“

        createState("javascript.0.NAS1Starten", 0);   // Generiert beim starten den Datenpunkt, wenn nicht vorhanden
        var wol = require('wake_on_lan');         // Lädt von ioBroker die das nötige Paket
        var myNAS1 = "00:08:9B:E6:7F:C0";         // MAC definieren
        // Ab hier automatisch
        on({id: "javascript.0.NAS1Starten", change: 'any'}, function (obj) {
           wol.wake(myNAS1);
           log("Script WOL - NAS 1 gestartet", "info");
            }
        );
        
        N Offline
        N Offline
        Nogger82
        schrieb am zuletzt editiert von
        #3

        @j_paul Ich hole das mal wieder hoch, da ich auch gerne meine Qnap über iob herunterfahren möchte. Allerdings reagiert mein qnap nicht darauf.
        IPP habe ich auf die meines iob angepasst. Muss ich den Port auch auf 8087 schreiben oder so, bein direkten Zugriff auf iob, also 8081?
        Wenn ich das Skript mit bash shutdown.sh ausführe, schmeißt er folgenden Fehler raus:
        shutdown.sh: line 17: [: too many arguments
        Das wäre diese Reihe: if [ $DPSD = 'true' ]

        Kannst du mir evtl weiterhelfen? Wenn weitere Infos benötigt werden, reiche ich diese gern nach.

        ? 1 Antwort Letzte Antwort
        0
        • N Nogger82

          @j_paul Ich hole das mal wieder hoch, da ich auch gerne meine Qnap über iob herunterfahren möchte. Allerdings reagiert mein qnap nicht darauf.
          IPP habe ich auf die meines iob angepasst. Muss ich den Port auch auf 8087 schreiben oder so, bein direkten Zugriff auf iob, also 8081?
          Wenn ich das Skript mit bash shutdown.sh ausführe, schmeißt er folgenden Fehler raus:
          shutdown.sh: line 17: [: too many arguments
          Das wäre diese Reihe: if [ $DPSD = 'true' ]

          Kannst du mir evtl weiterhelfen? Wenn weitere Infos benötigt werden, reiche ich diese gern nach.

          ? Offline
          ? Offline
          Ein ehemaliger Benutzer
          schrieb am zuletzt editiert von
          #4

          @nogger82
          Simple API Adapter mit laufender Instanz auf Port 8087 hast du?

          N 2 Antworten Letzte Antwort
          0
          • skvarelS Offline
            skvarelS Offline
            skvarel
            Developer
            schrieb am zuletzt editiert von skvarel
            #5

            Für alles, was sich per ssh bedienen lässt, nutze ich den Linux-Control Adapter. Da hast du dann direkt Datenpunkte für deine Befehle.

            #TeamInventwo
            • Autodarts by inventwo
            • vis-inventwo & vis-2-widgets-inventwo
            • vis-icontwo & vis-2-widgets-icontwo

            ? 1 Antwort Letzte Antwort
            0
            • skvarelS skvarel

              Für alles, was sich per ssh bedienen lässt, nutze ich den Linux-Control Adapter. Da hast du dann direkt Datenpunkte für deine Befehle.

              ? Offline
              ? Offline
              Ein ehemaliger Benutzer
              schrieb am zuletzt editiert von
              #6

              @skvarel
              Es kann gute Gründe geben die Root Rechte von einem Host (NAS, Proxmox usw.) nicht in die Weltgeschichte zu verteilen, sondern die Rechte und die Logik auf dem Host zu belassen, mal abgesehen davon, dass es wenn es von Iobroker Seite aus reicht einen einzelnen DP auf true zu setzen, anstatt einen Adapter zu installieren, wenn dies der einzige UseCase dafür sein sollte.

              1 Antwort Letzte Antwort
              0
              • ? Ein ehemaliger Benutzer

                @nogger82
                Simple API Adapter mit laufender Instanz auf Port 8087 hast du?

                N Offline
                N Offline
                Nogger82
                schrieb am zuletzt editiert von
                #7

                @j_paul den habe ich in der tat nicht laufen, nein. das guck ich mir an.

                1 Antwort Letzte Antwort
                0
                • ? Ein ehemaliger Benutzer

                  @nogger82
                  Simple API Adapter mit laufender Instanz auf Port 8087 hast du?

                  N Offline
                  N Offline
                  Nogger82
                  schrieb am zuletzt editiert von
                  #8

                  @j_paul

                  Bei mir siehts wie folgt aus. Bin leider kein Experte in Sachen Linux.

                  Der DP1 ist im iob genau so angelegt.

                  #!/bin/bash
                  
                  #ioBroker-Datenpunkt der den Shutdown auslöst
                  
                  DP1=0_userdata.0.System.nas.shutdown
                  
                  #ioBroker-IP:Port
                  
                  IPP=10.10.10.2:8087
                  
                  
                  # ioBroker-Datenpunkt auslesen
                  
                  DPSD=$(wget -qO- http://${IPP}/getPlainValue/${DP1})
                  
                  # Wenn Datenpunkt für Shutdown gesetzt
                  
                  if [ DPSD = 'true' ]
                  
                  then
                  
                     # kurz warten
                  
                     sleep 10
                  
                     # Rueckmeldung an ioBroker senden und DP auf false
                  
                  curl http://${IPP}/set/${DP1}?value=false
                  
                     sleep 10
                  
                     # System standby/shutdown
                  
                     #echo mem > /sys/power/state
                  
                     /sbin/poweroff
                  
                  fi
                  
                  

                  e13978e0-69bc-48a5-bbd0-a2e0f2b18819-grafik.png

                  ? 1 Antwort Letzte Antwort
                  0
                  • N Nogger82

                    @j_paul

                    Bei mir siehts wie folgt aus. Bin leider kein Experte in Sachen Linux.

                    Der DP1 ist im iob genau so angelegt.

                    #!/bin/bash
                    
                    #ioBroker-Datenpunkt der den Shutdown auslöst
                    
                    DP1=0_userdata.0.System.nas.shutdown
                    
                    #ioBroker-IP:Port
                    
                    IPP=10.10.10.2:8087
                    
                    
                    # ioBroker-Datenpunkt auslesen
                    
                    DPSD=$(wget -qO- http://${IPP}/getPlainValue/${DP1})
                    
                    # Wenn Datenpunkt für Shutdown gesetzt
                    
                    if [ DPSD = 'true' ]
                    
                    then
                    
                       # kurz warten
                    
                       sleep 10
                    
                       # Rueckmeldung an ioBroker senden und DP auf false
                    
                    curl http://${IPP}/set/${DP1}?value=false
                    
                       sleep 10
                    
                       # System standby/shutdown
                    
                       #echo mem > /sys/power/state
                    
                       /sbin/poweroff
                    
                    fi
                    
                    

                    e13978e0-69bc-48a5-bbd0-a2e0f2b18819-grafik.png

                    ? Offline
                    ? Offline
                    Ein ehemaliger Benutzer
                    schrieb am zuletzt editiert von
                    #9

                    @nogger82
                    Zum testen, kannst du als Benutzer „admin“ nehmen und wenn das funktioniert, ändern in „Sascha“. Dann musst du evtl. die Rechte für den DP anpassen.
                    Klappt das denn soweit?

                    N 2 Antworten Letzte Antwort
                    0
                    • ? Ein ehemaliger Benutzer

                      @nogger82
                      Zum testen, kannst du als Benutzer „admin“ nehmen und wenn das funktioniert, ändern in „Sascha“. Dann musst du evtl. die Rechte für den DP anpassen.
                      Klappt das denn soweit?

                      N Offline
                      N Offline
                      Nogger82
                      schrieb am zuletzt editiert von Nogger82
                      #10

                      Hier stand grad Müll...

                      1 Antwort Letzte Antwort
                      0
                      • ? Ein ehemaliger Benutzer

                        @nogger82
                        Zum testen, kannst du als Benutzer „admin“ nehmen und wenn das funktioniert, ändern in „Sascha“. Dann musst du evtl. die Rechte für den DP anpassen.
                        Klappt das denn soweit?

                        N Offline
                        N Offline
                        Nogger82
                        schrieb am zuletzt editiert von
                        #11

                        @j_paul eine Umstellung auf admin ist nicht möglich.

                        1 Antwort Letzte Antwort
                        0
                        Antworten
                        • In einem neuen Thema antworten
                        Anmelden zum Antworten
                        • Älteste zuerst
                        • Neuste zuerst
                        • Meiste Stimmen


                        Support us

                        ioBroker
                        Community Adapters
                        Donate

                        494

                        Online

                        32.6k

                        Benutzer

                        81.9k

                        Themen

                        1.3m

                        Beiträge
                        Community
                        Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                        ioBroker Community 2014-2025
                        logo
                        • Anmelden

                        • Du hast noch kein Konto? Registrieren

                        • Anmelden oder registrieren, um zu suchen
                        • Erster Beitrag
                          Letzter Beitrag
                        0
                        • Home
                        • Aktuell
                        • Tags
                        • Ungelesen 0
                        • Kategorien
                        • Unreplied
                        • Beliebt
                        • GitHub
                        • Docu
                        • Hilfe