# Das Handbuch zu &ksysguard;

## Einleitung

&ksysguard; übernimmt in &kde; die Aufgabe der Prozessverwaltung und Leistungsüberwachung. Es bietet eine Client/Server-Architektur, die das Überwachen von sowohl lokalen als auch Netzwerk-Rechnern zulässt. Die graphische Oberfläche verwendet so genannte Sensoren, um die Informationen zu bekommen, die auf ihr dargestellt werden. Ein Sensor kann einfache Werte oder auch komplexere Informationen wie Tabellen liefern. Für jede Art von Information werden eine oder mehrere Anzeigen bereitgestellt. Diese Anzeigen werden in Arbeitsblättern zusammengefasst, die gespeichert und unabhängig voneinander auch wieder geladen werden können. Damit ist &ksysguard; nicht nur ein einfacher Prozess-Verwalter, sondern gleichzeitig auch ein sehr mächtiges Werkzeug zur Kontrolle großer Server-Verbände.

## &ksysguard; verwenden

### Erste Schritte

&ksysguard; kann im K-Menü gestartet werden, indem Sie den Eintrag Systemüberwachung im Menü System anklicken. Es ist ebenfalls möglich, das Programm durch Eingabe des Befehls `ksysguard` in einem Befehlsfenster zu starten.

Das Hauptfenster von &ksysguard; besteht aus einer Menüleiste, optionaler Werkzeug- und Statusleiste sowie dem Sensor-Browser und der Arbeitsfläche. Wenn man die Anwendung zum ersten Mal startet, wird der lokale Rechner als localhost im Sensor-Browser angezeigt. Außerdem gibt es zwei Karteikarten im Arbeitsbereich. Dies ist die Standard-Einstellung.

Diese Standard-Einstellung ist für den unerfahrenen Anwender völlig ausreichend, um ein einfaches System verwalten zu können. Ein erfahrener Anwender oder gar ein Systemadministrator eines großen Netzwerks wird andere Anforderungen haben. Um eine große Bandbreite an Anwendern anzusprechen, wurde &ksysguard; sehr flexibel gestaltet.

### Der Sensor-Browser

Der Sensor-Browser stellt die registrierten Rechner und deren Sensoren in einer Baumansicht dar. Um eine Verzweigung zu öffnen oder zu schließen, klickt man auf den entsprechenden Knoten. Jeder Sensor überwacht einen bestimmten Systemwert.

#### Verbindung zu anderen Rechnern herstellen

Um eine Verbindung zu einem neuen Rechner herzustellen, verwendet man Mit Rechner verbinden ... aus dem Menü Datei. Daraufhin öffnet sich ein Dialogfenster, in dem man den Namen des Rechners eingeben kann, zu dem eine Verbindung hergestellt werden soll. Unterhalb des Eingabefeldes für den Namen lässt sich der Verbindungstyp auswählen. Die Voreinstellung ist ssh, die so genannte Secure Shell (Sichere Shell). Ebenfalls auswählen kann man rsh, die Remote Shell, sowie den Dämon-Modus auswählen. Klicken Sie OK, um die Verbindung herzustellen. Kurz darauf wird der neue Rechner im Sensor-Browser erscheinen, und Sie können die Liste der Sensoren durchsuchen.

Um eine Verbindung herzustellen, muss auf dem Netzwerkrechner ein Programm mit dem Namen ksysguardd installiert sein, das in einem der folgenden Modi gestartet werden kann.

Dämon-Modus

- Man kann ksysguardd beim Hochfahren des Systems im Dämon-Modus starten, indem man den Parameter `-d` als Argument hinzufügt. In diesem Fall muss man den Dämon-Modus im Verbindungsdialog von ksysguard auswählen. Ein Nachteil dieses Verbindungstyps ist, dass sich der Prozess weder beenden noch innerhalb der Prozesstabelle in der Priorität verändern lässt. Außerdem erfolgt der Datenaustausch über das Netzwerk nicht verschlüsselt.

Shell-Modus

