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 über Aliase, virtuelle Geräte und Kategorien

    • 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 @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
                    • liv-in-sky
                      liv-in-sky @rebel85 last edited by

                      @rebel85

                      wie schon erwähnt - nicht alle festplatten auf einmal sondern nur eine platte auswählen und anschliessend senden - dann die nächste platte

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

                      funktioniert das?

                      wie macht man ein script für linux (bash-script):

                      • ich mache solche scripte in den ordner : /usr/local/bin
                      • cd /usr/local/bin
                      • dann "sudo nano tempcpu" (öffnet eine datei mit dem namen tempcpu und darin wird das script reinkopiert - die erste zeile muss "#!/bin/bash" heißen
                      • mit taste "alt" und x wird wird der editor geschlossen und mit "j" in der abfrage gespeichert
                      • anschliessend führt man den befehl "sudo chmod +x tempcpu" aus, dass macht das script ausführbar
                      • danach wird das in crontab eingetragen

                      wenn du probleme hast , schlage ich anydesk vor - dann zeig ich dir gerne, wie das funktioniert - sonst schreib ich hier ein linux manual

                      R 1 Reply Last reply Reply Quote 1
                      • 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

                        wie schon erwähnt - nicht alle festplatten auf einmal sondern nur eine platte auswählen und anschliessend senden - dann die nächste platte

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

                        funktioniert das?

                        wie macht man ein script für linux (bash-script):

                        • ich mache solche scripte in den ordner : /usr/local/bin
                        • cd /usr/local/bin
                        • dann "sudo nano tempcpu" (öffnet eine datei mit dem namen tempcpu und darin wird das script reinkopiert - die erste zeile muss "#!/bin/bash" heißen
                        • mit taste "alt" und x wird wird der editor geschlossen und mit "j" in der abfrage gespeichert
                        • anschliessend führt man den befehl "sudo chmod +x tempcpu" aus, dass macht das script ausführbar
                        • danach wird das in crontab eingetragen

                        wenn du probleme hast , schlage ich anydesk vor - dann zeig ich dir gerne, wie das funktioniert - sonst schreib ich hier ein linux manual

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

                        muss es heisen, die klammer ist nur dafür da wenn man mehrere laufwerke abfragt und das dann die werte chonologisch untereinander aufgelistet ausgegeben werden.
                        ich würde sagen wir machen morgen weiter.
                        morgen heist es wieder früh raus.

                        ich werd dann man die skripte erstellen mit was drinnen.
                        und mir mal anydesk angucken.
                        bis morgen

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

                          @rebel85 geht klar - bis dann

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

                            Problem gelöst mit der hilfe von liv-in-sky via telefonat und anydesk.

                            Temperaturen:

                            #!/bin/bash
                            
                            var=`sudo hddtemp /dev/sdb | awk '{print $4}' | awk '{print substr($1, length($0)-3,2)}'`
                            curl "http://192.168.178.42:8087/set/0_userdata.0.NAS.HDD_Temp_sdb?value=$var"
                            var=`sudo hddtemp /dev/sdc | awk '{print $4}' | awk '{print substr($1, length($0)-3,2)}'`
                            curl "http://192.168.178.42:8087/set/0_userdata.0.NAS.HDD_Temp_sdc?value=$var"
                            var=`sudo hddtemp /dev/sdd | awk '{print $4}' | awk '{print substr($1, length($0)-3,2)}'`
                            curl "http://192.168.178.42:8087/set/0_userdata.0.NAS.HDD_Temp_sdd?value=$var"
                            var=`sudo hddtemp /dev/sde | awk '{print $4}' | awk '{print substr($1, length($0)-3,2)}'`
                            curl "http://192.168.178.42:8087/set/0_userdata.0.NAS.HDD_Temp_sde?value=$var"
                            var=`sudo hddtemp /dev/sdf | awk '{print $4}' | awk '{print substr($1, length($0)-3,2)}'`
                            curl "http://192.168.178.42:8087/set/0_userdata.0.NAS.HDD_Temp_sdf?value=$var"
                            var=`sudo hddtemp /dev/sdg | awk '{print $4}' | awk '{print substr($1, length($0)-3,2)}'`
                            curl "http://192.168.178.42:8087/set/0_userdata.0.NAS.HDD_Temp_sdg?value=$var"
                            var=`sensors | grep Package -m 1 | awk '{print $4}' | awk '{print substr($1, length($0)-5,4)}'`
                            curl "http://192.168.178.42:8087/set/0_userdata.0.NAS.CPU_Temp?value=$var"
                            

                            Auslastung

                            #!/bin/bash
                            
                            var=`vmstat 1 15 | awk 'NR==10{print 100-$15}'`
                            curl "http://192.168.178.42:8087/set/0_userdata.0.NAS.CPU_last?value=$var"
                            
                            var=`vmstat 1 15 | awk 'NR==10{print 100-$15}'`
                            curl "http://192.168.178.42:8087/set/0_userdata.0.NAS.CPU_last?value=$var"
                            
                            var=`vmstat 1 15 | awk 'NR==10{print 100-$15}'`
                            curl "http://192.168.178.42:8087/set/0_userdata.0.NAS.CPU_last?value=$var"
                            
                            var=`vmstat 1 14 | awk 'NR==10{print 100-$15}'`
                            curl "http://192.168.178.42:8087/set/0_userdata.0.NAS.CPU_last?value=$var"
                            
                            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

                            828
                            Online

                            32.0k
                            Users

                            80.5k
                            Topics

                            1.3m
                            Posts

                            datenpunkt exec extern externer sensor iobroker mqtt datenpunkt nas temperatur ubuntu
                            3
                            24
                            1772
                            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