Come utilizzare il comando top di Linux (e comprenderne l'output)

Pubblicato: 2022-01-29
Un prompt del terminale su un PC portatile Linux.
Fatmawati Achmad Zaenuri/Shutterstock

Il comando top di Linux è uno dei pilastri dei sistemi operativi simili a Unix. Il suo display utilitaristico è ricco di informazioni utili sui processi in esecuzione del sistema e sull'utilizzo delle risorse. Ma lo sapevi che supporta anche il colore, l'evidenziazione e persino i grafici elementari?

Un dashboard ricco di informazioni

Il comando top esiste dal 1984 e ci sono molte varianti di esso. Per questo articolo, stiamo eseguendo Ubuntu 18.04 con tutte le patch applicate e la versione 3.3.12 di top . Abbiamo anche incrociato tutto su altri due computer di prova, uno con Fedora e l'altro Manjaro.

10 comandi di base di Linux per principianti
CORRELATI 10 comandi Linux di base per principianti

Il display top predefinito stipa quante più informazioni possibili nella finestra del terminale. L'informazione è un prerequisito per l'amministrazione, quindi questa è una buona cosa. Una delle caratteristiche di un buon amministratore di sistema è la capacità di identificare i problemi emergenti e affrontarli prima che influiscano sul servizio. top ti offre una dashboard di molte metriche di sistema diverse che ti aiutano a fare proprio questo.

Il display è meglio descritto come funzionale, piuttosto che intuitivo, e le abbreviazioni abbondano. Quando incontri per la prima volta top , ti sembra angusto, criptico e scoraggiante. Con pochi tasti, tuttavia, puoi regolare i contenuti e il formato del display in base a ciò che è importante per te.

Controlla la tua versione di top

Per verificare quale versione di top hai, digita quanto segue in una finestra di terminale:

 in alto -v 

Annuncio pubblicitario

Se la tua versione è molto indietro rispetto alla 3.3.12, potrebbe non supportare tutte le funzionalità che tratteremo.

La visualizzazione predefinita

Puoi iniziare in top digitando quanto segue e premendo "Invio":

 superiore 

La visualizzazione predefinita contiene due aree di informazioni: l'area di riepilogo (o dashboard) e l'area attività (o elenco di processi). Per impostazione predefinita, top aggiorna il display ogni tre secondi: noterai un leggero sfarfallio quando lo fa.

La prima riga di numeri sul dashboard include l'ora, da quanto tempo è in esecuzione il computer, il numero di persone che hanno effettuato l'accesso e qual è stata la media del carico negli ultimi uno, cinque e 15 minuti. La seconda riga mostra il numero di attività e i loro stati: in esecuzione, fermo, inattivo o zombi.

La terza riga visualizza i seguenti valori dell'unità di elaborazione centrale (CPU):

  • us: quantità di tempo che la CPU dedica all'esecuzione di processi per le persone nello "spazio utente".
  • sy: quantità di tempo impiegato per eseguire i processi di "spazio del kernel" del sistema.
  • ni: quantità di tempo speso per l'esecuzione di processi con un valore corretto impostato manualmente.
  • id: quantità di tempo di inattività della CPU.
  • wa: tempo impiegato dalla CPU in attesa del completamento dell'I/O.
  • ciao: quantità di tempo dedicato alla manutenzione degli interrupt hardware.
  • si: quantità di tempo impiegato per la manutenzione degli interrupt software.
  • st: quantità di tempo perso a causa dell'esecuzione di macchine virtuali ("steal time").

La quarta riga mostra la quantità totale (in kibibyte) di memoria fisica e quanta è libera, utilizzata e memorizzata nel buffer o nella cache.

La quinta riga mostra la quantità totale (anche in kibibyte) di memoria di scambio e quanto è libero, utilizzato e disponibile. Quest'ultimo include memoria che dovrebbe essere recuperabile dalle cache.

Annuncio pubblicitario

Le intestazioni delle colonne nell'elenco dei processi sono le seguenti:

  • PID: ID processo.
  • UTENTE: Il titolare del processo.
  • PR: Priorità del processo.
  • NI: Il bel valore del processo.
  • VIRT: quantità di memoria virtuale utilizzata dal processo.
  • RES: quantità di memoria residente utilizzata dal processo.
  • SHR: quantità di memoria condivisa utilizzata dal processo.
  • S: Stato del processo. (Vedi l'elenco seguente per i valori che questo campo può assumere).
  • %CPU: la quota di tempo CPU utilizzata dal processo dall'ultimo aggiornamento.
  • %MEM: la quota di memoria fisica utilizzata.
  • TIME+: tempo CPU totale utilizzato dall'attività in centesimi di secondo.
  • COMANDO: il nome del comando o la riga di comando (nome + opzioni).

I valori di memoria sono visualizzati in kibibyte. La colonna COMMAND è fuori schermo, a destra: non si adattava all'immagine sopra, ma la vedremo a breve.

Lo stato del processo può essere uno dei seguenti:

  • D: Sonno ininterrotto
  • R: Correre
  • S: Dormire
  • T: Tracciato (fermato)
  • Z: Zombie

Premi Q per uscire top .

Scorrimento del display

È possibile premere i tasti freccia su o giù, Home, Fine e Pagina su o giù per spostarsi su e giù e accedere a tutti i processi.

Premere la freccia sinistra o destra per spostare lateralmente l'elenco dei processi. Questo è utile per vedere tutte le colonne che non rientrano nei confini della finestra del terminale.

Nell'immagine qui sotto, abbiamo premuto la freccia destra alcune volte per vedere la colonna COMMAND .

Modifica delle unità numeriche

Cambiamo le unità di visualizzazione in valori sensibili. Premere la E maiuscola per scorrere le unità utilizzate per visualizzare i valori di memoria in queste opzioni: kibibyte, mebibyte, gibibyte, tebibyte, pebibyte ed exbibyte. L'unità in uso è la prima voce delle righe quattro e cinque.

Annuncio pubblicitario

Premere la "e" minuscola per fare la stessa cosa per i valori nell'elenco dei processi: kibibyte, mebibyte, gibibyte, tebibyte e pebibyte.

Abbiamo premuto E per impostare le unità di memoria del dashboard su gibibyte e "e" per impostare le unità di memoria dell'elenco dei processi su mebibyte.

Modifica del contenuto del riepilogo

È possibile modificare le impostazioni di visualizzazione delle linee nel dashboard o rimuoverle completamente.

Premere l per attivare o disattivare la riga di riepilogo del carico (la prima riga). Abbiamo rimosso la riga di riepilogo del carico nell'immagine qui sotto.

Se si dispone di una CPU multi-core, premere 1 per modificare la visualizzazione e visualizzare le statistiche individuali per ciascuna CPU. Ci sono quattro CPU sul nostro computer. Premiamo 1 per vedere quanto sta lavorando ciascuno di essi.

Annuncio pubblicitario

Ovviamente, questo occupa più spazio sullo schermo all'interno della finestra del terminale.

È possibile premere "t" per scambiare i display della CPU con semplici grafici ASCII che mostrano la percentuale di utilizzo per ciascuna CPU.

Per ogni CPU, in top vengono visualizzati tre numeri e il grafico. Da sinistra a destra, i numeri sono i seguenti:

  • La percentuale combinata us e ni (spazio utente + attività con impostazioni piacevoli non standard).
  • La percentuale sy (spazio del kernel).
  • Il totale (arrotondato a un valore intero).

Premere di nuovo "t" per modificare la visualizzazione del grafico in caratteri a blocchi pieni.

Premere "t" ancora una volta per rimuovere completamente il display della CPU e la riga di riepilogo dell'attività.

Premere "m" per scorrere la memoria e scambiare le righe di memoria attraverso diverse opzioni di visualizzazione. La prima pressione sostituisce le statistiche con un grafico ASCII.

Un'altra pressione cambia il grafico per bloccare i caratteri.

Annuncio pubblicitario

Premere "m" ancora una volta per rimuovere del tutto le linee della CPU.

Se lo desideri, puoi vedere contemporaneamente i grafici della CPU e della memoria. Basta premere "t" e "m" fino a ottenere la combinazione desiderata.

Colore ed evidenziazione

È possibile premere "z" per aggiungere colore al display.

Quando pensi a top , probabilmente non pensi ai display colorati e ai grafici ASCII, ma sono integrati.

Premere "y" per evidenziare le attività in esecuzione nell'elenco dei processi. Premendo “x” si evidenzia la colonna utilizzata per ordinare l'elenco dei processi. Puoi alternare tra l'evidenziazione del testo in grassetto e invertita premendo "b".

Ordinamento per colonne

Per impostazione predefinita, l'elenco dei processi è ordinato in base alla colonna %CPU . È possibile modificare la colonna di ordinamento premendo quanto segue:

  • P: la colonna %CPU .
  • M: La colonna %MEM .
  • N: la colonna PID .
  • T: La colonna TIME+ .
Annuncio pubblicitario

Nell'immagine seguente, l'elenco dei processi è ordinato in base alla colonna PID .

Vedi la riga di comando completa

Premendo "c" la colonna COMANDO passa dalla visualizzazione del nome del processo alla riga di comando completa.

Per visualizzare un "albero" di processi avviati o generati da altri processi, premere V.

Vedere Processi per un singolo utente

Premi "u" per vedere i processi per un singolo utente. Ti verrà richiesto il nome o l'UID.

Digitare il nome dell'UID della persona che si desidera monitorare. Digiteremo "dave" e premiamo "Invio". Ora, gli unici processi nell'area attività appartengono all'utente dave .

Vedi solo attività attive

Premi I per vedere solo le attività attive.

Le attività che non hanno consumato CPU dall'ultimo aggiornamento non verranno visualizzate.

Imposta quanti processi visualizzare

Premere “n” per limitare la visualizzazione a un certo numero di righe, indipendentemente dal fatto che le attività siano attive. Ti verrà chiesto il numero di processi da visualizzare.

Annuncio pubblicitario

Abbiamo digitato 10 e premuto Invio, quindi nell'area attività vengono visualizzati 10 processi.

Renice un processo

È possibile premere "r" per modificare il valore piacevole (priorità) per un processo. Ti verrà richiesto l'ID del processo. Basta premere Invio per utilizzare l'ID processo dell'attività nella parte superiore della finestra del processo. Digitiamo 7800, che risulta essere l'ID di processo di un'istanza di Firefox.

Dopo aver premuto Invio, ti viene richiesto il nuovo valore interessante da applicare al processo. Digitiamo 15, quindi premiamo Invio.

Il nuovo valore piacevole viene applicato immediatamente al processo.

CORRELATI: Come impostare le priorità di processo con nice and renice su Linux

Uccidi un processo

Premi "k" per terminare un processo. Ti verrà quindi richiesto l'ID del processo che desideri eliminare. In effetti, puoi inviare qualsiasi segnale al processo. Uccidiamo il processo 7879, che ha smesso di rispondere.

Annuncio pubblicitario

Ti verrà offerta la possibilità di digitare il segnale che desideri inviare. Puoi specificarlo per nome o numero. Se premi semplicemente Invio, top invia il segnale SIGTERM (kill).

Non appena premi Invio, il segnale viene inviato al processo.

CORRELATI: Come eliminare i processi dal terminale Linux

Personalizzazione del display

Puoi anche personalizzare i colori e le colonne visualizzate. Cambieremo il colore utilizzato per i prompt, il cui valore predefinito è rosso.

Premere la Z maiuscola per andare alla pagina delle impostazioni del colore. La parte superiore dello schermo mostra i colori utilizzati dai diversi elementi di visualizzazione. Per indicare quale elemento del display si desidera modificare, premere uno dei seguenti, che fanno distinzione tra maiuscole e minuscole:

  • S : Area dei dati di riepilogo.
  • M : Messaggi e prompt.
  • H : Intestazioni di colonna.
  • T : Informazioni sull'attività nell'elenco dei processi.

Premiamo M per modificare i prompt.

Per scegliere un colore, premere uno dei seguenti numeri:

  • 0: nero.
  • 1: rosso.
  • 2: verde.
  • 3: giallo.
  • 4: Blu.
  • 5: Magenta.
  • 6: Ciano.
  • 7: Bianco.

Premiamo 6 per usare ciano.

Premi Invio per salvare le tue impostazioni. Le richieste di input ora saranno del colore selezionato.

Annuncio pubblicitario

Possiamo anche modificare le colonne visualizzate nella schermata di gestione dei campi. Premere F per accedere alla schermata di gestione dei campi.

I campi visualizzati hanno un asterisco ( * ) accanto e sono evidenziati in grassetto. Premere le frecce su e giù per spostare l'evidenziazione nell'elenco dei campi.

Se sposti l'evidenziazione dalla parte inferiore di una colonna, apparirà in cima alla successiva (a meno che tu non sia in fondo all'ultima colonna). Se lo sposti fuori dalla cima di una colonna, apparirà in fondo alla precedente (a meno che tu non sia in cima alla prima colonna).

Abbiamo spostato l'evidenziazione sulla voce COMMAND , quindi abbiamo premuto "d" per rimuovere l'asterisco ( * ). Siamo quindi passati alla voce UID e abbiamo premuto "d" per posizionare un asterisco accanto a quella voce. Ciò significa che la colonna COMMAND non verrà visualizzata, ma lo sarà la colonna UID .

Mentre l'evidenziazione è sulla colonna UID , premiamo "s" per ordinare l'elenco dei processi sulla colonna UID .

Premere Invio per salvare le impostazioni, quindi premere "q" per uscire dalla schermata di gestione dei campi.

Annuncio pubblicitario

La colonna UID ha sostituito la colonna COMMAND e l'elenco dei processi è ordinato in base ad essa.

Modalità di visualizzazione alternativa

Funziona meglio in modalità a schermo intero. Premere A per visualizzare quattro aree nell'elenco dei processi, quindi premere "a" per spostarsi da un'area all'altra.

Ogni area ha una raccolta diversa di colonne, ma ognuna è anche personalizzabile tramite la schermata di gestione dei campi. Ciò ti dà la possibilità di avere una visualizzazione personalizzata a schermo intero che mostra informazioni diverse in ciascuna area e la possibilità di ordinare ciascuna area in base a una colonna diversa.

Altre sequenze di tasti

Di seguito sono riportate alcune altre chiavi che potresti trovare utili in top :

  • W : Salva le tue impostazioni e personalizzazioni in modo che siano ancora top al prossimo avvio.
  • d : consente di impostare una nuova frequenza di aggiornamento del display.
  • Spazio : forza la top per aggiornare la sua visualizzazione in questo momento.

Banana superiore

Come abbiamo visto, top ha un bel repertorio. Altri programmi, come htop , ne sono stati ispirati, ma ognuno ha la propria opinione sulle cose.

Annuncio pubblicitario

Tuttavia, top è installato ovunque. Quando vai in azienda per esaminare reti o server, ti verrà spesso detto che non è possibile modificare assolutamente nulla sui server live. Il client fa le regole, quindi devi usare ciò che è già installato.

Anche se preferisci uno strumento di monitoraggio diverso, dovresti conoscere top . Prima o poi, probabilmente ti ritroverai in una situazione in cui è tutto ciò a cui avrai accesso.

CORRELATI: I migliori laptop Linux per sviluppatori e appassionati