GNU/Linux >> Linux Esercitazione >  >> Linux

4 Strumenti di monitoraggio delle prestazioni Linux basati su CLI:top, htop, ps e vmstat

Linux è un sistema operativo molto stabile con potenti funzionalità di sicurezza. In diverse occasioni, potremmo aver bisogno di osservare le prestazioni del nostro sistema, forse a causa di qualche problema tecnico o come parte di un controllo sanitario di routine. La misurazione delle prestazioni ci offre una rapida panoramica di come sta andando il nostro sistema, ad es. i registri delle prestazioni possono dirci quali processi sono in esecuzione, quanta memoria è in uso, quanta CPU viene utilizzata ecc. Queste informazioni ci aiutano anche a prendere decisioni relative alla pianificazione efficace delle risorse, al debug dei problemi di sistema, ecc. La maggior parte delle distribuzioni Linux fornisce comando- strumenti di linea e grafici per svolgere questo compito. Alcuni di questi vengono forniti in anticipo con il sistema operativo e alcuni potrebbero dover essere installati. Questi strumenti sono classificati come strumenti di monitoraggio in tempo reale o strumenti basati su log.

Gli strumenti di monitoraggio in tempo reale, come suggerisce il nome, forniscono informazioni sul sistema nel suo stato attuale. I risultati sono in continuo aggiornamento.

Gli strumenti basati su log archiviano i risultati delle prestazioni in un file che può essere successivamente recuperato per l'elaborazione, l'analisi o l'utilizzo di un'altra applicazione.

Cosa faremo qui?

In questa guida presenteremo alcuni degli strumenti basati sulla riga di comando comunemente utilizzati per il monitoraggio delle prestazioni del sistema. Stiamo utilizzando il sistema operativo Ubuntu 20.04 per questa guida, sebbene gli strumenti di cui parleremo siano disponibili per la maggior parte delle distribuzioni basate su Linux.

Perché il modo CLI?

Una domanda ovvia che potrebbe venire in mente è perché siamo più interessati agli strumenti basati sulla riga di comando. Il primo motivo è che potresti non essere sempre fortunato a far funzionare un ambiente grafico, ad es. il sistema su cui stai lavorando potrebbe essere un server di produzione remoto e non ha un'interfaccia grafica. Se per un momento hai un sistema locale, potresti non avere i privilegi per installare un'interfaccia grafica su di esso. Un altro motivo è che con un'interfaccia a riga di comando abbiamo l'opportunità di multitasking. Tmux è un'applicazione da cui possiamo monitorare più sistemi contemporaneamente.

1. Superiore

Questo comando visualizza un riepilogo dello stato del sistema in tempo reale. L'output visualizza la quantità di memoria di sistema (RAM) utilizzata per scopi diversi, la percentuale di CPU utilizzata, la memoria di scambio e altre informazioni. Le statistiche dei processi in termini di memoria e utilizzo della cpu vengono visualizzate anche semplicemente eseguendo il comando in alto senza alcuna opzione:





Possiamo anche selezionare le colonne da visualizzare nell'output "top" digitando "f" mentre "top" è in esecuzione. Nella nuova schermata, seleziona o deseleziona qualsiasi colonna premendo la "barra spaziatrice" o "d", quindi premi "esc" per tornare indietro. Nell'immagine qui sotto abbiamo rimosso alcune colonne e ne abbiamo aggiunta una nuova (GID):

2. Inizio

Il comando Htop visualizza i dati in modo più informativo e interattivo. I nomi dei processi sono più descrittivi e l'integrazione del mouse è una funzionalità aggiuntiva che non è presente con il comando "top". Possiamo usare il mouse per selezionare varie colonne visualizzate sull'output del terminale. Un altro vantaggio è che fornisce una codifica a colori per afferrare e analizzare facilmente l'output. 'Htop' può essere installato su Ubuntu 20.04 usando il comando:

$ sudo apt install htop