- In diesem Modus wird ksysguardd zum Zeitpunkt der Verbindung von ksysguard gestartet. Um dies zu ermöglichen, muss der Ordner, in dem sich ksysguardd befindet, in der Umgebungsvariable `PATH` enthalten sein. Leider liest ssh die Datei `.profile` nicht ein, so dass Ihre Einstellungen für `PATH` nicht verfügbar sein werden. Stattdessen verwendet es eine Voreinstellung für `PATH` wie &zb; `/bin:/usr/bin`. Da &kde; mit ziemlicher Sicherheit in keinem dieser Ordner installiert ist, müssen Sie eine Datei in Ihrem Persönlichen Ordner erstellen oder anpassen. Diese Datei heißt `environment` und muss sich in einem versteckten Ordner mit dem Namen `.ssh` befinden. Schauen Sie bitte für weitere Informtionen auch in die Handbuch-Seiten von ssh. Die Datei muss eine Zeile wie die folgende enthalten:

      PATH=/bin:/usr/bin:/opt/kde/bin

  Dieses Beipiel nimmt an, dass ksysguardd sich in `/opt/kde/bin/ksysguardd` befindet.

  Verwenden Sie ssh, dann sollten Sie sicherstellen, dass sich auf dem Netzwerkrechner eine Datei mit dem Namen `identity.pub` befindet und außerdem der Rechnername des Netzwerkrechners auf Ihrem Rechner registriert ist. Am einfachsten können Sie dies überprüfen, indem Sie `ssh `remotehost ksysguardd`` in einem Befehlsfenster eingeben. Wenn Sie von ksysguardd begrüßt werden, ist alles in Ordnung, und Sie können `quit` eingeben.

Für Experten: ksysguardd ist ein sehr kleines Programm, das nur gegen die libc gelinkt ist. Daher kann es auch auf Rechnern eingesetzt werden, auf denen kein &kde; installiert ist - wie zum Beispiel auf Servern. Falls "Benutzerdefinierter Befehl" aus dem Menü "Rechner verbinden" gewählt wird, muss der vollständige Befehl angegeben werden, um ksysguardd zu starten.

#### Verbindungen trennen

Um die Verbindung zu einem Rechner zu trennen, wählen Sie erst den Rechner im Sensor-Browser und anschließend Verbindung zu Rechner abbauen aus dem Menü Datei. Falls noch Sensoren in Verwendung sind, dann werden die entsprechenden Anzeigen deaktiviert und nicht mehr aktualisiert.

### Die Arbeitsfläche

Die Arbeitsfläche ist in Arbeitsblättern organisiert. Wählen Sie Neu aus dem Menü Datei, um ein neues Arbeitsblatt zu erstellen. Ein Dialog wird geöffnet, in dem Sie den Titel, die Anzahl der Zeilen und Spalten sowie das Aktualisierungs-Intervall festlegen können. Um ein Arbeitsblatt wieder zu entfernen, wählen Sie Schließen aus dem Menü Datei. Alle Änderungen werden im Arbeitsblatt gespeichert. Falls ein Arbeitsblatt bisher noch nicht gespeichert wurde, dann werden Sie nach einem Dateinamen gefragt. Arbeitsblätter bestehen aus Zellen, die in einem Raster angeordnet sind.

Jede Zelle kann eine Anzeige für einen oder mehrere Sensoren enthalten. Sie können die Anzeige für eine Zelle festlegen, indem Sie einen Sensor aus dem Sensor-Browser auf diese Zelle ziehen. Falls es für den Sensor mehr als nur eine Möglichkeit zur Anzeige gibt, dann wird ein Aufklappmenü erscheinen. Dort können Sie dann die von Ihnen bevorzugte Anzeige auswählen. Bestimmte Anzeigen können auch mehr als nur einen Sensor anzeigen. Sie fügen weitere Sensoren zu einer Anzeige hinzu, indem Sie sie aus dem Sensor-Browser auf eine bereits existierende Anzeige ziehen.

Arbeitsblätter können eingerichtet werden, indem man auf Arbeitsblatt-Einstellungen im Menü Bearbeiten klickt. Im Dialog, der sich daraufhin öffnet, können die Anzahl der Zeilen und Spalten sowie das Aktualisierungs-Intervall festgelegt werden. Dieses Aktualisierungs-Intervall wird von allen Anzeigen des Arbeitsblattes verwendet, bei denen Aktualisierungs-Intervall des Arbeitsblattes verwenden in den Einstellungen für das Aktualisierungs-Intervall angekreuzt wurde.

