Linux Command Line Tutorial For Beginners 15 - kill command
Sommario:
kill
Command- Terminare i processi usando il comando
kill
- Ricaricare i processi usando il comando
kill
- Conclusione
Linux è un sistema operativo eccezionale e avanzato, ma non è perfetto. Di tanto in tanto, alcune applicazioni potrebbero iniziare a comportarsi in modo irregolare e non rispondere o iniziare a consumare molte risorse di sistema. Le applicazioni che non rispondono non possono essere riavviate perché il processo dell'applicazione originale non si arresta mai completamente. L'unica soluzione è riavviare il sistema o terminare il processo dell'applicazione.
Esistono diverse utility che ti consentono di terminare i processi errati con
kill
essendo il più comunemente usato.
kill
Command
kill
è una shell integrata nella maggior parte delle shell derivate da Bourne come Bash e Zsh. Il comportamento del comando è leggermente diverso tra le shell e l'eseguibile standalone
/bin/kill
.
Utilizzare il comando
type
per visualizzare tutte le posizioni sul proprio sistema contenenti
kill
:
type -a kill
kill is a shell builtin kill is /bin/kill
L'output sopra dice che l'integrato della shell ha la priorità sull'eseguibile autonomo e viene usato ogni volta che si digita
kill
. Se si desidera utilizzare il file binario, digitare il percorso completo del file
/bin/kill
., useremo il Bash incorporato.
La sintassi del comando
kill
ha la forma seguente:
kill…
Il comando
kill
invia un segnale a processi o gruppi di processi specificati, facendoli agire in base al segnale. Quando il segnale non è specificato, il valore predefinito è
-15
(-TERM).
I segnali più comunemente usati sono:
-
1
(HUP
) - Ricarica un processo.9
(KILL
) - Termina un processo.15
(TERM
) - Arresta con grazia un processo.
Per ottenere un elenco di tutti i segnali disponibili, invoca il comando con l'opzione
-l
:
kill -l
I segnali possono essere specificati in tre modi diversi:
- Usando il numero (es.
-1
o-s 1
). Usando il prefisso “SIG” (es.-SIGHUP
o-s SIGHUP
). Senza il prefisso “SIG” (es.-HUP
o-s HUP
).
I seguenti comandi sono equivalenti tra loro:
kill -1 PID_NUMBER
kill -SIGHUP PID_NUMBER
kill -HUP PID_NUMBER
I PID forniti al comando
kill
possono essere uno dei seguenti:
- Se il
PID
è maggiore di zero, il segnale viene inviato al processo con ID uguale alPID
. Se ilPID
è uguale a zero, il segnale viene inviato a tutti i processi nel gruppo di processi corrente. In altre parole, il segnale viene inviato a tutti i processi appartenenti al GID della shell che ha invocato il comandokill
. Utilizzare il comandops -efj
per visualizzare gli ID del gruppo di processi (GID). Se ilPID
è uguale a-1
, il segnale viene inviato a tutti i processi con lo stesso UID dell'utente che richiama il comando. Se l'utente che invoca è root, il segnale viene inviato a tutti i processi tranne init e il processo dikill
Se ilPID
è inferiore a-1
, il segnale viene inviato a tutti i processi nel gruppo di processi eq con GID uguale al valore assoluto di ilPID
.
Gli utenti regolari possono inviare segnali ai propri processi, ma non quelli che appartengono ad altri utenti, mentre l'utente root può inviare segnali ai processi di altri utenti.
Terminare i processi usando il comando
kill
Per terminare o terminare un processo con il comando
kill
, devi prima trovare il numero ID del processo (PID). Puoi farlo usando diversi comandi come
top
,
ps
,
pidof
e
pgrep
.
Supponiamo che il browser Firefox non abbia risposto e che sia necessario interrompere il processo di Firefox. Per trovare i PID del browser, utilizzare il comando
pidof
:
pidof firefox
Il comando stamperà gli ID di tutti i processi di Firefox:
6263 6199 6142 6076
Una volta che conosci i numeri dei processi, puoi terminarli tutti inviando il segnale
TERM
:
kill -9 2551 2514 1963 1856 1771
Invece di cercare PID e quindi terminare i processi, puoi combinare i comandi sopra in uno:
Ricaricare i processi usando il comando
kill
Un altro caso d'uso comune per
kill
è l'invio del segnale
HUP
, che dice ai processi di ricaricare le sue impostazioni.
Ad esempio, per ricaricare Nginx, è necessario inviare un segnale al processo principale. L'ID processo del processo master Nginx è reperibile nel file
nginx.pid
, che in genere si trova nella directory
/var/run
.
Utilizzare il comando
cat
per trovare il PID principale:
cat /var/run/nginx.pid
30251
Una volta trovato il PID principale, ricarica le impostazioni di Nginx digitando:
sudo kill -1 30251
Il comando sopra deve essere eseguito come utente root o utente con privilegi sudo.
Conclusione
Il comando
kill
viene utilizzato per inviare un segnale ai processi. Il segnale utilizzato più frequentemente è
SIGKILL
o
-9
, che termina i processi indicati.
Cogli la riga di comando con il comando Take

Integra il prompt dei comandi, la GUI e un potente linguaggio batch con il potente toolkit Take Command.
Scarica RKill: uccidi i processi di malware persistenti prima di eseguire il software di sicurezza

RKill scarica il link all`interno. È uno strumento che elimina i noti processi di malware che bloccano l`uso di normali applicazioni anti-malware. Sicuro da usare dopo aver seguito le istruzioni.
Comando chmod in linux (permessi dei file)

In Linux l'accesso ai file è gestito attraverso le autorizzazioni, gli attributi e la proprietà dei file. Questa esercitazione illustra come utilizzare il comando chmod per modificare le autorizzazioni di accesso a file e directory.