GNU/Linux >> Linux Esercitazione >  >> Linux

Come uccidere un processo in Linux

Le attività in Linux sono chiamate processi. Ogni processo ha un ID processo univoco. In questo tutorial, ti mostreremo come terminare un processo utilizzando i comandi Linux, per migliorare le tue capacità di gestione VPS.

A cosa serve il comando di uccisione?

A volte, potresti avviare un server o un'applicazione, dimenticartene e devi spegnerlo. In tali scenari, possiamo usare il comando kill.

Di seguito sono riportati alcuni esempi in cui il comando kill può essere utile:

  • Per interrompere qualsiasi processo automatizzato
  • Per interrompere un processo avviato per errore
  • Per interrompere un processo che consuma molta memoria
  • Per forzare l'arresto di qualsiasi processo in esecuzione in Linux
  • Per interrompere un processo in background

Oltre a fermare un processo, il comando kill può fornire diverse funzionalità. Ad esempio, inviare un segnale a un processo. Per impostazione predefinita, questo è considerato un segnale TERM che interromperà il processo.

Come mostrare l'ID processo in Linux

I comandi Kill ti consentono di terminare un processo utilizzando un ID processo specifico, noto anche come pid. Per mostrare un pid in Linux puoi eseguire il seguente comando:

ps

Questo elencherà tutti i processi disponibili con un pid. Se vuoi rendere il tuo elenco più specifico, aggiungi un comando grep come questo:

ps -ux | grep java

Verranno visualizzati tutti i processi Java in esecuzione nell'output.

Come mostrare tutti i segnali di comando di uccisione

Ci sono più segnali disponibili in Linux che possono essere usati per interrompere, terminare o mettere in pausa i processi. Il comando può essere utilizzato come segue:

kill -l

Questo comando visualizzerà una voce di pagina manuale dei diversi segnali di uccisione con i loro nomi e numeri corrispondenti. Sebbene siano disponibili più segnali, nella maggior parte dei casi useremmo SIGKILL (9) e SIGTERM (15).

Come terminare un processo in Linux usando il terminale

Ora siamo pronti per andare avanti e imparare tutti i diversi usi del Kill Command. Per seguire, accedi al tuo server privato virtuale utilizzando SSH.

Utilizzo del comando di uccisione con un PID

Per terminare un processo specifico con un PID usa il seguente comando:

kill 63772

Qui 63772 è il pid per un processo che vogliamo terminare. Poiché non viene specificato alcun segnale, questo sarà SIGTERM segnale. A volte, questo potrebbe non funzionare; in tal caso, potresti dover terminare un processo con forza.

In questi casi, puoi utilizzare il formato del comando come mostrato di seguito:

kill [Signal_or_Option] pid

Di seguito è riportato un comando di esempio per terminare forzatamente il processo:

kill SIGKILL 63772

Allo stesso modo, per uccidere usando l'opzione più breve puoi usare:

kill -9 63772

Sostituire 63772 con il pid pertinente per terminare il processo.

Come eliminare più processi in Linux

Con lo stesso comando, puoi uccidere più processi. La sintassi per questo comando sarebbe:

kill -9 pid1 pid2 pid3

Ecco un esempio che mostra come apparirebbe nel mondo reale:

kill -9 63772 45116 23465

Come terminare un processo in Linux usando il comando Pkill

Pkill è una versione del comando kill in cui puoi specificare il nome del processo o un modello per trovare un processo:

pkill chrome

Il comando precedente ucciderà il browser Chrome. Puoi anche specificare una corrispondenza del nome parziale nella riga di comando come:

pkill chr

Tuttavia, questo comando a volte comporta il rischio di uccidere il processo sbagliato, soprattutto quando sono presenti più processi con lo stesso nome.

Puoi controllare l'elenco utilizzando il nome completo del processo:

pidof chrome

Il comando precedente può essere utilizzato quando si conosce il nome completo del processo.

Puoi verificare la corrispondenza dei processi utilizzando un nome parziale:

pgrep -l chr

Questo comando elencherà il processo con l'ID processo corrispondente.

Come terminare un processo in Linux usando il comando Killall

La differenza fondamentale tra killall e kill è che killall può terminare il processo per nome mentre il comando kill usa il pid.

Un esempio di tale comando è:

killall chrome

Questo è simile a pkill. Tuttavia, killall esegue una corrispondenza esatta del nome, mentre pkill può eseguire una corrispondenza del modello. Questo è uno dei motivi per cui killall è più sicuro rispetto a pkill.

Un'altra differenza è il pacchetto radice a cui appartengono questi comandi. In Linux, killall appartiene al pacchetto psmisc. D'altra parte, comandi come ps, top, kill, pkill appartengono al pacchetto procps.

Un'altra differenza è che killall può essere personalizzato per terminare i processi in base ai timestamp. Nel caso in cui desideri terminare un processo in esecuzione da meno di 40 minuti, puoi utilizzare:

killall -y 40m [Process_Name>]

Allo stesso modo puoi usare le seguenti opzioni insieme al comando killall:

  • s – secondi
  • m – minuti
  • h – ore
  • d – giorni
  • w -settimane
  • M – mesi
  • y – anni

Conclusione

Questo copre i comandi kill più importanti e utili. Per ulteriori informazioni su questa utility essenziale puoi fare riferimento al manuale di Linux. In bocca al lupo per il tuo progetto, ci vediamo al prossimo tutorial!


Linux
  1. Come uccidere un processo zombie su Linux

  2. Come trovare e uccidere il processo Zombie in Linux

  3. Come installare vtop su Linux

  4. Come eliminare i processi in esecuzione in Linux

  5. Come uccidere un processo su Linux usando il comando?

Come uccidere i processi Zombie in Linux

Come trovare e uccidere i processi in esecuzione in Linux

Come eliminare l'esecuzione del processo Linux su una porta particolare

Come KILL un processo su Linux

Come uccidere o terminare un processo Linux:la guida definitiva

Come uccidere i processi in Linux usando kill, killall e pkill