Come terminare un processo in Linux

Tramite: O2O
Difficoltà: media
18

Introduzione

Linux e i sistemi operativi UNIX non vengono distribuiti come Windows della utility Task Manager (o Gestione delle Attività) per terminare i processi indesiderati o in stallo.
Per non riavviare quindi il personal computer ogni volta che ci si presenta una situazione simile è buona norma essere in grado di utilizzare i mezzi (potenti, ma non troppo intuitivi) messi a disposizioni dalle distribuzioni UNIX.

28

Occorrente

  • Terminale
  • Conoscenza base del sistema linux
38

Processi e PID (ID del processo)

In Linux (o più in generale in tutti i sistemi operativi) ogni comando inviato dall'utente alla macchina o eseguito automaticamente dalla macchina stessa, viene registrato come un processo.
Tali processi vengono identificati univocamente dal sistema mediante un codice di identificazione denominato PID (Process Identification Number, o Numero identificativo del processo), composto da una sequenza numerica.
L'uso del PID permette all'utente o al sistema di compiere azioni solo sul processo desiderato (come ad esempio la terminazione), lasciando inalterato il resto dei processi.

48

Ricavare il PID del processo

Per ricavare il PID di un processo in un sistema Linux è necessario operare mediante il terminale di linux.
Una volta aperto il terminale, le modalità per ottenere il PID del processo sono molteplici, ne vedremo ora alcune.
Se siamo in possesso del nome da terminare il comando da digitare è:

pidof [nome del processo]

ad esempio, se volessimo terminare il programma "pippo" il comando che andremo a eseguire sarà:

pidof pippo

alternativamente a pidof un altro comando molto usato per identificare il PID di un processo è:

ps aux | grep [nome del processo],

ad esempio ancora nel caso del programma "pippo":

ps aux | grep pippo

Un esempio del risultato dell'uso di questi due comandi può essere trovato qui

Se invece non siamo in possesso del nome del processo da terminare può essere utile l'utilizzo di programmi come "htop" (sito ufficiale qui), grazie al quale è possibile reperire in maniera semplice tutte le informazioni necessarie sui processi attivi nel nostro sistema.

Continua la lettura
58

Terminare un processo: i privilegi di sistema

Prima di vedere il comando con cui terminare i nostri processi è utile sapere che non tutti i processi attivi possono essere terminati dall'utente.
Come in Windows infatti accade che ai diversi utenti siano dati privilegi differenti e tali privilegi influenzano la capacità dell'utente di compiere specifiche azioni.
L'utente del sistema può infatti terminare solo i processi da lui inziati, non ha invece potere sui processi del sistema e sui processi inizializzati da altri utenti. Solo gli amministratori del sistema, chiamati in linux utenti "root", hanno la capacità di terminare qualsiasi processo, sia esso del sistema o di un utente.
Prima di procedere con il terminare un processo è utile conoscere quindi la propria posizione nel sistema e i privilegi a noi assegnati.

68

Terminare un processo: il comando kill

Identificato il PID del nostro processo e in possesso dei privilegi necessari possiamo compiere la terminazione del processo indesiderato mediante il comando "kill".
La sintassi da utilizzare nel terminale è la seguente:

kill [PID]

Il comando kill così eseguito invierà un segnale di interruzione al sistema, che provvederà a terminare il processo, salvando eventuali dati presenti al momento della terminazione.

In certe circostanze, come ad esempio nei casi di processi che prevedono il collegamento con reti esterne, il comando kill da solo può non bastare a terminare il programma e si rende necessaria l'aggiunta di opzioni specifiche che rafforzino l'intensità del segnale di terminazione.

78

Terminare un processo: kill potenziato

Il comando kill può essere potenziato con specifiche opzioni nel caso di processi particolarmente ostici da terminare.
Le opzioni non sono altro che una serie di comandi aggiuntivi da interporre tra il comando kill e il processo da terminare e che danno ulteriori istruzioni su come il processo deve essere terminato. La sintassi per aggiunere un opzione al comando kill è la seguente:

kill [opzione] [PID]

