Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. [Gelöst] CPU Temperatur von Proxmox VM

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    [Gelöst] CPU Temperatur von Proxmox VM

    This topic has been deleted. Only users with topic management privileges can see it.
    • marcuskl
      marcuskl @Dr. Bakterius last edited by

      @Dr-Bakterius sagte in CPU Temperatur von Proxmox VM:

      @marcuskl Ich habe meinen vorigen Beitrag noch ergänzt. Vielleicht probierst du auch:

      root@proxmox:~# sensors | grep 'temp1:'
      temp1:        +51.0°C  (crit = +100.0°C)
      root@proxmox:~# sensors | grep 'temp1:' | awk '{print $2}'
      +52.0°C
      root@proxmox:~# sensors | grep 'temp1:' | awk '{print $2}' | cut -c2-3
      51
      root@proxmox:~#
      
      
      root@pve:/usr/local/bin# sensors | grep 'temp1:'
      temp1:        +48.0°C  (crit = +100.0°C)         temp1:            N/A
      root@pve:/usr/local/bin# sensors | grep 'temp1:' | awk '{print $2}'
      +49.0°C
      N/A
      root@pve:/usr/local/bin# sensors | grep 'temp1:' | awk '{print $2}' | cut -c2-3
      49
      /A
      

      So bei mir

      Dr. Bakterius 1 Reply Last reply Reply Quote 0
      • Dr. Bakterius
        Dr. Bakterius Most Active @marcuskl last edited by Dr. Bakterius

        @marcuskl sagte in CPU Temperatur von Proxmox VM:

        curl -g

        Ich glaube ich habe den Fehler gefunden! In der 'curl'-Zeile ist eine Klammer an der falschen Stelle. Versuch mal folgenden Code:

        #!/bin/bash
        
        #ioBroker-Datenpunkt
        DP=info.0.sysinfo.cpu.temperature.main
        
        #ioBroker-IP:Port
        IPP=192.168.0.195:8081
        
        #Systemtemperatur abfragen
        SQL=$(sensors | grep 'temp1:' | awk '{print $2}' | cut -c2-3)
        
        #an ioBroker senden
        curl http://${IPP}/set/${DP}?value=${SQL}
        

        Interessant, dass es bei mir trotzdem funktioniert. Bei Aufruf der Bash-Datei erhalte ich:

        {"id":"info.0.sysinfo.cpu.temperature.main","value":51,"val":51}
        
        C 1 Reply Last reply Reply Quote 0
        • Dr. Bakterius
          Dr. Bakterius Most Active @marcuskl last edited by

          @marcuskl Ach ja, du hast ja zwei Zeilen mit "temp1:". Du kannst statt 'temp1:' auch mal 'Package id 0:' versuchen, dann solltest du nur eine Zeile erhalten.

          liv-in-sky marcuskl 2 Replies Last reply Reply Quote 0
          • liv-in-sky
            liv-in-sky @Dr. Bakterius last edited by

            @Dr-Bakterius

            @marcuskl sagte in CPU Temperatur von Proxmox VM:

            sensors | grep 'temp1:' | awk '{print $2}' | cut -c2-3
            wenn du 2 zeilen mit temp1 hast ginge auch

            sensors | grep 'temp1:' | awk 'NR==1 {print $2}' | cut -c2-3
            1 Reply Last reply Reply Quote 0
            • marcuskl
              marcuskl @Dr. Bakterius last edited by

              @Dr-Bakterius sagte in CPU Temperatur von Proxmox VM:

              @marcuskl Ach ja, du hast ja zwei Zeilen mit "temp1:". Du kannst statt 'temp1:' auch mal 'Package id 0:' versuchen, dann solltest du nur eine Zeile erhalten.

              root@pve:/usr/local/bin# bash cpu_temp_send_iobroker.sh
              {"id":"info.0.sysinfo.cpu.temperature.main","valuroot@pve:/usr/local/bin# bash cpu_temp_send_iobroker.sh
              

              Erstmal mit der Verbesserung funktioniert es auch ohne -g

              Aber es ändert jz den wert auf "d" wenn ich package id 0 nehme

              Dr. Bakterius 1 Reply Last reply Reply Quote 0
              • Dr. Bakterius
                Dr. Bakterius Most Active @marcuskl last edited by Dr. Bakterius

                @marcuskl Dann nimmt er "d " von "package id 0". Versuch es mit dem Befehl von @liv-in-sky oder mit '{print $4}' statt '{print $2}'.

                marcuskl 1 Reply Last reply Reply Quote 0
                • marcuskl
                  marcuskl @Dr. Bakterius last edited by

                  @Dr-Bakterius sagte in CPU Temperatur von Proxmox VM:

                  @marcuskl Dann nimmt er "d " von "package id 0". Versuch es mit dem Befehl von @liv-in-sky oder mit '{print $4}' statt '{print $2}'.

                  root@pve:/usr/local/bin# bash cpu_temp_send_iobroker.sh
                  {"id":"info.0.sysinfo.cpu.temperature.main","value":48,"val":48}root@pve:/usr/local/bin#
                  

                  Ja funktioniert.
                  Super danke euch!!!

                  1 Reply Last reply Reply Quote 0
                  • marcuskl
                    marcuskl last edited by

                    Für alle nochmal das verbesserte Skript:

                    #!/bin/bash
                    
                    #ioBroker-Datenpunkt
                    DP=info.0.sysinfo.cpu.temperature.main
                    
                    #ioBroker-IP:Port
                    IPP=192.168.0.195:8087 
                    
                    #Systemtemperatur abfragen
                    SQL=$(sensors | grep 'temp1:' | awk 'NR==1 {print $2}' | cut -c2-3) 
                    
                    
                    #an ioBroker senden
                    sleep 10
                    SQL=$(sensors | grep 'temp1:' | awk 'NR==1 {print $2}' | cut -c2-3) 
                    curl http://${IPP}/set/${DP}?value=${SQL}
                    sleep 10
                    SQL=$(sensors | grep 'temp1:' | awk 'NR==1 {print $2}' | cut -c2-3) 
                    curl http://${IPP}/set/${DP}?value=${SQL}
                    sleep 10
                    SQL=$(sensors | grep 'temp1:' | awk 'NR==1 {print $2}' | cut -c2-3) 
                    curl http://${IPP}/set/${DP}?value=${SQL}
                    sleep 10
                    SQL=$(sensors | grep 'temp1:' | awk 'NR==1 {print $2}' | cut -c2-3) 
                    curl http://${IPP}/set/${DP}?value=${SQL}
                    sleep 10
                    SQL=$(sensors | grep 'temp1:' | awk 'NR==1 {print $2}' | cut -c2-3) 
                    curl http://${IPP}/set/${DP}?value=${SQL}
                    
                    Dr. Bakterius 1 Reply Last reply Reply Quote 0
                    • Dr. Bakterius
                      Dr. Bakterius Most Active @marcuskl last edited by Dr. Bakterius

                      @marcuskl Freut mich! Dann markiere den Thread bitte noch als "gelöst".

                      Und noch was: Du hast den ersten 'curl'-Befehl vergessen. Also direkt vor 'sleep 10'.

                      1 Reply Last reply Reply Quote 0
                      • marcuskl
                        marcuskl last edited by

                        Der Cronjob will aber nicht laufen

                        Habe einfach bei

                        Crontab -e

                        */1 * * * * /usr/local/bin/cpu_temp_send_iobroker.sh

                        Eingefügt, aber macht nichts.
                        Vergesse ich irgentwas ?

                        1 Reply Last reply Reply Quote 0
                        • marcuskl
                          marcuskl last edited by marcuskl

                          So jetzt aber.

                          Wie ich vorgegangen bin:

                          1. Unter Verzeichnis
                          cd /usr/local/bin/ 
                          

                          gegangen

                          1. Mit Nano Skript angelegt
                          nano cpu_temp_send_iobroker.sh
                          

                          Im Editor folgenden Skript eingefügt:

                          #!/bin/bash
                          
                          #ioBroker-Datenpunkt
                          DP=info.0.sysinfo.cpu.temperature.main
                          
                          #ioBroker-IP:Port
                          IPP=192.168.0.195:8087 
                          
                          #Systemtemperatur abfragen
                          SQL=$(sensors | grep 'temp1:' | awk 'NR==1 {print $2}' | cut -c2-3) 
                          
                          
                          #an ioBroker senden
                          curl http://${IPP}/set/${DP}?value={$SQL} 
                          
                          #Sendet alle 10 Sekunden an iobroker 
                          sleep 10
                          SQL=$(sensors | grep 'temp1:' | awk 'NR==1 {print $2}' | cut -c2-3) 
                          curl http://${IPP}/set/${DP}?value=${SQL}
                          sleep 10
                          SQL=$(sensors | grep 'temp1:' | awk 'NR==1 {print $2}' | cut -c2-3) 
                          curl http://${IPP}/set/${DP}?value=${SQL}
                          sleep 10
                          SQL=$(sensors | grep 'temp1:' | awk 'NR==1 {print $2}' | cut -c2-3) 
                          curl http://${IPP}/set/${DP}?value=${SQL}
                          sleep 10
                          SQL=$(sensors | grep 'temp1:' | awk 'NR==1 {print $2}' | cut -c2-3) 
                          curl http://${IPP}/set/${DP}?value=${SQL}
                          sleep 10
                          SQL=$(sensors | grep 'temp1:' | awk 'NR==1 {print $2}' | cut -c2-3) 
                          curl http://${IPP}/set/${DP}?value=${SQL}
                          

                          Strg+X gespeichert.
                          (Achtung!!! Simple API Adapter erforderlich und dann den Port vom Adapter eintragen)

                          Datenpunkt vom Info Adapter zum Schreiben freigegeben

                          1. Getestet mit:
                          bash /usr/local/bin/cpu_temp_send_iobroker.sh
                          

                          (Ich musste vorher noch Curl installieren)

                          1. Crontab angelegt:
                          crontab -e
                          

                          Ganz unten Zeile eingefügt:

                          * * * * * bash /usr/local/bin/cpu_temp_send_iobroker.sh
                          

                          Fertig, Danke an alle für sie Hilfe !!!

                          liv-in-sky Henning Hi 2 Replies Last reply Reply Quote 1
                          • Homoran
                            Homoran Global Moderator Administrators @Dr. Bakterius last edited by

                            @Dr-Bakterius sagte in CPU Temperatur von Proxmox VM:

                            @Homoran Von dir hätte ich schon erwartet zu wissen was der curl-Befehl macht.

                            So kann man sich täuschen.
                            Auch wenn man es nicht merkt (Danke dafür!) , ich bin der Quoten-Noob im Team

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

                              @marcuskl sagte in [Gelöst] CPU Temperatur von Proxmox VM:

                              Strg+X gespeichert.
                              (Achtung!!! Simple API Adapter erforderlich und dann den Port vom Adapter eintragen)

                              du hast noch das ausführbar machen für das script vergessen

                              chmod +x cpu_temp_send_iobroker.sh
                              
                              marcuskl 1 Reply Last reply Reply Quote 1
                              • marcuskl
                                marcuskl @liv-in-sky last edited by

                                @liv-in-sky sagte in [Gelöst] CPU Temperatur von Proxmox VM:

                                @marcuskl sagte in [Gelöst] CPU Temperatur von Proxmox VM:

                                Strg+X gespeichert.
                                (Achtung!!! Simple API Adapter erforderlich und dann den Port vom Adapter eintragen)

                                du hast noch das ausführbar machen für das script vergessen

                                chmod +x cpu_temp_send_iobroker.sh
                                

                                Das habe ich aber nicht gemacht.
                                Wofür ist das ?

                                BBTown 1 Reply Last reply Reply Quote 0
                                • BBTown
                                  BBTown @marcuskl last edited by BBTown

                                  @marcuskl damit wird eine Datei unter Linux "ausführbar"
                                  wenn Du in einem Linux-Verzeichnis den Befehle

                                  ls
                                  

                                  eingibst, dann bekommst Du eine Liste der Dateien und Unterverzeichnisse angezeigt

                                  Wenn Du den Befehl allerdings als

                                  ls -la
                                  

                                  eingibst, dann werden dir auch die "Berechtigungen" (lesen, schreiben, ausführen) angezeigt.

                                  Google mal nach "chmod" oder "Linux chmod"

                                  marcuskl 1 Reply Last reply Reply Quote 0
                                  • marcuskl
                                    marcuskl @BBTown last edited by

                                    @BBTown sagte in [Gelöst] CPU Temperatur von Proxmox VM:

                                    @marcuskl damit wird eine Datei unter Linux "ausführbar"
                                    wenn Du in einem Linux-Verzeichnis den Befehle

                                    ls
                                    

                                    eingibst, dann bekommst Due eine Liste der Dateien und Unterverzeichnisse angezeigt

                                    Wenn Du den Befehl allerdings als

                                    ls -la
                                    

                                    eingibst, dann werden dir auch die "Berechtigungen" (lesen, schreiben, ausführen) angezeigt.

                                    Google mal nach "chmod" oder "Linux chmod"

                                    Kann des sein, dass deswegen nicht gleich der Cronjob funktioniert hat ?
                                    Ich habe jz im Cron "Bash" mit in den Cron geschrieben, dann ging es erst.

                                    BBTown Dr. Bakterius 2 Replies Last reply Reply Quote 0
                                    • BBTown
                                      BBTown @marcuskl last edited by BBTown

                                      @marcuskl sagte in [Gelöst] CPU Temperatur von Proxmox VM:

                                      Kann des sein, dass deswegen nicht gleich der Cronjob funktioniert hat ?
                                      Ich habe jz im Cron "Bash" mit in den Cron geschrieben, dann ging es erst.

                                      Schau mal hier
                                      f235e59a-ce4f-4605-8191-378e5b0512ba-grafik.png

                                      marcuskl 1 Reply Last reply Reply Quote 1
                                      • marcuskl
                                        marcuskl @BBTown last edited by

                                        @BBTown sagte in [Gelöst] CPU Temperatur von Proxmox VM:

                                        @marcuskl sagte in [Gelöst] CPU Temperatur von Proxmox VM:

                                        Kann des sein, dass deswegen nicht gleich der Cronjob funktioniert hat ?
                                        Ich habe jz im Cron "Bash" mit in den Cron geschrieben, dann ging es erst.

                                        Schau mal hier
                                        f235e59a-ce4f-4605-8191-378e5b0512ba-grafik.png

                                        Ok danke, dass wusste ich nicht.

                                        BBTown 1 Reply Last reply Reply Quote 0
                                        • BBTown
                                          BBTown @marcuskl last edited by

                                          @marcuskl sagte in [Gelöst] CPU Temperatur von Proxmox VM:

                                          Ok danke, dass wusste ich nicht.

                                          Das ist ja auch nicht schlimm, dafür ist ja ein Forum da 😉

                                          1 Reply Last reply Reply Quote 0
                                          • Dr. Bakterius
                                            Dr. Bakterius Most Active @marcuskl last edited by

                                            @marcuskl sagte in [Gelöst] CPU Temperatur von Proxmox VM:

                                            Kann des sein, dass deswegen nicht gleich der Cronjob funktioniert hat ?
                                            Ich habe jz im Cron "Bash" mit in den Cron geschrieben, dann ging es erst.

                                            Richtig, entweder das Skript mit Bash aufrufen oder direkt ausführbar machen. Führt beides ans Ziel.

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            1.0k
                                            Online

                                            31.7k
                                            Users

                                            79.7k
                                            Topics

                                            1.3m
                                            Posts

                                            blockly javascript monitoring
                                            31
                                            129
                                            19975
                                            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