Ricerca nel sito web

Come trovare e uccidere i processi in esecuzione in Linux


La gestione dei processi è uno degli aspetti importanti dell'amministrazione di sistema in Linux e include l'uccisione dei processi utilizzando il comando kill.

In questo tutorial, esamineremo l'eliminazione dei processi meno produttivi o indesiderati sul tuo sistema Linux.

Cos'è un processo in Linux?

Un processo su un sistema Linux può essere un'occorrenza in esecuzione di un'applicazione o di un programma. È anche possibile fare riferimento ai processi come attività in esecuzione nel sistema operativo.

Quando un processo è in esecuzione, continua a passare da uno stato all'altro e un processo può trovarsi in uno dei seguenti stati:

  1. In esecuzione: significa che il processo è in esecuzione o è appena impostato per essere eseguito.
  2. In attesa: significa che il processo è in attesa di un evento o che una risorsa di sistema esegua un'attività.

Esistono due tipi di processi di attesa in Linux: interrompibile e ininterrompibile.

Un processo di attesa che può essere interrotto da segnali è chiamato Interrompibile, mentre un processo di attesa che attende direttamente dalle condizioni hardware e non può essere interrotto in nessuna condizione è chiamato ininterrompibile.

  1. Stopped: significa che il processo è stato interrotto, utilizzando un segnale.
  2. Zombie: significa che il processo è stato interrotto bruscamente ed è morto.

Con questa breve panoramica esaminiamo ora i modi per terminare i processi in un sistema Linux. Abbiamo già trattato alcuni articoli sui modi per uccidere Linux che esegue i processi utilizzando kill, pkill, killall e xkill, puoi leggerli di seguito.

  1. Una guida per gestire i processi Linux utilizzando i comandi Kill, Pkill e Killall
  2. Come uccidere i processi Linux che non rispondono utilizzando il comando Xkill

Quando si terminano i processi, il comando kill viene utilizzato per inviare un segnale con nome a un processo con nome o a gruppi di processi. Il segnale predefinito è il segnale TERM.

Ricorda che il comando kill può essere una funzione incorporata in molte shell moderne o esterna situata in /bin/kill.

Come trovare il PID di processo in Linux

In Linux ogni processo su un sistema ha un PID (Numero di identificazione del processo) che può essere utilizzato per terminare il processo.

Puoi identificare il PID di qualsiasi processo utilizzando il comando pidof come segue:

pidof firefox
pidof chrome
pidof gimp-2.8

Come uccidere i processi in Linux

Una volta trovato il PID del processo, vediamo ora come terminare i processi. In questo primo esempio, otterrò prima il PID del processo e poi gli invierò un segnale.

Voglio terminare il processo gimp, quindi lo farò come segue:

pidof gimp-2.8
kill 9378

Per verificare che il processo sia stato terminato, esegui il comando pidof e non sarai in grado di visualizzare il PID.

pidof gimp-2.8

È inoltre possibile inviare un segnale con nome al processo utilizzando il nome o i numeri del segnale come segue:

pidof vlc
kill -SIGTERM 9541
pidof vlc

Utilizzando il numero del segnale per terminare un processo:

pidof banshee
kill -9 9647
pidof banshee

Nell'esempio sopra, il numero 9 è il numero del segnale per il segnale SIGKILL.

Come eliminare più PID di processo in Linux

Per terminare più di un processo, passa i PID al comando kill come segue:

pidof gimp-2.8
pidof vlc
pidof banshee
kill -9 9734 9747 9762

Riepilogo

Esistono molti altri modi per terminare i processi in Linux, questi pochi esempi aiutano solo a darti una panoramica dei processi di terminazione. Facci sapere come uccidi i processi in Linux? e racconta anche altri modi, se presenti, tramite i commenti.