Ottenere le informazioni sui processi
Ottenere il processo che non risponde è il primo passo per ucciderlo. Possiamo ottenere le informazioni sul processo usando due comandi, i.e., in alto e ps. Per visualizzare un elenco dei processi in esecuzione, digita top dalla riga di comando:
$ in altoO
$ ps
Troverai alcuni dettagli rilevanti sul terminale. Ad esempio, immagina una situazione in cui il processo relativo alla "Applicazione" non ha risposto. Nel nostro caso, ci sono quattro istanze di applicazioni in esecuzione con ID di processo (PID) 5441, 3870, 5062 e 3637, 4233, 770, 3787, secondo la nostra visualizzazione dei comandi principali.
Sebbene il top sia estremamente utile, non è sempre il modo più efficiente per ottenere informazioni. Ora diciamo che devi uccidere i processi dell'applicazione, ma non vuoi ottenere le informazioni in tempo reale dal comando in alto. in questo scenario, puoi usare il comando ps. Inoltre, possiamo filtrare l'output usando il comando grep. Ci interessa solo elencare i processi relativi all'applicazione. Utilizzare il comando fornito di seguito per visualizzare i processi relativi all'applicazione:
$ ps aux | applicazione grepMentre,
a = Mostra tutti i processi relativi all'utente
u = Mostra il proprietario/utente del processo.
x = Mostra tutti i processi che non sono collegati al terminale
Il grep stampa le linee che corrispondono a un modello, mentre ps restituisce un'istantanea di un processo corrente. Il motivo per usare grep per filtrare ps è semplice: se esegui ps da solo, otterrai un'istantanea di tutti i processi in esecuzione.
Visualizza l'elenco dei segnali:
Digita kill -l per visualizzare l'elenco di tutti i segnali. Possiamo inviare vari segnali con il comando kill.
Possiamo scegliere qualsiasi segnale dall'elenco dei segnali dati.
$ kill -l
Ci sono alcuni segnali di uccisione comuni:
Nome dei segnali Valore del segnale Effetto
SIGHUP 1 RiagganciareSIGINT 2 Interruzione dalla tastiera
SIGKILL 9 Segnale di uccisione
SIGTERM 15 Segnale di terminazione
SIGSTOP 17, 19, 23 Arresta il processo
Elimina i processi per ID:
Quindi, usiamo il comando kill per terminare la nostra applicazione. La sintassi sarebbe così:
Kill segnale PIDInvia il segnale kill per uccidere i processi 4129:
Uccidi -9 4124
Invia il segnale per riagganciare i processi 5427:
Uccidi -1 5427
Invia il segnale per interrompere il processo 5250 dalla tastiera:
Uccidi -2 5250
Uccidi il processo per nome:
Se vuoi uccidere tutti i processi in esecuzione nell'applicazione. Usa il comando killall:
$ killall -9 applicazione
Tutti i processi in esecuzione in un'applicazione sono stati terminati con successo.
Conclusione:
Prima di uccidere qualsiasi processo Linux, dobbiamo prima vedere l'elenco di tutti i processi in esecuzione per ottenere l'ID del processo. Possiamo utilizzare più segnali con il comando kill, mentre ogni segnale viene utilizzato per uno scopo specifico.