Per regolare varie impostazioni, Htop utilizza i tasti funzione. Per es. F3 può essere utilizzato per cercare l'output visualizzato sulla console. Per elencare i processi di proprietà di un utente specifico, il comando da utilizzare è:

$ htop -u User_Name

Per l'utente root, il comando sarà:

$ htop -u root


Per avviare Htop in modalità monocromatica, utilizzare: 

$ htop -C

4. ps

L'implementazione del comando "ps" differisce notevolmente tra i diversi sistemi Unix, ad es. può utilizzare un flag (opzione) su un sistema e un altro per un sistema diverso anche se l'output può essere lo stesso in entrambi i casi. Nel caso del comando "ps", l'output è statico a differenza di "top" e "htop" in cui otteniamo aggiornamenti in tempo reale. Quando non viene passata alcuna opzione, il comando 'ps' restituisce il nome della shell attiva e gli eventuali processi.

Per visualizzare tutti i processi in esecuzione, inclusi quelli di proprietà di altri utenti (proprietari), utilizzare il comando:

$ ps aux


Poiché abbiamo utilizzato l'opzione "u", verrà visualizzato anche il nome degli utenti. Un altro modo per visualizzare l'elenco dei processi in esecuzione sul sistema consiste nell'usare il comando:

$ ps -A

Probabilmente avresti notato che gli output dei comandi "ps" sono generalmente grandi. Per semplificare il lavoro di analisi o filtraggio possiamo utilizzare il comando 'grep'. Per es. per filtrare i processi "/usr/lib/firefox/firefox", utilizzare:

$ ps aux | grep ‘/usr/lib/firefox/firefox/


Allo stesso modo, possiamo reindirizzare l'output a un file anziché visualizzarlo sul terminale. Ecco un esempio:

$ ps -aux > output.txt

Il comando precedente indirizzerà l'output in un file "output.txt".

4. Vmstat

Il reporter della memoria virtuale o vmstat raccoglie dati su CPU, memoria virtuale (swapd), blocco I/O, dischi ecc. Nel caso in cui non venga utilizzata alcuna opzione, mostra le informazioni medie su questi parametri. La media viene presa dall'ultimo riavvio del sistema. Possiamo specificare una frequenza di campionamento dopo la quale i dati verranno visualizzati sul terminale:

$ vmstat  2

L'uso dell'opzione '-a' ti darà memoria di sistema attiva e inattiva. Come il comando "ps", l'output di "vmstat" varia a seconda delle piattaforme. Possiamo anche specificare il numero di conteggio delle misurazioni:

$ vmstat 1 4


Il primo parametro '1' specifica la frequenza di campionamento e il secondo parametro '4' fornisce il numero di misure da visualizzare nell'output.

Conclusione


Questa è una breve discussione di quattro strumenti basati sulla riga di comando che sono normalmente utilizzati e disponibili sulla maggior parte delle distribuzioni basate su Linux. Ci sono ancora molti strumenti su cui contare. Ogni strumento ha i suoi vantaggi e limiti e selezionare uno strumento specifico dipende dal punto di applicazione. Abbiamo appena toccato la superficie per dare una panoramica di questi strumenti, puoi trovare maggiori informazioni e opzioni da utilizzare facendo riferimento alle pagine man.


Linux
  1. I 5 migliori strumenti per monitorare l'utilizzo e le partizioni del disco Linux

  2. Le 25 migliori domande e risposte per le interviste su Linux

  3. 5 migliori strumenti di monitoraggio Linux basati su terminale

  4. 24 iostat, vmstat e mpstat Esempi per il monitoraggio delle prestazioni di Linux

  5. I 25 migliori strumenti di monitoraggio e debug delle prestazioni Linux

Comando principale di Linux

I 5 migliori strumenti di monitoraggio del sistema

Introduzione al monitoraggio e all'ottimizzazione delle prestazioni di Linux

htop (visualizzatore di processi interattivo) Strumento di monitoraggio delle prestazioni di Linux

I 15 migliori strumenti di biologia per il sistema Linux

I 10 migliori strumenti per informazioni di sistema e hardware Linux