Ankündigung

Einklappen
Keine Ankündigung bisher.

Systeminformationen unter Linux auslesen

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Systeminformationen unter Linux auslesen

    Hallo

    Es gibt einige Tools für Debian / Ubuntu / ... , die Informationen zur CPU, RAM, SWAP, Disk anzeigen können. Woher kommen die angezeigten Informationen?
    Wenn man neben einer realtime Chart auch einen Langzeitlog erstellen möchte, was wäre da der beste Ansatz?
    Manche Tools wie z.B. iostat zeigen die Auslastung in % an. Woher wissen die Tools, was 100% ist? Erkennen die irgendwie dem max. Durchsatz anhand entstehender io-delays?

    Für mich wäre interessant:
    Anzahl der CPU -Kerne / Threads
    Auslastung pro Kern / Thread
    Durchschnittliche Auslastung aller Kerne.
    Disk IO-Delay
    Disk Read/Write (MB/s)
    Disk Speicherplatzbelegung
    Disk IO-Auslastung in Prozent
    RAM Total
    RAM Auslastung
    RAM Reserviert

    Vielleicht hat jemand Erfahrungen oder Ideen, wie ich solche Werte abfragen und mit PHP auswerten & darstellen kann.
    Der Unterschied zwischen dem richtigen Wort und dem beinahe richtigen ist derselbe Unterschied wie zwischen dem Blitz und einem Glühwürmchen.

  • #2
    Einige Informationen stellt dir Linux direkt zur Verfügung, andere wie die HD-Temperatur bekommt nur mit speziell installierten Tools mitgeteit.

    Die Information kann man mit exec auslesen.
    PHP-Code:
    <?php
    // show CPU Cores
    exec("nproc 2>&1"$retArr$retVal);
    echo 
    "Anzahl der CPU-Kerne:"$retArr[0];

    // show information about memory use
    exec("free --mega 2>&1"$retArr$retVal);
    echo 
    "<pre>";
    print_r($retArr);
    echo 
    "</pre>";
    ?>
    Siehe https://www.man7.org/linux/man-pages/man1/free.1.html
    https://man7.org/linux/man-pages/man1/nproc.1.html
    https://linoxide.com/10-tools-monito...-command-line/

    Loggen würde ich das mit PHP aber wohl eher nicht.

    Kommentar


    • #3
      Danke für die Links.
      Wie würdest du dann einen Verlauf / Auswertung der letzten Stunden, Tage, Wochen machen?
      Der Unterschied zwischen dem richtigen Wort und dem beinahe richtigen ist derselbe Unterschied wie zwischen dem Blitz und einem Glühwürmchen.

      Kommentar


      • #4
        Gar nicht, mich interessierst das Thema nicht, aber andere haben das sicher mehr Erfahrung und können etwas dazu sagen.
        Die Frage ist ja auch warum du das in PHP lösen willst?

        Kommentar


        • #5
          Zitat von SteiniKeule Beitrag anzeigen
          Wie würdest du dann einen Verlauf / Auswertung der letzten Stunden, Tage, Wochen machen?
          Ich würde mir eine Software suchen, die das macht.

          Kommentar


          • #6
            Zitat von hellbringer Beitrag anzeigen

            Ich würde mir eine Software suchen, die das macht.
            Hast du irgendwelche Empfehlungen?
            Der Unterschied zwischen dem richtigen Wort und dem beinahe richtigen ist derselbe Unterschied wie zwischen dem Blitz und einem Glühwürmchen.

            Kommentar


            • #7
              Zitat von SteiniKeule Beitrag anzeigen

              Hast du irgendwelche Empfehlungen?
              Nagios, Icinga, CheckMK
              sorry, shift-taste kaputt

              Kommentar


              • #8
                http://nmon.sourceforge.net/pmwiki.php

                Kommentar


                • #9
                  Versuch mal mal z.B. mit:

                  PHP-Code:
                  $json shell_exec('lsblk --json --bytes');
                  $values json_decode($json);
                  var_dump($values); 
                  hier gibt es unter anderem:

                  lscpu --json --bytes
                  lsmem --json --bytes
                  lsblk --json --bytes

                  Kommentar


                  • #10
                    [selbst gelöscht]

                    Kommentar


                    • #11
                      [selbst gelöscht]

                      Kommentar


                      • #12
                        Zum Ursprung der Werte:
                        Tools wie iostat, top, ps o.ä. sind nur Utilities die die Daten Benutzerfreundlicher wiedergeben. Die eigentlichen Informationen kommen aus dem Kernel selbst - über das ProcFS (Prozesse & Legacy) oder SysFS.
                        https://man7.org/linux/man-pages/man5/sysfs.5.html
                        https://man7.org/linux/man-pages/man5/proc.5.html

                        Je nachdem welche Informationen du benötigst, kannst du die Daten auch direkt über o.g. Dateisysteme abfragen, ohne den Umweg über einen extra Prozess zu machen.

                        EDIT:
                        Ergänzend gibt es natürlich Hardwarespezifische Werte, die dann direkt über den Treiber ausgeliefert werden. Beispiel dafür ist S.M.A.R.T, welches bspw. über ATA angesteuert wird.
                        "Software is like Sex, it's best if it's free." - Linus Torvalds

                        Kommentar

                        Lädt...
                        X