In particolare noi siamo interessati ad un opzione di kill denominata SIGKILL. Tale opzione ci permette di chiudere forzatamente il processo, terminando però anche TUTTE le funzioni collegate a tale processo e cancellando eventuali dati presenti nel processo.
Il risultato di questa opzione è un segnale molto forte, che si propaga anche a processi collegati ed è consigliato solo come ultima risorsa.
Esistono due sintassi predefinite per richiamare l'opzione SIGKILL (totalmente equivalenti):

kill -9 [PID]

kill -SIGKILL [PID]

ATTENZIONE: il carattere " - " prima dell'opzione è necessario e non va eliminato!

88

Consigli

Non dimenticare mai:
  • Non utilizzare kill per terminare normalmente i programmi o processi funzionanti! Utilizzare solamente nei casi sopra descritti
  • Se avete dubbi sul funzionamento del comando kill leggete il manuale digitando il comando: man kill all.interno del vostro terminale

Potrebbe interessarti anche

Segnala contenuti non appropriati

Tipo di contenuto
Devi scegliere almeno una delle opzioni
Descrivi il problema
Devi inserire una descrizione del problema
Si è verificato un errore nel sistema. Riprova più tardi.
Verifica la tua identità
Devi verificare la tua identità
chiudi
Grazie per averci aiutato a migliorare la qualità dei nostri contenuti

Guide simili

Linux

Come installare Linux da chiavetta USB

Linux è il nome di una famiglia di sistemi operativi che condividono il medesimo kernel, chiamato appunto Linux. Ognuno di essi, assieme alle varie versioni in cui viene rilasciato, prende il nome di distribuzione, e tutti hanno due importanti caratteristiche...
Linux

Come installare Linux in dual boot

Quando si utilizza il computer, il funzionamento di tutti i programmi in esso contenuti dipende dalla stabilità del sistema operativo. Come ben sappiamo, esistono altri OS oltre al caro buon vecchio Windows. Uno di questi è Linux, altrettanto pratico...
Linux

Analisi forense con Linux: i migliori programmi

Per analisi Forense si intende quella disciplina che recupera i dati e li analizza per ricavarne informazioni sensibili. Con Linux troviamo il campo della "computer forensics" ovvero l'informatica forense. Lo scopo di queste analisi e operazioni di recupero...
Linux

Come trasformare un vecchio computer in un server Linux

Se abbiamo un vecchio computer e non sappiamo che uso farne, lo possiamo sfruttare per creare un server Linux che possa offrirci una serie di servizi come ad esempio la gestione di una rete locale o l'amministrazione di alcune periferiche come la stampante,...
Linux

Come installare Flash Player su Linux

In questa dissertazione vedremo com'è facile installare Flash Player sul sistema operativo Linux. Il plugin Flash Player è un'espansione indispensabile per ogni browser attuale: senza di esso, infatti, è davvero difficile riprodurre filmati, interagire...
Linux

Come fare la deframmentazione su Linux

Nonostante il sistema operativo Linux non necessiti di una periodica deframmentazione, a differenza di quanto accade per Windows, delle volte può andare incontro a un rallentamento e, in questa circostanza, può risultare utile eseguire una deframmentazione...
Linux

Come installare Firefox e Thunderbird su Linux

Linux è per pochissime persone. Spesso anche per le poche persone è di difficile comprensione. Nello specifico volevo aiutarvi con l'installazione di due software fondamentali alla vita di tutti i giorni. Su ambiente Linux, è possibile utilizzare due...
Linux

Come installare Eeebuntu, la distro Linux per i netbook

Linux,è un sistema operativo estremamente diffuso perché versatile, affidabile e assolutamente gratuito. La comunità e le società che lo sviluppano hanno una politica di flessibilità del prodotto che le spinge a creare diverse distribuzioni a seconda...
I presenti contributi sono stati redatti dagli autori ivi menzionati a solo scopo informativo tramite l’utilizzo della piattaforma www.o2o.it e possono essere modificati dagli stessi in qualsiasi momento. Il sito web, www.o2o.it e Arnoldo Mondadori Editore S.p.A. (già Banzai Media S.r.l. fusa per incorporazione in Arnoldo Mondadori Editore S.p.A.), non garantiscono la veridicità, correttezza e completezza di tali contributi e, pertanto, non si assumono alcuna responsabilità in merito all’utilizzo delle informazioni ivi riportate. Per maggiori informazioni leggi il “Disclaimer »”.