Fondamentalmente ci sono 4 modi de Matar effettivamente a processo en Linux: ucciderlo per nome, specificando una parte del nome, tramite PID, puntando alla finestra del processo con il cursore del mouse. Vediamoli uno per uno ... |
Uccidi: uccidi un processo usando il suo PID
Il modo più complicato ma allo stesso tempo più accurato per terminare un processo è tramite il suo PID ("Process Identifier"). Ognuna di queste 3 varianti può essere pubblicata:
kill -TERM pid kill -SIGTERM pid kill -15 pid
È possibile utilizzare il nome del segnale (TERM o SIGTERM) che si desidera inviare al processo o il suo numero di identificazione (15). Per vedere un elenco completo dei possibili segnali, suggerisco di controllare il manuale di kill. Per fare ciò, esegui:
l'uomo uccide
Vediamo un esempio di come uccidere Firefox:
Per prima cosa, devi scoprire il PID del programma:
ps -ef | firefox
Quel comando restituirà qualcosa del genere:
1986? Sl 7:22 /usr/lib/firefox-3.5.3/firefox
Usiamo il PID restituito dal comando precedente per terminare il processo:
kill -9 1986
killall: uccide un processo usando il suo nome
Questo comando è molto semplice
killall nome_processo
Una cosa da tenere a mente quando si utilizza questo metodo è che se è in esecuzione più di un'istanza di quel programma, verranno tutte chiuse.
pkill: uccide un processo usando parte del suo nome
È possibile terminare un processo specificando il nome completo o parte del nome. Ciò significa che non è necessario che tu ricordi il PID del processo per inviare il segnale.
pkill part_process_name
In cambio, questo metodo ucciderà tutti i processi che contengono la parola inserita. Ciò significa che se abbiamo 2 processi aperti che condividono una parola nel nome, entrambi verranno chiusi.
xkill: termina un processo selezionando la finestra con il mouse
Questo è il metodo più semplice e pratico. In caso di disastro, premi semplicemente Alt + F2 per far apparire la finestra di dialogo che ti permetterà di eseguire i comandi. Da lì, esegui il seguente comando:
Xkill
Il cursore del mouse si trasformerà in un piccolo teschio. Non resta che fare clic sulla finestra che si desidera chiudere e voilà. Ciao processo.
Alcuni commenti finali
In chiusura, volevo condividere alcuni suggerimenti che potrebbero essere utili. In Linux, come in Windows, quando un processo si blocca, la finestra in questione può essere generalmente chiusa facendo clic sul pulsante Chiudi (che ha la forma di una X). Dopo pochi secondi, apparirà una finestra che ci chiederà se vogliamo davvero terminare il processo poiché non risponde correttamente. Diciamo di sì e basta.
Ciò significa che i metodi qui descritti devono essere utilizzati quando non accade nulla quando si fa clic sul pulsante Chiudi della finestra in questione.
In caso di grave disastro, non dimenticare che prima di premere è possibile eseguire a riavvio "sicuro".
Infine, può essere molto utile scoprire quali processi sono attualmente in esecuzione. Per questo, i diversi ambienti desktop (GNOME, KDE, ecc.) Dispongono di strumenti grafici che facilitano questo compito. Tuttavia, nel caso in cui non sia possibile accedervi o semplicemente si desideri farlo dal terminale, è possibile eseguire quanto segue:
top
Nel caso in cui non funzioni o non hai installato il pacchetto corrispondente, puoi sempre eseguire:
ps -A
Questo elencherà tutti i processi in esecuzione, insieme ai rispettivi nomi e PID.
«Ps -ef | "grep firefox" non è lo stesso di "pgrep firefox"?
Beh, personalmente uso "pidof" per ottenere il PID.
Saluti!
quello che uso di più è:
~ $ in alto
mostrandoci l'elenco dei processi attivi, quindi se premiamo "k" o scriviamo "kill" ci chiederà il pid del processo da uccidere (lo leggiamo dall'alto) e poi entriamo, per uscire da top premiamo "q ".
Voce molto buona, ma questa forma mi sembra più semplice. Se il terminale non funziona proviamo ctrl + alt + f [1-6] e lo facciamo da lì.
Che geni, grazie per avermi aiutato, mi avete dato una grande mano con questo post!
Ciao! Potrebbe essere che il comando xkill fa solo sparire il programma X ed è ancora aperto? Perché mi capita sempre che quando vado al task manager il processo è ancora vivo e devo ucciderlo.
Lo ammetto, sono un principiante. E i comandi killall e pkill mi aiuteranno molto. Grazie per averli caricati, ottimo blog.
Saluti!
Consiglio htop 😀 è il migliore per quello ...
lavora con ncurses
sudo apt-get install htop
pidof non è per tutti gli Unix, ad esempio Solaris non ha quel comando e questo ci porta a usare il potente ps.
saluti
htop è più dettagliato e facile da usare
In caso di utilizzo di PID, la cosa corretta è $ kill PID che invia di default il segnale SIGTERM, nel caso in cui il processo non risponde, si usa $ kill -9 PID che invia il segnale SIGKILL, quest'ultimo elimina il processo senza lasciarlo correttamente la stessa chiusura (potrebbe esserci una perdita di dati per esempio). SIGTERM chiede per favore, SIGKILL gli dà un'ascia 🙂
Grazie mille, lo proverò se mi capiterà di nuovo.
una domanda. Quando l'ambiente desktop si blocca in Ubuntu (io uso Unity), può essere riavviato senza interrompere tutti gli altri processi? Non sono molto avanzato in linux ea volte mi capita di lavorare e si blocca, l'unica cosa che faccio è il riavvio sicuro, ma perdo tutto quello su cui stavo lavorando.
Non so se il mio dubbio è stato compreso.
saluti
Un processo nello stato zombie non può essere ucciso nel modo tradizionale.
Qui per maggiori dettagli: esdebian.org/wiki/matar-proceso-zombie
Per i più avanzati, come si uccide un processo nello stato ZOMBIE?
solo per generare una piccola chat 😀
Molto bene, proprio quello di cui avevo bisogno ..
La verità è che il comando kill è molto utile. Essere in grado di uccidere processi fastidiosi semplicemente invocando kill è fantastico. Finalmente un comando che serve a qualcosa.
Domanda teorica: uccidere un processo significa che smette di funzionare. Quindi la mia domanda è il contrario, se voglio riavviare il processo che ho ucciso, come lo faccio?
bene hai messo ./( il nome del processo) &
Con questo lo esegui di nuovo e anche il tuo PID verrà fuori 😀
Eccellente, ho avuto il tempo di cercare un aiuto come questo. Mi è stato molto utile. Grazie mille per la condivisione.
Saluti da San Luis Potosí, Messico.
Come posso uccidere due processi conoscendo il loro PID nello stesso comando?
Penso che fosse "kill [First PID] [Second PID]
Articolo molto interessante. Questo sito Web è il mio sito Web principale per Linux.
Generalmente utilizzo:
ps ascia | grep nome_processo (questo per individuarlo sul sistema)
kill -9 process_id
Condivido un corso bash online gratuito che va in giro:
https://aprendemia.com/cursos/curso-de-bash-scripting Si spera che sia utile.
e se volessi che fosse un profilo in linux solo quello che si chiude come dovrebbe essere?
esempio ho 2 profili firefox aperti
ma voglio che si chiuda un solo profilo
profilo 1
profilo 2
Voglio che solo il profilo 2 si chiuda come dovrebbe essere il comando
in anticipo grazie per la risposta
come posso uccidere i processi in primo piano di Ubuntu, con una singola riga di comando