# Manuale del monitor di sistema

## Introduzione

Il monitor di sistema è lo strumento &kde; per monitorare i processi e le prestazioni.

È caratterizzato da una architettura client/server che permette il controllo sia di host locali che remoti. L'interfaccia grafica utilizza i cosiddetti sensori per ottenere le informazioni da visualizzare. Un sensore può restituire un semplice valore o informazioni più complesse come delle tabelle. Per ogni tipo di informazione è disponibile uno o più indicatori. Gli indicatori sono organizzati in fogli di lavoro che possono essere salvati e caricati indipendentemente l'uno dall'altro. Così, il monitor di sistema non è solo un semplice gestore dei processi ma anche uno strumento molto potente per controllare grandi server farm.

## Usare il monitor di sistema

### Per iniziare

Il monitor di sistema può essere avviato dal menu di avvio delle applicazioni con la voce Monitor di sistema nel menu Applicazioni Sistema. Alternativamente, puoi avviarlo digitando `ksysguard` in un terminale.

La finestra principale del monitor di sistema consiste in una barra dei menu, una barra degli strumenti facoltativa e lo spazio di lavoro. I fogli di lavoro configurabili possono includere l'elenco dei sensori.

Normalmente il monitor di sistema mostra due fogli di lavoro: la Tabella dei processi e il Carico di sistema. La Tabella dei processi elenca i processi attivi e permette all'utente di controllarli. Si possono selezionare e controllare più processi allo stesso tempo. Il foglio del Carico di sistema mostra dei grafici dell'uso del sistema: la Cronologia della CPU, la Cronologia della memoria e della swap, e la Cronologia della rete.

Questa impostazione predefinita è sufficiente per un utente inesperto per amministrare un po' il sistema. Un utente con esperienza o addirittura un amministratore di sistema di un grande laboratorio informatico ha necessità differenti. Per indirizzare un'ampia gamma di utenti, il monitor di sistema è altamente flessibile.

### Tabella dei processi

La Tabella dei processi presenta un elenco dei processi sul sistema. L'elenco può essere riordinato per qualsiasi colonna, basta premere il &LMB; sulla sua intestazione.

Usa l'aiuto Che cos'è? sui titoli delle colonne per avere informazioni aggiuntive sui valori lì indicati.

Nel menu contestuale di un processo nella vista a elenco troverai altre azioni, come per cambiarne la priorità, inviargli segnali, passare alla sua finestra, mostrarne informazioni dettagliate di memoria e terminarlo.

L'elenco mostra le seguenti informazioni su ogni processo. Nota che non tutte le proprietà sono disponibili su ogni sistema operativo.

### Colonne predefinite nella tabella dei processi

Nome | Il nome dell'eseguibile che ha avviato il processo.
Nome utente | L'utente a cui appartiene il processo.
Processore % | L'uso totale attuale del processore da parte del processo, diviso per il numero di nuclei nella macchina.
Memoria | Questa è la quantità di memoria fisica reale che questo processo usa di per sé, e approssima il suo uso di memoria privato. Non include la memoria passata a swap, né eventuali librerie condivise. Questo di solito è il numero più utile per giudicare l'uso di memoria di un programma.
Memoria condivisa | Questa è approssimativamente la quantità di memoria fisica reale usata dalle librerie condivise di questo processo. Questa memoria è condivisa tra tutti i processi che usano questa libreria.

### Altre colonne nella tabella dei processi

PID | L'identificativo univoco di un processo.
TTY | Il terminale di controllo su cui questo processo è in esecuzione.
Priorità | La priorità con cui questo processo viene eseguito. Per lo scheduler normale, va da 19 (priorità minima) a -19 (massima).
Tempo del processore | Il tempo totale di utente e sistema per cui questo processo è stato in esecuzione, visualizzato come minuti:secondi
IO letto | Il numero di byte letti. Si possono cambiare le Unità di visualizzazione e le Informazioni visualizzate con il menu contestuale di questa intestazione.
IO scritto | Il numero di byte scritti. Si possono cambiare le Unità di visualizzazione e le Informazioni visualizzate con il menu contestuale di questa intestazione.
Dimensione virtuale | Questa è la quantità di spazio in memoria virtuale usato dal processo, incluse le librerie condivise, la memoria grafica, i file sul disco e così via. Questo numero è praticamente inutile. Usa il menu contestuale per selezionare le Unità di visualizzazione.
Comando | Il comando con cui questo processo è stato avviato.

In cima alla tabella ci sono tre controlli che saranno ora descritti da sinistra a destra.

#### Termina processi

Se hai selezionato uno o più processi puoi premere il pulsante Termina processi per terminarli. Viene spedito un cosiddetto segnale SIGKILL ai processi che ne causa l'immediata terminazione. Se queste applicazioni hanno ancora dei dati non salvati questi dati saranno persi, quindi usa questo pulsante con attenzione.