Der Eintrag Stil festlegen aus dem Menü Einstellungen lässt Sie die globalen Stil-Attribute einrichten und auf das aktuelle Arbeitsblatt anwenden.

Anzeigen können durch Klicken mit der rechten Maustaste eingerichtet werden. Aus dem dann erscheinenden Aufklappmenü können Sie dann auswählen, ob Sie die Eigenschaften der Anzeige ändern oder die Anzeige vom Arbeitsblatt entfernen möchten. Außerdem können Sie das Aktualisierungs-Intervall und den -Typ festlegen sowie die Aktualisierung unterbrechen und wieder neu starten.

#### Signal-Plotter

Der Signal-Plotter stellt die Anzeigen von einem oder mehreren Sensoren bezüglich der Zeit dar. Falls mehrere Sensoren angezeigt werden, werden deren Werte in verschiedenen Farben dargestellt. Ist die Anzeige groß genug, so wird ein Gitter angezeigt, das den Bereich der Werte veranschaulicht. Standardmäßig ist die automatische Bereichsfeststellung aktiv, sodass Minimal- und Maximalwert automatisch gesetzt werden. Wollen Sie jedoch feste Minimal- und Maximalwerte verwenden, können Sie die automatische Bereichsfeststellung deaktivieren und die gewünschten Werte im Dialog Eigenschaften festlegen.

#### Multimeter

Ein Multimeter stellt die Sensorwerte als digitalen Zählen dar. Im Dialog Eigenschaften können Sie eine untere und obere Grenze festlegen. Falls eine dieser Grenzen dann unter- oder überschritten wird, wird die Anzeige in der Alarm-Farbe dargestellt.

#### Prozesstabelle

Die Prozesstabelle zeigt eine Liste aller Prozesse auf Ihrem System. Diese Liste kann nach jeder Spalte sortiert werden. Klicken Sie einfach mit der linken Maustaste auf den Kopf der Spalte, in dem sich die Überschrift befindet.

Die Liste zeigt folgende Informationen über jeden Prozess. Beachten Sie bitte, dass nicht alle Eigenschaften auf jedem Betriebssystem verfügbar sind.

Name

- Der Name der ausführbaren Datei, die den Prozess gestartet hat.

PID

- Die Prozess-ID. Jeder Prozess erhält eine eigene Nummer.

PPID

- Die Prozess-ID des so genannten Parent-Prozesses (in etwa "Eltern-Prozess").

UID

- Die ID des Anwenders (Users), der den Prozess gestartet hat.

GID

- Die ID der Gruppe, zu der der Prozess gehört.

Status

- Der Status des Prozesses.

Nutzer %

- Die Prozessor-Last des Prozesses im Nutzerbereich (in Prozent).

System %

- Die Prozessor-Last des Prozesses im Systembereich (in Prozent).

Priorität

- Die Priorität des Prozesses.

Vm-Größe

- Die Gesamtgröße des virtuellen Speichers, den der Prozess nutzt (in KBytes).

VmRss

- Die Gesamtgröße des physikalischen Speichers, den der Prozess nutzt (in KBytes).

Benutzer

- Der Anmelde-Name des Anwenders, der den Prozess gestartet hat.

Befehl

- Der komplette Befehl zum Starten des Prozesses.

Unter der Tabelle befinden sich vier Knöpfe, die jetzt in der Reihenfolge von links nach rechts beschrieben werden.

##### Die Baum-Ansicht

Die Baumansicht wurde erstellt, um die Beziehungen zwischen den laufenden Prozessen darzustellen. Ein Prozess, der von einem anderen Prozess gestartet wurde, wird als Kind dieses Prozesses ("Child Process") bezeichnet. Eine Baumansicht ist ein eleganter Weg, um diese Eltern-Kind-Beziehungen darzustellen. Der Prozess init ist der Hauptprozess für alle anderen Prozesse.

