Lo sapevi?

Gestiamo autonomamente la nostra rete, in modo da ottimizzare le latenze, reagire velocemente in caso problemi e filtrare con più efficienza eventuali attacchi DDoS.

Come gestire i processi su Linux

Estimated reading: 4 minutes 15 views

Ogni programma in esecuzione su Linux viene eseguito come processo. Ad esempio, quando avvii un web server come Nginx o un database come MySQL, il sistema crea uno o più processi dedicati al suo funzionamento.

Sapere come visualizzare, monitorare e terminare i processi è fondamentale per amministrare un server, individuare eventuali rallentamenti e risolvere problemi legati a software bloccati o che consumano troppe risorse.

In questa guida vedremo i principali comandi per gestire i processi direttamente dal terminale.

Prerequisiti

Prima di procedere assicurati di avere:

  • accesso al terminale;
  • un sistema Linux (ad esempio Ubuntu, Debian o AlmaLinux);
  • un utente con permessi sudo (necessario solo per alcune operazioni).

Visualizzare i processi in esecuzione

Per visualizzare tutti i processi attualmente in esecuzione utilizza:

				
					ps aux
				
			

Il comando restituisce un elenco con diverse informazioni. Le colonne più utili sono:

Colonna Descrizione
USER
Utente che ha avviato il processo
PID
Identificativo univoco del processo
%CPU
Percentuale di utilizzo della CPU
%MEM
Percentuale di memoria RAM utilizzata
COMMAND
Comando o programma in esecuzione

Questo comando è particolarmente utile quando si desidera avere una panoramica completa dei processi presenti sul sistema.

Cercare un processo specifico

Se vuoi verificare se un determinato programma è in esecuzione puoi filtrare l’elenco dei processi.

Ad esempio, per cercare i processi di Nginx:

				
					ps aux | grep nginx
				
			

In alternativa puoi utilizzare pgrep, che restituisce direttamente il PID (numero identificativo) del processo:

				
					pgrep nginx
				
			

Se il programma è in esecuzione, verrà visualizzato uno o più PID.

Monitorare i processi in tempo reale

Per osservare l’utilizzo delle risorse del sistema in tempo reale utilizza:

				
					top
				
			

Il comando aggiorna automaticamente l’elenco dei processi mostrando, tra le altre informazioni:

  • utilizzo della CPU;
  • utilizzo della memoria RAM;
  • PID dei processi;
  • tempo di esecuzione;
  • carico complessivo del sistema.

Alternativa a top: htop

Se installato, htop offre un’interfaccia più intuitiva rispetto a top.

Puoi avviarlo con:

				
					htop
				
			

A differenza di top, permette di:

  • navigare con i tasti direzionali;
  • ordinare facilmente i processi;
  • terminare un processo direttamente dall’interfaccia;
  • visualizzare in modo più chiaro il consumo di CPU e memoria.

Se il comando non è disponibile, significa che htop non è installato sul sistema.

Terminare un processo

Per interrompere un processo utilizza il comando kill seguito dal PID.

Ad esempio:

				
					kill 1111
				
			

Nella maggior parte dei casi il processo verrà chiuso correttamente senza ulteriori interventi.

Forzare la chiusura di un processo

Se un processo non risponde al normale comando kill, puoi forzarne l’interruzione utilizzando il segnale -9:

				
					kill -9 1111
				
			

Con questo comando terminerai immediatamente il processo.

Terminare un processo tramite il nome

Se non conosci il PID puoi terminare direttamente tutti i processi con lo stesso nome.

Ad esempio:

				
					killall nginx
				
			

In alternativa puoi utilizzare:

				
					pkill nginx
				
			

Entrambi i comandi cercano i processi in base al nome e li terminano automaticamente.

Individuare i processi che consumano più CPU o più memoria

CPU

Per ordinare i processi in base all’utilizzo della CPU puoi eseguire:

				
					ps -eo pid,user,%cpu,%mem,cmd --sort=-%cpu
				
			

Il comando mostra prima i processi che stanno utilizzando maggiormente il processore.

Può essere utile quando il server risulta lento o presenta un carico elevato.

RAM

Per ordinare i processi in base all’utilizzo della memoria RAM puoi eseguire:

				
					ps -eo pid,user,%mem,%cpu,cmd --sort=-%mem
				
			

Anche in questo caso verranno mostrati per primi i processi che consumano più memoria.

Questa informazione è particolarmente utile per individuare applicazioni che potrebbero causare rallentamenti o esaurire la RAM disponibile.

Leave a Comment

Share this Doc

Come gestire i processi su Linux

Or copy link

CONTENTS