#### Barra di filtraggio

Filtra quali processi mostrare con il testo qui inserito. Il testo può essere una stringa parzialmente corrispondente al Nome, al Comando o al Titolo della finestra del processo. Può anche essere un Nome utente o un numero identificativo del processo.

#### Filtro dei processi

Il filtro dei processi può essere usato per ridurre il numero di processi visualizzati nella tabella. Puoi filtrare i processi che non ti interessano. Attualmente puoi visualizzare Tutti i processi in una vista piatta o ad albero, solo i Processi di sistema, solo i Processi utente, solo i Processi propri o Solo programmi.

La visuale ad albero è stata progettata per mostrare le relazioni tra i processi in esecuzione. Un processo avviato da un altro processo ne è detto figlio. Un albero è un modo elegante per mostrare la relazione padre-figlio. Il processo init è l'antenato di tutti i processi.

Se non sei interessato ai figli di un particolare processo puoi fare clic sulla piccola casella alla sinistra del padre ed il sotto-albero si chiuderà. Un altro clic su quella casella riaprirà nuovamente il sotto-albero.

Puoi avviare la Tabella dei processi da &krunner; con il pulsante Mostra attività di sistema o usando la scorciatoia globale &Ctrl;&Esc; in qualsiasi momento. La tabella dei processi viene mostrata in una finestra intitolata Attività di sistema.

### Spazio di Lavoro

Lo spazio di lavoro è organizzato in fogli di lavoro. Seleziona Nuova scheda dal menu File per creare un nuovo foglio di lavoro. Apparirà una finestra di dialogo dove potrai impostare il nome, la dimensione e l'intervallo di aggiornamento del foglio di lavoro. Di nuovo, per rimuovere un foglio di lavoro seleziona Chiudi scheda dal menu File. Qualsiasi modifica sarà salvata nel file del foglio di lavoro. Se un foglio di lavoro non è mai stato salvato, ti sarà chiesto un nome per il file. I fogli di lavoro sono formati da celle organizzate in una griglia.

Ogni cella può essere riempita con un indicatore per uno o più sensori. Puoi riempire una cella trascinando un sensore dall'elenco dei sensori e rilasciandolo sopra alla cella. Se c'è più di un tipo di visualizzazione disponibile per quel tipo di sensore, apparirà un menu a comparsa. Puoi quindi selezionare quale visualizzazione preferisci utilizzare. Certi tipi di visualizzazioni possono visualizzare più di un sensore. Aggiungi più sensori ad un indicatore trascinandoli dall'elenco dei sensori e rilasciandoli sull'indicatore già esistente.

I fogli di lavoro possono essere configurati facendo clic su Proprietà della scheda nel menu Visualizza. Nella finestra che appare puoi impostare l'intervallo di aggiornamento.

Gli indicatori possono essere configurati facendoci clic con il &RMB;. Compare così un menu a comparsa dove, quando vuoi, puoi modificare le proprietà dell'indicatore o rimuoverlo dal foglio di lavoro.

#### Elenco dei sensori

L'elenco dei sensori è una caratteristica avanzata del monitor di sistema. Per usarlo, devi prima aprire il menu File e creare un nuovo foglio di lavoro. Verrà mostrato se si sceglie un foglio configurabile.

L'elenco dei sensori visualizza gli host registrati e i loro sensori in forma di albero. Fai clic sulle maniglie dell'albero per aprire o chiudere le ramificazioni. Ogni sensore controlla un certo valore di sistema.

Dopo aver configurato il foglio configurabile, usa il divisore e spostalo sul lato destro della finestra per nascondere l'elenco dei sensori.

Se l'elenco dei sensori non appare in un foglio configurabile, probabilmente è nascosto. Per rivelarlo, seleziona il lato destro della finestra e trascinalo a sinistra.

#### Grafico a linee

Il grafico a linee stampa campioni di uno o più sensori nel tempo. Se sono visualizzati diversi sensori, i valori sono impilati in colori diversi. Se l'indicatore è largo abbastanza verrà visualizzata una griglia per mostrare l'intervallo dei campioni rappresentati. Per impostazione predefinita è attiva la modalità di intervallo automatico, così il minimo e il massimo valore saranno impostati automaticamente. A volte si desiderano valori minimo e massimo fissi. In questo caso, puoi disattivare la modalità di intervallo automatico e impostare i valori nella finestra delle proprietà.

#### Indicatore digitale

Il multimetro visualizza i valori del sensore come un contatore digitale. Nella finestra di dialogo delle proprietà puoi specificare un limite inferiore e uno superiore. Se viene oltrepassato l'intervallo, l'indicatore viene colorato con il colore di allarme.

#### Grafico a barre

