Festplatten-APM verbessert

Nachdem ich mir das ein Script zum Verwalten den Festplatten-Status (ala APM) erstellt hatte, habe ich noch ein wenig weiter geforscht und herausgefunden, dass das auch einfacher und wesentlich effektiver geht.

Der Kernel hat selbst eine Tabelle in der alle IO-Aktivitäten dokumentiert werden, und zwar unter /proc/diskstats. Dort ist für jedes Laufwerk und auch jede Partition die IO-Statistik seit dem Systemstart hinterlegt mit folgender Bedeutung:

8 0 sda 47434 318408 1891202 356316 3533 7557 89756 101592 0 189596 457880

  1. – (mir unbekannt)
  2. – (mir unbekannt)
  3. disk / partition name
  4. reads issued
  5. reads merged
  6. sectors read
  7. milliseconds spent reading
  8. writes completed
  9. writes merged
  10. sectors written
  11. milliseconds spent writing
  12. I/Os currently in progress
  13. milliseconds spent doing I/Os
  14. milliseconds spent doing I/Os

Bei Partitionen sind wesentlich weniger Felder hinterlegt, ggf. haben die vorhandenen aber die gleiche Bedeutung. Für mein Script hat das aber keinerlei Bedeutung, da die Partitionen egal sind.

Ich habe das oben genannte Script jetzt so umgebaut, dass es mit dieser Tabelle arbeitet. Das bedeutet, dass das IO-Log-Flag im Kernel, was jede IO-Operation in die syslog schreibt, nicht mehr nötig ist. Wenn das “alte” Script benutzt wurde sollte das Flag mit echo 0 > /proc/sys/vm/block_dump zurück gesetzt werden. Damit wird die Log nicht unnötig aufgeblasen, was bei meiner kleinen 128MB Ramdisk, in der das komplette /var liegt, schon sinnvoller ist.

Die Installation und Verwendung des Scriptes ist immer noch die gleiche, so dass ich den originalen Eintrag nur ein wenig angepasst und mit der neuen Scriptversion versehen habe. Dort ist alles dokumentiert und dort kann das Script auch herunter geladen werden.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert