Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Probleme mit Shell Skript

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    Probleme mit Shell Skript

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

      Hallo zusammen,

      ich habe auf meiner ioBroker Ubuntu-VM ein Shell Skript per Crontab laufen, dass Infos (Uptime, RAM etc.) von ein paar anderen Geräte (TV Receiver, RasPi, Sophos Firewall etc.) abfragt.

      Wird das Skript per Crontab ausgefürt, werden nicht alle Abfragen korrekt ausgeführt und somit einige Werte nicht aktualisiert.

      Führe ich das Skript manuell aus, werden alle Objekte aktualisiert.

      Hier der Contab eintrag

      #Abfrage Infos
      * * * * * sudo /opt/iobroker/skripts/infos.sh
      
      

      Hier ein Auszug vom Shell Skript:

      ###########
      # ESX-NUC #
      ###########
      
      #Uptime
      uptimeesx=$(ssh root@192.168.4.45 uptime | awk '{print $3_$4_$5}')
      iobroker state set javascript.0.uptime.raw.esx-nuc_raw $uptimeesx
      
      
      
      ####################
      # Unifi Controller #
      ####################
      
      #Laufzeit
      uptimeunifi=$(ssh root@192.168.4.61 uptime | awk '{print $3_$4_$5}')
      iobroker state set javascript.0.uptime.raw.unifi_controller_raw $uptimeunifi
      
      #Arbeitsspeicher Auslastung
      memunifi=$(ssh root@192.168.4.61 free | grep Mem | awk '{print $3/1024}')
      iobroker state set javascript.0.ressourcen.unifi.unifi_controller_mem_used $memunifi
      
      
      
      ###########
      # Sophos #
      ###########
      
      #Uptime
      uptime_sophos=$(ssh root@192.168.4.35 uptime | awk '{print $3_$4_$5}')
      iobroker state set javascript.0.uptime.raw.sophos_raw $uptime_sophos
      
      
      
      ############
      # ioBroker #
      ############
      
      #Disk Usage
      usageiobroker=$(df  | grep /dev/sda1 | awk '{print $5}')
      iobroker state set javascript.0.ressourcen.iobroker.iobroker_disk_usage $usageiobroker
      
      #Disk Free Space
      freeiobroker=$(df -h | grep /dev/sda1 | awk '{print $4}')
      freeiobroker=${freeiobroker//G/}
      iobroker state set javascript.0.ressourcen.iobroker.iobroker_disk_free $freeiobroker
      
      

      1 Reply Last reply Reply Quote 0
      • arteck
        arteck Developer Most Active last edited by

        wat... ein cronjob führt nur das aus was in der bash steht.. ulkig

        K 1 Reply Last reply Reply Quote 0
        • K
          Kuddel @arteck last edited by

          @arteck was ist daran ulkig ?

          1 Reply Last reply Reply Quote 0
          • arteck
            arteck Developer Most Active last edited by

            welche werden nicht aktuallisiert ?? sind das immer die gleichen ??

            K 1 Reply Last reply Reply Quote 0
            • K
              Kuddel @arteck last edited by

              @arteck ich habe aktuell einen Workaround hinbekommen,

              Ich habe die Abfrage zur HDD-Auslastung in ein extra Skript kopiert:

              ############
              # ioBroker #
              ############
              
              #Disk Usage
              usageiobroker=$(df  | grep /dev/sda1 | awk '{print $5}')
              iobroker state set javascript.0.ressourcen.iobroker.iobroker_disk_usage $usageiobroker
              
              #Disk Free Space
              freeiobroker=$(df -h | grep /dev/sda1 | awk '{print $4}')
              freeiobroker=${freeiobroker//G/}
              iobroker state set javascript.0.ressourcen.iobroker.iobroker_disk_free $freeiobroker
              
              
              
              ###############
              # ioBroker-PI #
              ###############
              
              #Disk Usage
              usagepi=$(ssh root@192.168.4.34 df  | grep /dev/root | awk '{print $5}')
              iobroker state set javascript.0.ressourcen.iobroker-pi.iobroker-pi_disk_usage $usagepi
              
              #Disk Free Space
              freepi=$(ssh root@192.168.4.34 df -h | grep /dev/root | awk '{print $4}')
              freepi=${freepi//G/}
              iobroker state set javascript.0.ressourcen.iobroker-pi.iobroker-pi_disk_free $freepi
              

              Mein erstes Shell-Skript läuft jetzt wieder rund und alle Uptimes etc. werden korrekt ausgewertet.

              Die Abfrage der HDD-Auslastung soll eigentlich alle 10 Minuten laufen, aber der letzte Zeitstempel der Datenobjekte ist von 07:21 Uhr

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

              Support us

              ioBroker
              Community Adapters
              Donate

              748
              Online

              31.8k
              Users

              79.9k
              Topics

              1.3m
              Posts

              javascript
              2
              5
              252
              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