Wenn Sie an den Kind-Prozessen von bestimmten anderen Prozessen nicht interessiert sind, können Sie auf das kleine Kästchen links vom Prozess klicken, und der Unterbaum wird ausgeblendet. Ein weiterer Klick auf dieses Kästchen wird den Unterbaum wieder aufklappen.

##### Der Prozess-Filter

Der Prozess-Filter kann verwendet werden, um die Anzahl der darzustellenden Prozesse in der Tabelle zu verkleinern. Sie können Prozesse herausfiltern, an denen Sie nicht interessiert sind. Gegenwärtig können Sie alle Prozesse, Systemprozesse, Benutzerprozesse oder eigene Prozesse wählen.

##### Der Knopf Neu aufbauen

Dieser Knopf kann verwendet werden, um einen sofortigen Neuaufbau der Prozessliste zu erzwingen.

##### Der Knopf Beenden (kill)

Wenn Sie einen oder mehrere Prozesse ausgewählt haben, können Sie auf den Knopf Beenden (kill) klicken, um die Prozesse zu beenden. Ein so genannter SIGKIL wird an die Prozesse gesendet. Dieses Signal veranlasst die Prozesse zum sofortigen Beenden. Falls die Anwendungen noch ungespeicherte Daten hatte, gehen diese verloren. Verwenden Sie diesen Knopf also mit Vorsicht.

#### Balkengraphik

Eine Balkengraphik stellt Sensorwerte als Balken dar. Im Dialog Eigenschaften können Sie einen Minimal- und Maximalwert sowie eine Unter- und Obergrenze festlegen. Wird eine dieser Grenzen unter- oder überschritten, erfolgt die Darstellung der Anzeige in der Alarm-Farbe.

#### Sensor-Protokoll

Das Sensor-Protokoll stellt keine Werte dar, sondern schreibt diese zusammen mit Angaben über Datum und Zeit in eine Datei. Für jeden Sensor können Sie im Dialog Eigenschaften eine untere und eine obere Grenze angeben. Werden diese Grenzen dann unter- oder überschritten, wird der Eintrag in der Sensortabelle in der Alarm-Farbe dargestellt. Außerdem wird ein knotify-Ereignis versandt.

#### Protokolldatei

Der Monitor für Protokolldateien stellt den Inhalt einer Datei, &zb; `/var/log/messages`, dar. Im Dialog Eigenschaften können Sie eine Liste regulärer Ausdrücke zusammenstellen, die mit dem Inhalt der Datei verglichen werden. Falls einer dieser Ausdrücke eine Übereinstimmung zeigt, wird ein knotify-Ereignis versandt.

#### Listen-Ansicht

Die Listen-Ansicht stellt die Daten der Sensoren in Form einer Tabelle dar.

## ksysguard einrichten

Die graphische Oberfläche ist für alle Plattformen verfügbar, auf denen auch &kde; läuft. Das Programm, welches im Hintergrund läuft, ist momentan für folgende Varianten von &UNIX; erhältlich:

&Linux; 2.x

- Damit ksysguardd läuft, ist es notwendig, den &Linux;-Kernel mit Unterstützung für das Dateisystem `/proc` zu kompilieren. Dies ist die Standard-Einstellung und auch in den meisten &Linux;-Distributionen bereits verfügbar.

FreeBSD

- Die Anwendung ksysguardd muss zur Gruppe `kmem` gehören. Außerdem muss das Bit setgid gesetzt sein.

&Solaris;

- Noch zu schreiben

An der Unterstützung für andere Plattformen wird gegenwärtig gearbeitet. Jede Hilfe ist dabei sehr willkommen.

## Mitwirkende und Lizenz

&ksysguard; wird gegenwärtig von Chris Schläger cs@kde.org entwickelt und betreut. &ksysguard; ist eine neue Version von KTop, dem Task Manager von KDE 1.x. Viele andere Entwickler haben an KTop mitgearbeitet:

- A. Sanda alex@darkstar.ping.at

- Ralf Mueller ralf@bj-ig.de

- Bernd Johannes Wuebben wuebben@math.cornell.edu

- Nicolas Leclercq nicknet@planete.net

Das Portieren zu anderen Plattformen als &Linux; haben übernommen:

- FreeBSD: Hans Petter Bieker zerium@traad.lavvu.no

&underFDL; &underGPL;