Il grafico a barre visualizza il valori del sensore come barre oscillanti. Nella finestra di dialogo delle proprietà puoi specificare i valori minimo e massimo dell'intervallo ed un limite inferiore e superiore. Se l'intervallo è oltrepassato, l'indicatore viene colorato con il colore di allarme.

#### Registrare su file

Il registro dei sensori non visualizza nessun valore, ma li registra in un file con l'informazione aggiuntiva della data e dell'ora. Per ogni sensore puoi specificare un limite inferiore e superiore nella finestra di dialogo delle proprietà. Se l'intervallo è superato, la voce della tabella del sensore viene colorata con il colore di allarme.

#### Tabella delle partizioni

L'Uso delle partizioni ha un particolare sensore per la tabella che mostra informazioni su tutte le partizioni montate.

#### Connettersi ad altri host

Per connetterti ad un nuovo host utilizza Controlla macchina remota... dal menu File. Apparirà una finestra che permetterà di inserire il nome dell'host a cui connettersi. Sotto al nome potrai scegliere il metodo di connessione. L'impostazione predefinita è ssh, la shell sicura. In alternativa può essere usata rsh, la shell remota, la modalità daemon o un comando configurabile. Fai clic su OK per stabilire la connessione. In breve tempo il nuovo host apparirà nell'elenco dei sensori.

Per stabilire una connessione, deve essere installato nel nuovo host un programma chiamato ksysguardd, che può essere avviato nei seguenti due modi.

modalità daemon

- Puoi avviare ksysguardd in fase di avvio del computer in modalità Demone aggiungendo `-d` come argomento. In questo caso, devi selezionare modalità daemon nella finestra di dialogo della connessione del monitor di sistema. Uno svantaggio di questo tipo di connessione è che non sarai in grado di terminare i processi o cambiarne la priorità nella Tabella dei processi e lo scambio dei dati attraverso la rete non sarà cifrato.

modalità shell

- In questa modalità ksysguardd viene avviato alla connessione dal monitor di sistema. Perché sia possibile, la sua posizione deve essere inclusa nella variabile d'ambiente `PATH`. Sfortunatamente ssh non elabora il file `.profile`, e quindi la normale impostazione del `PATH` non sarà disponibile. Usa invece un `PATH` predefinito come `/bin:/usr/bin`. Dato che è molto probabile che &kde; non sia installato in queste cartelle hai bisogno di creare o aggiornare un file nella cartella Home. Il file è chiamato `environment` e deve trovarsi in una cartella nascosta chiamata `.ssh`. Guarda la pagina di manuale di ssh per maggiori dettagli. Il file deve contenere una riga simile a:

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

  assumendo che ksysguardd possa essere trovato sotto `/opt/kde/bin/ksysguardd`.

  Quando usi ssh dovresti assicurarti di avere il tuo file `identity.pub` installato nella macchina remota e che la chiave host della macchina remota sia già registrata sulla macchina. Se non imposti correttamente `identity.pub`, ti verrà chiesta la password ogni volta che avvii il monitor di sistema. Il modo più semplice per verificare ciò è digitare `ssh ``host_remoto` ksysguardd`` in una shell. Se ricevi il benvenuto di ksysguardd tutto è a posto e puoi digitare `quit`.

Per gli esperti: ksysguardd è un programma molto piccolo, collegato solamente alla libc. Può quindi essere usato anche su macchine che non hanno installato &kde; completo di tutto, come i server. Molte tra le principali distribuzioni forniscono per praticità un pacchetto separato per ksysguardd. Se scegli l'opzione di comando configurabile nella connessione dell'host, devi specificare il comando completo per avviare ksysguardd.

## Configurare ksysguardd

L'interfaccia grafica è disponibile su qualsiasi piattaforma su cui giri &kde;. Il back-end è disponibile al momento sulle seguenti versioni di &UNIX;:

&Linux; 2.x

- Per far funzionare ksysguardd è necessario compilare il Kernel &Linux; con il filesystem `/proc` abilitato. Questa è l'impostazione predefinita e la maggior parte delle Distribuzioni &Linux; ce l'hanno già.

FreeBSD

- Il programma ksysguardd deve essere posseduto dal gruppo `kmem` e deve avere il bit setgid impostato.

&Solaris;

- Ancora da scrivere

Il supporto per altre piattaforme è in fase di sviluppo. Il tuo aiuto è veramente apprezzato.

## Riconoscimenti e licenza

Il monitor di sistema è attualmente sviluppato e mantenuto da &John.Tapsell; &John.Tapsell.mail;. Il monitor di sistema è una riscrittura di KTop, il gestore dei progetti di KDE 1.x. Diverse altre persone hanno lavorato su 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

Il porting verso altre piattaforme oltre a &Linux; è stato fatto da:

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

Traduzione italiana di Samuele Kaplun kaplun@aliceposta.it

&underFDL; &underGPL;