Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Gelöst CPU & HDD Temp werte vom UbuntuNAS an IOBroker geben

    NEWS

    • Neues Video auf YouTube

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    Gelöst CPU & HDD Temp werte vom UbuntuNAS an IOBroker geben

    This topic has been deleted. Only users with topic management privileges can see it.
    • R
      rebel85 last edited by rebel85

      vom IO-Broker aus die CPU und HDD Temp Abfragen vom Ubuntu NAS-Server
      hi,
      gibt es eine möglichkeit um vom raspi iobroker auf mein nas zu zu greifen umd sensor werte ab zu fragen?
      lm-sensors und hddtemp ist auf dem nas installiert.
      jetzt ist nur noch die sache das die werte vom raspi abgefragt werden in einer live darstellung in iQuontrol.
      per mqtt adapter müsst es doch gehen oder muss ich mqtt/mosquitto noch richtig über terminal erstellen?
      oder geht es einfach via blockly exec befehlen das man da via ssh befehle sendet und dann die werte abfragt und richtig als objekt ablegt um dann drauf zu zu greifen zu können?
      danke für eure hilfe

      liv-in-sky 1 Reply Last reply Reply Quote 0
      • liv-in-sky
        liv-in-sky @rebel85 last edited by liv-in-sky

        @rebel85 eine möglichkeit wäre ein bash script auf dem ubuntu server mit einem cronjob laufen zu lassen und über curl und dem simpleapi-adapter die daten in einen datenpunkt zu schreiben

        die messung muss ja eh gemacht werden und ich belaste dann lieber direct den server (ubuntu-server) bevor ich alle 15 sekunden ein iobroker script triggere

        beispiel bash script für cpu mit vmstat - 1 aufrufe dieses bash in einer minute - also alle 15 sekunden:

        
        #!/bin/bash
        
        
        var=`vmstat 1 15 | awk 'NR==10{print 100-$15}'`
        curl "http://192.168.178.59:8087/set/javascript.0.GETPROCESS.CPUbyProxmox?value=$var"
        
        
        var=`vmstat 1 15 | awk 'NR==10{print 100-$15}'`
        curl "http://192.168.178.59:8087/set/javascript.0.GETPROCESS.CPUbyProxmox?value=$var"
        
        var=`vmstat 1 15 | awk 'NR==10{print 100-$15}'`
        curl "http://192.168.178.59:8087/set/javascript.0.GETPROCESS.CPUbyProxmox?value=$var"
        
        var=`vmstat 1 14 | awk 'NR==10{print 100-$15}'`
        curl "http://192.168.178.59:8087/set/javascript.0.GETPROCESS.CPUbyProxmox?value=$var"
        
        
        exit 0
        

        beispiel für temp (zusätzlich wird darin ein email gesendet bei über 70 grad) - jede minute:

        
        #!/bin/bash
        tempi=`sensors | grep Package -m 1 | awk '{print $4}' | awk '{print substr($1, length($0)-6,2)}'`
        curl "http://192.168.178.59:8087/set/controll-own.0.mount.CPUTemp?value=$tempi"
        # iobroker state set controll-own.0.mount.CPUTemp $tempi
        if [ $tempi -gt 70 ]; then
        mail -s "$tempi -TEMP-ALARM-IOBROKER-NAS"xxxx@xxxxxxx.de << EOF
        Your TEMP is to high. TEMP: $tempi Grad Celsius
        Your Threshold is 70.1
        EOF
        fi
        
        

        beispiel für crontab - jede minute werden die beiden scripte aufgerufen und somit die datenpunkte geschrieben

        befehl crontab -e

        Image 3.png

        R 1 Reply Last reply Reply Quote 1
        • R
          rebel85 @liv-in-sky last edited by

          @liv-in-sky
          hi, danke für deine antwort. das mit curl und simple api klingt einfach. funktioniert aber wie?
          mein ubuntu server schmeist allso alle 15 sek die cpu und hdd temp ins netzwerk und der iobroker laucht dann nur?

          das untere skript ist identisch mit dem oberen skript.

          liv-in-sky 2 Replies Last reply Reply Quote 0
          • liv-in-sky
            liv-in-sky @rebel85 last edited by

            @rebel85 hast du den simple api adapter installiert ?

            1 Reply Last reply Reply Quote 0
            • liv-in-sky
              liv-in-sky @rebel85 last edited by liv-in-sky

              @rebel85 mein setting für simple api instanz: port ist wichtig, da der für den curl befehl gebraucht wird

              Image 4.png

              dieser adpter/instanz ermöglicht es, mit curl die datenpunkte zu setzen - egal von wo

              • einem anderen linux rechner oder
              • auch mit tools vom handy (tasker) oder
              • von einem batchjob auf einem windows rechner
              R 1 Reply Last reply Reply Quote 0
              • R
                rebel85 @liv-in-sky last edited by

                @liv-in-sky sagte in vom IO-Broker aus die CPU & HDD Temp Abfragen vom Ubuntu NAS:

                @rebel85 mein setting für simple api instanz: port ist wichtig, da der für den curl befehl gebraucht wird

                Image 4.png

                dieser adpter/instanz ermöglicht es, mit curl die datenpunkte zu setzen - egal von wo

                • einem anderen linux rechner oder
                • auch mit tools vom handy (tasker) oder
                • von einem batchjob auf einem windows rechner

                hab ich mal jetzt so angepasst, und ja ist installiert und grün

                liv-in-sky 1 Reply Last reply Reply Quote 0
                • liv-in-sky
                  liv-in-sky @rebel85 last edited by

                  @rebel85 am besten ist es den befehl erstmal von hand auszuführen auf einem terminal

                  und dann schauen ob fehler kommt und/oder ein datenpunkt gesetzt wird

                  auf dem terminal folgenden befehl ausführen

                  curl "http://192.168.178.59:8087/set/controll-own.0.mount.CPUTemp?value=55"
                  

                  du musst aber die ip adresse (192.168.178.59) angleichen und den datenpunkt (controll-own.0.mount.CPUTemp) von dir nehmen - evtl erstmal anlegen unter 0_userdata.0.xxx

                  R 2 Replies Last reply Reply Quote 1
                  • R
                    rebel85 @liv-in-sky last edited by

                    @liv-in-sky
                    wie lege ich den daten punkt an?

                    paul53 1 Reply Last reply Reply Quote 0
                    • paul53
                      paul53 @rebel85 last edited by paul53

                      @rebel85 sagte:

                      wie lege ich den daten punkt an?

                      Siehe Doku, Punkt 8.

                      neuesObjekt.JPG

                      R 1 Reply Last reply Reply Quote 1
                      • R
                        rebel85 @paul53 last edited by

                        @paul53
                        ah ich danchte auf dem ubuntu nas ein datenpunkt anlegen.
                        🙂

                        1 Reply Last reply Reply Quote 0
                        • R
                          rebel85 @liv-in-sky last edited by

                          @liv-in-sky sagte in vom IO-Broker aus die CPU & HDD Temp Abfragen vom Ubuntu NAS:

                          @rebel85 am besten ist es den befehl erstmal von hand auszuführen auf einem terminal

                          und dann schauen ob fehler kommt und/oder ein datenpunkt gesetzt wird

                          auf dem terminal folgenden befehl ausführen

                          curl "http://192.168.178.59:8087/set/controll-own.0.mount.CPUTemp?value=55"
                          

                          du musst aber die ip adresse (192.168.178.59) angleichen und den datenpunkt (controll-own.0.mount.CPUTemp) von dir nehmen - evtl erstmal anlegen unter 0_userdata.0.xxx

                          curl "http://192.168.178.42:8087/set/0_userdata.0.CPU_Temp_NAS?value=55"
                          das funktioniert. hab im iobroker den wert 55

                          liv-in-sky 1 Reply Last reply Reply Quote 0
                          • liv-in-sky
                            liv-in-sky @rebel85 last edited by

                            @rebel85 ok - dann brauchen wir noch vmstat

                            probier mal auf der konsole des ubuntu:

                            vmstat 1 15 | awk 'NR==10{print 100-$15}'
                            

                            kommt da was ?

                            und was wir noch bauchen ist der richtige befehl für die temp
                            auf konsole testen:

                            sensors | grep Package -m 1 | awk '{print $4}' | awk '{print substr($1, length($0)-6,2)}'
                            

                            die temp wird meist anders je hardware ausgegeben daher kann es sein, dass nichts richtiges kommt -
                            deshalb müßte der befehl für dich angeglichen werden

                            kannst du bitte den befehl "sensors" ausgeben und ihn posten - wir könnten es auch über anydesk zusammen machen

                            R 1 Reply Last reply Reply Quote 1
                            • R
                              rebel85 @liv-in-sky last edited by rebel85

                              @liv-in-sky sagte in vom IO-Broker aus die CPU & HDD Temp Abfragen vom Ubuntu NAS:

                              @rebel85 ok - dann brauchen wir noch vmstat

                              probier mal auf der konsole des ubuntu:

                              vmstat 1 15 | awk 'NR==10{print 100-$15}'
                              

                              kommt da was ?

                              da kommt nach ein paar sekunden nur 0

                              und was wir noch bauchen ist der richtige befehl für die temp
                              auf konsole testen:

                              sensors | grep Package -m 1 | awk '{print $4}' | awk '{print substr($1, length($0)-6,2)}'
                              

                              die temp wird meist anders je hardware ausgegeben daher kann es sein, dass nichts richtiges kommt -
                              deshalb müßte der befehl für dich angeglichen werden

                              bekomme da nur +3

                              sensors :
                              acpitz-virtual-0
                              Adapter: Virtual device
                              temp1: +36.0°C (crit = +95.0°C)

                              coretemp-isa-0000
                              Adapter: ISA adapter
                              Package id 0: +36.0°C (high = +105.0°C, crit = +105.0°C)
                              Core 0: +35.0°C (high = +105.0°C, crit = +105.0°C)
                              Core 1: +37.0°C (high = +105.0°C, crit = +105.0°C)
                              Core 2: +37.0°C (high = +105.0°C, crit = +105.0°C)
                              Core 3: +37.0°C (high = +105.0°C, crit = +105.0°C)

                              mit

                              sensors | grep Package -m 1 | awk '{print $4}' | awk '{print substr($1, length($0)-6,7)}'
                              

                              bekomme ich +36.0°C ausgegeben.
                              brauchen tuhe ich aber bestimmt Package id 0: +36.0°C

                              kannst du bitte den befehl "sensors" ausgeben und ihn posten - wir könnten es auch über anydesk zusammen machen

                              was ist anydesk schon wieder? bin selbe noch am anfang um mich mit den ganzen sachen vertraut zu machen und schaue viele Tutorials und how-to videos oder probiere auch mal paar befehls abwandlungen aus. bitte daher um verständnis wenn ich nciht gleich alles richtig verstehe
                              danke

                              liv-in-sky 1 Reply Last reply Reply Quote 0
                              • liv-in-sky
                                liv-in-sky @rebel85 last edited by liv-in-sky

                                @rebel85 ist schon mal gut, dass du bei temp etwas bekommst - da müssen nur noch die °C und das + weg und die genaue position eingestellt werden

                                was passiert wenbn du nur

                                vmstat 1 15
                                

                                eingibst - das dauert 15 sekunden bis das ergebnis kommt

                                R 1 Reply Last reply Reply Quote 0
                                • R
                                  rebel85 @liv-in-sky last edited by rebel85

                                  @liv-in-sky sagte in vom IO-Broker aus die CPU & HDD Temp Abfragen vom Ubuntu NAS:

                                  vmstat 1 15

                                  XXXXXX@anubis-nas:~$ vmstat 1 15
                                  procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
                                  r b swpd free buff cache si so bi bo in cs us sy id wa st
                                  0 0 0 4991568 594324 1496536 0 0 1 5 22 22 0 0 100 0 0
                                  0 0 0 4991700 594324 1496536 0 0 0 0 67 149 0 0 100 0 0
                                  0 0 0 4991700 594324 1496536 0 0 0 0 57 149 0 0 100 0 0
                                  0 0 0 4991700 594328 1496532 0 0 0 112 153 310 0 0 99 0 0
                                  0 0 0 4991700 594328 1496552 0 0 0 0 56 133 0 0 100 0 0
                                  0 0 0 4991700 594328 1496552 0 0 0 0 47 110 0 0 100 0 0
                                  0 0 0 4991700 594328 1496552 0 0 0 0 61 134 0 0 100 0 0
                                  0 0 0 4991700 594328 1496552 0 0 0 0 59 122 0 0 100 0 0
                                  0 0 0 4991700 594328 1496552 0 0 0 0 71 149 0 0 100 0 0
                                  0 0 0 4991700 594328 1496552 0 0 0 0 43 100 0 0 100 0 0
                                  0 0 0 4991700 594328 1496552 0 0 0 0 61 151 0 0 100 0 0
                                  0 0 0 4991700 594328 1496552 0 0 0 0 62 136 0 0 100 0 0
                                  0 0 0 4991700 594328 1496552 0 0 0 0 86 199 0 0 100 0 0
                                  0 0 0 4991700 594328 1496552 0 0 0 52 148 294 0 0 100 0 0
                                  0 0 0 4991700 594328 1496552 0 0 0 56 226 469 0 0 100 0 0

                                  liv-in-sky 1 Reply Last reply Reply Quote 0
                                  • liv-in-sky
                                    liv-in-sky @rebel85 last edited by

                                    @rebel85 ich bastle mal ein wenig - melde mich wieder

                                    R 1 Reply Last reply Reply Quote 0
                                    • R
                                      rebel85 @liv-in-sky last edited by

                                      @liv-in-sky
                                      Danke

                                      hier mal meine versuche:
                                      XXXXXX@anubis-nas:~$ sensors
                                      acpitz-virtual-0
                                      Adapter: Virtual device
                                      temp1: +35.0°C (crit = +95.0°C)

                                      coretemp-isa-0000
                                      Adapter: ISA adapter
                                      Package id 0: +35.0°C (high = +105.0°C, crit = +105.0°C)
                                      Core 0: +35.0°C (high = +105.0°C, crit = +105.0°C)
                                      Core 1: +35.0°C (high = +105.0°C, crit = +105.0°C)
                                      Core 2: +35.0°C (high = +105.0°C, crit = +105.0°C)
                                      Core 3: +35.0°C (high = +105.0°C, crit = +105.0°C)

                                      XXXXXX@anubis-nas:~$ sensors | grep Package -m 1 | awk '{print $4}' | awk '{print substr($1, length($5)-1,7)}'
                                      +38.0°C
                                      XXXXXX@anubis-nas:~$ sensors
                                      acpitz-virtual-0
                                      Adapter: Virtual device
                                      temp1: +35.0°C (crit = +95.0°C)

                                      coretemp-isa-0000
                                      Adapter: ISA adapter
                                      Package id 0: +36.0°C (high = +105.0°C, crit = +105.0°C)
                                      Core 0: +35.0°C (high = +105.0°C, crit = +105.0°C)
                                      Core 1: +35.0°C (high = +105.0°C, crit = +105.0°C)
                                      Core 2: +35.0°C (high = +105.0°C, crit = +105.0°C)
                                      Core 3: +35.0°C (high = +105.0°C, crit = +105.0°C)

                                      XXXXXX@anubis-nas:~$ sensors | grep Package -m 1 | awk '{print $4}' | awk '{print substr($1, length($5)-1,7)}'
                                      +37.0°C

                                      1 Reply Last reply Reply Quote 0
                                      • R
                                        rebel85 last edited by rebel85

                                        sudo hddtemp /dev/sd{b,c,d,e,f,g}
                                        

                                        das müsste dann auch noch rigendwie mitgesendet werden.
                                        wennd as richtig verstehe brauche ich dann für jede HDD im iobroker ein objekt wo die temp dann rein geschrieben wird. ???

                                        XXXXXX@anubis-nas:~$ sudo hddtemp /dev/sd{b,c,d,e,f,g}
                                        /dev/sdb: WDC WD40EFAX-68JH4N0: 28°C
                                        /dev/sdc: WDC WD40EFAX-68JH4N0: 28°C
                                        /dev/sdd: WDC WD40EFRX-68N32N0: 30°C
                                        /dev/sde: WDC WD40EFRX-68N32N0: 29°C
                                        /dev/sdf: WDC WD40EFRX-68N32N0: 29°C
                                        /dev/sdg: WDC WD40EFRX-68N32N0: 29°C

                                        liv-in-sky 1 Reply Last reply Reply Quote 0
                                        • liv-in-sky
                                          liv-in-sky @rebel85 last edited by liv-in-sky

                                          @rebel85 was du sendest obliegt dir - alle temp in einen datenpunkt und dann in iobroker aussortieren oder einzelne datenpunkte verwenden
                                          ich kenne hddtemp nicht - aber da kannst du ja evtl nur eine platte auslesen und mit curl senden , dann die nächste, ..... evtl

                                          sudo hddtemp /dev/sd{b}
                                          

                                          für die sdb platte - du fügst die befehle einfach in das temp script (das erste ganz oben) mit ein - dort siehst du ja wie ein variable erstellt wird und du diese dann versendest mit curl ( wie mit dem vmstat befehl )

                                          sudo hddtemp /dev/sd{b} | awk '{print $4}'
                                          

                                          bei der temp der core ist es auch so - wenn du z.b. +36.0°C sendest musst du in iobroker noch ein script zur verwandlung in eine zahl durchführen - so das nur 36 drin steht - damit kannst du dann triggern oder dir reicht die reine anzeige der temp, dann kannst +36.0°C lassen

                                          zu vmstat - der dritt-letzte wert ist ist die cpu - der wert nennt sich id (spalte) und beträgt die cpu idle zeit - ist also dieser wert 100 ist 100 -100 der load der cpu - also 0 - scheint nicht viel zu tun zu haben 🙂

                                          aber ich denke du kommst auch ohne mich weiter - in linux wird jeder befehl ausgeführt und mit dem | weiter gereicht (pipe) - so findest du am ende der pipe deinen wert

                                          ich mache auch immer trial and error - melde dich, wenn du noch was bestimmtes wissen willst

                                          R 1 Reply Last reply Reply Quote 1
                                          • R
                                            rebel85 @liv-in-sky last edited by rebel85

                                            @liv-in-sky

                                            XXXXXX@anubis-nas:~$ sudo hddtemp /dev/sd{b,c,d,e,f,g} | awk '{print $4}'
                                            

                                            gibt mir nur die festplatten temp werte aus in angegebener reihenfolge.

                                            ja glaube beim skript bauen und speichern dann wo?
                                            das mit dem e-mail versenden hab ich noch nicht ganz verstanden wie das funktioniert....

                                            und glaube beim chrontab -e müsst ich gucken, hab nämlich auf empfehlungen von freunden auf dem ubuntu nas auch webmin laufen wo das ja alles anders und für mich etwas einfacher verwaltet wird beim ubuntu 18.04 lts oder so ähnlich.

                                            ich versuch mal die befehle mal einzeln zu senden zum iobroker

                                            muss der befehlt für die eine hdd temp im bash skript jetzut so lauten?

                                            
                                            var=`vmstat 1 15 |  sudo hddtemp /dev/sdb | awk '{print $4}'`
                                            curl "http://192.168.178.42:8087/set/0_userdata.0.NAS.HDD_Temp?value=$var"
                                            
                                            
                                            liv-in-sky 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate
                                            FAQ Cloud / IOT
                                            HowTo: Node.js-Update
                                            HowTo: Backup/Restore
                                            Downloads
                                            BLOG

                                            816
                                            Online

                                            32.0k
                                            Users

                                            80.5k
                                            Topics

                                            1.3m
                                            Posts

                                            datenpunkt exec extern externer sensor iobroker mqtt datenpunkt nas temperatur ubuntu
                                            3
                                            24
                                            1770
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo