# Het handboek van &ksysguard;

&Chris.Schlaeger;&Chris.Schlaeger.mail;
&Chris.Schlaeger;&Chris.Schlaeger.mail;
&Tobias.Koenig;&Tobias.Koenig.mail;

&Niels.Reedijk;&Rinse.Devries;

2000
&Chris.Schlaeger;
&FDLNotice;
2000-12-14
1.00.00

&ksysguard; is een netwerkgeschikte takenbeheerder en systeemmonitor, met de additionele functionaliteit van top.

KDE
KSysGuard
processenbeheer
top
ps

## Inleiding

&ksysguard; is de takenbeheerder en prestatiemonitor van &kde;. Het levert een client/server-architectuur waarmee u zowel lokale als ook externe hosts kunt observeren. De grafische schil gebruikt zogenaamde sensors om de getoonde informatie op te halen. Een sensor kan eenvoudige waarden of meer complexe informatie, zoals tabbellen weergeven. Voor elk informatietype worden een of meer displays aangeleverd. Displays zijn georganiseerd in werkbladen die onafhankelijk van elkaar kunnen worden geladen en opgeslagen. &ksysguard; is dus niet alleen een eenvoudige takenbeheerder maar ook een zeer krachtig gereedschap om grote serverfarms te beheren.

## &ksysguard; gebruiken

### Hoe te beginnen

&ksysguard; kan worden gestart vanuit het &kmenu;, via KDE systeembewaking in submenu Systeem. Vanuit een terminal kunt u het programma starten met het commando `ksysguard`.

Het hoofdvenster van &ksysguard; bestaat uit een menubalk, een optionele werkbalk en een statusbalk, de Sensorbrowser en de werkplek. Als u het programma voor het eerst start ziet u uw lokale computer als localhost in de Sensorbrowser en 2 pagina's in het werkruimtegebied. Dit is de standaardopstelling.

Deze standaardopstelling is voldoende voor onervaren gebruikers voor het uitvoeren van enig systeembeheer. Een ervaren gebruiker of een systeembeheerder van een groot computerlab heeft echter andere wensen. Om een groot gebruikerbereik te bedienen is &ksysguard; zeer flexibel.

### De Sensorbrowser

De Sensorbrowser toont de geregistreerde hosts en hun sensors in een boomstructuur. Klik op de hoofditems om een zijtak te openen. Elke sensor observeert een bepaalde systeemwaarde.

#### Verbinden met andere hosts

Om met een nieuwe host te verbinden, gebruik Verbinden met host uit menu Bestand. Er wordt dan een dialoog geopend waarin u de naam van de host kunt invullen waarmee u verbinding wilt maken. Onder deze naam kunt u de verbindingsmethode kiezen. Standaard is ssh, de secure shell. Daarnaast kunt u rsh, de remote shell of de daemon-modus gebruiken. Klik op OK om de verbinding op te bouwen. Kort daarna zal de nieuwe host verschijnen in de Sensorbrowser en kunt u door de lijst met sensors bladeren.

Om verbinding te maken dient u het programma ksysguardd op de nieuwe host installeren. Dit programma kan op twee manieren worden gestart.

daemon-modus

  U kunt ksysguardd tijdens de boot als een Daemon opstarten door `-d` als argument toe te voegen aan het commando. In dit geval dient u Daemon als verbindingstype selecteren in de verbindingsdialoog van ksysguard. Een nadeel van dit verbindingstype is dat u niet in staat zult zijn om een proces te beëindigen (kill) of de prioriteit ervan te wijzigen (renice) vanuit de Processentabel. Daarnaast wordt de gegevensuitwisseling over het netwerk niet versleuteld.

shell-modus

  In deze modus wordt ksysguardd gestart tijdens de verbindingsopbouw van ksysguard. Om dat mogelijk te maken dient de locatie ervan in uw omgevingsvariabele `PATH` te worden gezet. Helaas doorzoekt ssh niet uw `.profile`-bestand, dus zal uw reguliere `PATH` niet beschikbaar zijn. Ssh gebruikt in plaats daarvan een standaard `PATH`, zoals `/bin:/usr/bin`. Omdat &kde; op sommige computers niet in een van deze mappen is geïnstalleerd dient u het omgevingsvariabelebestand van ssh in uw persoonlijke map te wijzigen of aan te maken. Het bestand heet `environment` en staat in een verborgen map genaamd `.ssh`. Lees de man-pagina van ssh voor meer details. Het bestand dient een regel als deze te bevatten:

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

  waarbij we er van uitgaan dat ksysguardd gevonden kan worden onder `/opt/kde/bin/ksysguardd`.

  Als u ssh gebruikt, zorg er dan voor dat u uw `identity.pub` hebt geïnstalleerd op de externe computer en dat de host key van de externe machine al is geregistreerd op uw computer. U kunt dit controleren door `ssh `externe-computer ksysguardd`` in een terminal te typen. Als u wordt begroet door ksysguardd is alles in orde. U kunt dan `quit` typen om hem weer af te sluiten.

Voor experts: ksysguardd is een klein programmaatje dat alleen is gelinkt tegen libc. Het kan dus worden gebruikt op computers die geen &kde; hebben geïnstalleerd, zoals servers. Als u in de verbindingsdialoog een aangepast commando opgeeft, dan dient u het complete commando om ksysguardd op te starten in te voeren.

#### Verbindingen met hosts verbreken

Om de verbinding met een host te verbreken, selecteer de host in de Sensorbrowser en kies voor menuoptie Verbinding met host verbreken in menu Bestand. De bijhorende sensors zijn dan nog steeds in gebruik, maar de displays zullen grijs zijn en en worden niet langer bijgewerkt.

### Het werkblad

De werkplek is georganiseerd als werkbladen. Selecteer Nieuw in menu Bestand om een nieuw werkblad aan te maken. In de dialoog die wordt geopend kunt u de naam, grootte en bijwerkinterval van het werkblad instellen. Om een werkblad weer te verwijderen, kies Sluiten in menu Bestand. Eventuele wijzigingen worden opgeslagen in het werkbladbestand. Als een werkblad nog niet eerder is opgeslagen zult u gevraagd worden om een bestandsnaam. Werkbladen zijn opgebouwd uit cellen die als een rooster zijn georganiseerd.

Elke cel kan worden gevuld met een display voor een of meer browsers. U kunt een cel vullen door een sensor uit de Sensorbrowser te slepen naar de cel. Als er meer dan een displaytype beschikbaar is voor de sensor, dan zal er een contextmenu worden geopend. U kunt dan kiezen welke display u wilt gebruiken. Bepaalde displaytypes kunnen meer dan een sensor tonen. Voeg meer sensors toe aan een display door ze vanuit de Sensorbrowser te verslepen naar de reeds bestaande display.

U kunt werkbladen instellen door te klikken op Werkblad instellen in menu Bewerken. In de dialood die wordt geopend kunt u de grootte en bijwerkinterval instellen. De bijwerkinterval wordt gebruikt door alle displays in het werkblad. Dit wordt bepaald door de instelling Bijwerkinterval van werkblad gebruiken die u kunt bereiken via het contextmenu van elke display.

Menuoptie Stijl instellen in menu Instellingen geeft u de mogelijkheid om de globale stijlattributen in te stellen en ze toe te passen op het werkblad dat op dat moment actief is.

Displays kunt u instellen door er met de rechter muisknop op te klikken. In het contextmenu dat wordt geopend kunt u bepalen of u de eigenschappen van dat display wilt wijzigen, het wilt verwijderen uit het werkblad, de bijwerkinterval aanpassen en het bijwerken pauzeren of herstarten.

#### Signaalplotter

De signaalplotter toont informatie van een of meer sensors over een bepaald tijdsbestek. Als er meerdere sensoren worden afgebeeld, dan worden de waarden in verschillende kleuren op elkaar gestapeld. Als de display groot genoeg is zal er een raster worden getoond die het bereik van de geplotte informatie weergeeft. Standaard worden de minimum- en maximumwaarden automatisch ingesteld. In sommige gevallen is een vaste minimum- of maximumwaarde gewenst. In dat geval kunt u de automatische waardebereiken uitschakelen en de waarden instellen in de eigenschappendialoog.

#### Multimeter

De multimeter toont de sensorwaarden als een digitale meter. In de eigenschappendialoog kunt u een boven- en onderlimiet opgeven. Als zo'n limiet wordt overschreden wordt de display met de alarmkleur ingekleurd.

#### Processencontroller

De processentabel geeft u een lijst met de processen die op uw computer draaien. De lijst kan op elke kolom worden gesorteerd. Druk eenvoudigweg op de kop van de kolom waarop u wilt sorteren.

De lijst toont de volgende informatie over elk proces. Houd er rekening mee dat niet alle waarden beschikbaar zijn op elk besturingsysteem.

Naam

  De naam van het programma dat het proces heeft gestart.

PID

  De id van het proces. Elk proces heeft een eigen nummer.

PPID

  De id van het hoofdproces.

UID

  De id van de gebruiker die het proces heeft opgestart.

GID

  De idd van de groep waartoe het proces behoort.

