home
erste Version am 10.11.2013
letzte Änderung am 13.01.2014

MPLED


Ein kleines Tool zur Anzeige von Festplatten- bzw. MountPoint-Aktivität.



Früher hatte mein Rechner eine LED an der Frontseite, mit der Zugriffe auf die Festplatte signalisiert wurden.
Viele Platten hatten auch das Feature der akustischen Zugriffs-Meldung ;-)

In meinen aktuellen Rechnern stecken jeweils mehrere Platten und eine oder gar mehrere LEDs an der Front gibts keine - ebenso wenig, wie das akustische Feedback.
Trotzdem will ich oft gerne mal wissen, wann Zugriffe auf eine Platte erfolgen.
Unter Linux gibts dafür praktischerweise das File /proc/diskstats, in dem Zugriffe auf Geräte protokolliert werden.
MPLED fragt dieses File ab und signalisiert Lese- oder Schreibzugriffe in einem kleinen Fenster auf dem Desktop.

mpled während eines copy-jobs

Für das GUI wird wxWidgets (bzw. wxPython) in der Version 2.8 benötigt.

Das Programm bestimmt seine eigene Fenster-Größe abhängig von den angezeigten Daten und der eingestellten Font.
Wird zur Laufzeit ein neuer Mountpoint erkannt, ändert sich die Fenster-Größe.
Über die Variable FIX_CORNER wird bestimmt, welche Ecke des Fensters fix bleiben soll.
Bei
    FIX_CORNER=3          # 0=upper-left, 1=upper-right, 2=lower-left, 3=lower-right
wird das Fenster also nach links breiter und nach oben höher.
Die Font-Größe wird über
    FONT_SIZE=12          # any Fontsize (~ 8 - 20)
eingestellt.
Bei einem rechts-Klick ins Programm-Fenster erscheint ein Kontext-Menü. Es enthält nur den einen Eintrag "Save position", durch den die aktuelle Position des Fensters auf dem Desktop für zukünftige Programm-Starts gespeichert wird.

Mit der Variable FRAME_NO_TASKBAR wird festgelegt, ob das Fenster in der Taskbar erscheinen soll.
Durch
    FRAME_NO_TASKBAR=True # auf True, wenn das Fenster nicht in der Taskbar erscheinen soll
wird somit eingestellt, dass MPLED nicht in der Taskbar erscheinen soll. Bei False würde es in der Taskbar erscheinen.
Wenn MPLED nun aber nicht in der Taskbar erscheint, braucht man eine Möglichkeit, das Fenster von MPLED bei Bedarf in den Vordergrund zu holen, wenn es gerade von anderen Fenstern verdeckt wird.
Dazu bietet sich das Programm wmctrl an. Durch einen Aufruf von
    wmctrl -a "MPLED v1.0"
wird MPLED in den Vordergrund geholt. Für den entsprechenden Aufruf legt man sich möglichst einen Starter an - ein Hotkey täte es auch.


Das Python-Script: mpled.py