Status

  De status van het proces.

Gebruiker%

  De processorbelasting van het proces in user space (in procenten).

Systeem%

  De processorbelasting van het proces in system space (in procenten).

Prioriteit

  De prioriteit van het proces.

Vmgrootte

  De totale hoeveelheid aan virtueel geheugen gebruikt door het proces (in kBytes).

VmRss

  De totale hoeveelheid aan gebruikt fysiek geheugen door het proces (in kBytes).

Login

  De gebruikersnaam van de gebruiker die het proces heeft gestart.

Commando

  Het complete startcommando van het proces.

Onder de tabel vindt u knoppen die we van links naar rechts zullen beschrijven.

##### De Boomstructuurweergave

De boomstructuurweergave toont de relaties tussen de draaiende processen. Een proces dat door een ander proces is gestart wordt een subproces of dochterproces (child proces) genoemd. De relatie tussen processen en bijhorende subprocessen kan via een boomstructuur op een heldere wijze worden getond. Het proces init is de vader van alle processen.

Als u niet geïnteresseerd bent in de subprocessen van een bepaald proces, dan klikt u op het kleine vakje links van het hoofdproces. De subtak zal dan worden ingevouwen. Een tweede klik vouwt de subtak weer uit.

##### Het procesfilter

Het processenfilter kan worden gebruikt om het aantal getoonde processen te verminderen. U kunt op die manier de processen waarin u niet geïnteresseerd bent eruit filteren. U kunt alle processen, of alleen systeemprocessen, gebruikersprocessen of uw eigen processen laten tonen.

##### De knop Verversen

Met deze knop kun u de processenlijst onmiddellijk laten verversen.

##### De knop Beëindigen (kill)

Als u een of meerder processen hebt geselecteerd kunt u op deze knop drukken om ze geforceerd te beëindigen. Het signaal SIGKIL wordt dan naar het proces gestuurd, waardoor die onmiddellijk wordt getermineerd. Als deze programma's nog onopgeslagen gegevens bevatten, dan gaan deze verloren. Gebruik deze knop dus met zorg.

#### Balkgrafiek

De balkgrafiek toont de sensorwaarden als bewegende balken. In de eigenschappendialoog kunt u de minimum- en maximumwaarden van een bereik opgeven en de boven- onderlimiet. Als een limiet wordt overschreden wordt de display met de alarmkleur ingekleurd.

#### Sensor-logger

De Sensor-logger toont geen waarden, maar logt ze in een bestand met bijhorende datum en tijd. voor elke sensor kunt u een boven- en onderlimiet opgeven in de eigenschappendialoog. Als een limiet wordt overschreden wordt bijhorende ingave in de sensortabel gekleurd met de alarmkleur, en wordt er een KNotify-gebeurtenis verzonden.

#### Logbestand

De logbestand-monitor toont de inhoud van een bestand, zoals `var/log/messages`. In de eigenschappendialoog kunt u een lijst met reguliere expressies aanleggen die zullen worden vergeleken met de inhoud van het bestand. als een van de expressies overeenkomt, dan wordt er een KNotify-gebeurtenis verzonden.

#### Lijstweergave

De lijstweergave toont de data van sommige sensors in de vorm van een tabel.

## ksysguardd instellen

De grafische schil is beschikbaar op elk platform waar &kde; op draait. De back-end is momenteel beschikbaar voor de volgende &UNIX;-varianten:

&Linux; 2.x

  Om ksysguardd te kunnen gebruiken is het belangrijk dat de &Linux;-kernel gebruik maakt van het `/proc` bestandssysteem. Deze is standaard meegecompileerd met de kernel en beschikbaar in de meeste &Linux;-distributies.

FreeBSD

  Het programma ksysguardd dient lid te zijn van de groep kmem met de setgid bit ingesteld.

&Solaris;

  Nog niet omschreven

Aan de ondersteuning voor andere platformen wordt nog gewerkt. Uw hulp is meer dan welkom.

## Dankbetuigingen en licenties

&ksysguard; wordt momenteel ontwikkeld en onderhouden door Chris Schäger cs@kde.org. &ksysguard; is afgeleid van KTop, de takenbeheerder van KDE 1.x. Diverse andere personen hebben meegeholpen bij het ontwikkelen van KTop:

- A. Sanda alex@darkstar.ping.at

- Ralf Mueller ralf@bj-ig.de

- Bernd Johannes Wuebben wuebben@math.cornell.edu

- Nicolas Leclercq nicknet@planete.net

Het overzetten naar ander platforms dan &Linux; is gedaan door:

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

&underFDL; &underGPL;