Com matar processos fàcilment

Bàsicament, hi ha 4 maneres de Matar eficaçment un procés en Linux: Matar-lo pel nom, mitjançant l'especificació d'una part de el nom, pel PID, assenyalant la finestra de l'procés amb el cursor de l'ratolí. Vegem una per una ...

Kill: matar un procés amb el vostre PID

La forma més complicada però a el mateix temps més precisa de matar un procés és a través del seu PID (sigles en anglès de «Identificador de Procés»). Qualsevol d'aquestes 3 variants pot servir:

kill -TERM pid kill -SIGTERM pid kill -15 pid

Es pot usar el nom del senyal (TERM o SIGTERM) que es vol enviar a l'procés o el seu número d'identificació (15). Per veure un llistat complet de les possibles senyals, suggereixo verificar el manual d'kill. Per a això, executa:

Article relacionat:
Apagar i reiniciar mitjançant ordres
man kill

Vegem un exemple de com matar Firefox:

Primer, cal esbrinar el PID de el programa:

ps-ef | grep firefox

Aquest comandament retornarà cosa semblant a això:

1986? Sl 7:22 /usr/lib/firefox-3.5.3/firefox

Fem servir el PID retornat per la comanda anterior per aniquilar el procés:

matar -9 1986

killall: matar un procés amb el vostre nom

Aquesta comanda és ben fàcil

killall nom_procés

Una dada a tenir en compte a l'usar aquest mètode és que en cas que hi hagi més d'una instància d'aquest programa executant-se, es tancaran totes.

Article relacionat:
Cron & crontab, explicats

pkill: matar un procés usant part del seu nom

És possible aniquilar un procés especificant el nom complet o part del nom. Això vol dir que no hi ha necessitat que recordis el PID de el procés per enviar el senyal.

pkill part_nom_procés

Com a contrapartida, aquest mètode aniquilarà tots els processos que continguin la paraula ingressada. Això vol dir que si tenim oberts febrer processos que comparteixen una paraula en el nom, es tancaran tots dos.

xkill: matar un procés seleccionant la finestra amb el ratolí

Aquest és el mètode més senzill i el més pràctic. En cas de desastre, simplement pressiona Alt + F2 perquè s'obri el quadre de diàleg que et permetrà executar ordres. Des d'allà, executa la següent comanda:

xkill

El cursor de el ratolí es transformarà en una petita calavera. Tot el que resta és fer clic a la finestra que vols tancar i voilà. Chau procés.

Alguns comentaris finals

Per acabar, volia compartir alguns consells que poden ser d'utilitat. A Linux, a l'igual que en Windows, quan un procés es penja, generalment es pot tancar la finestra en qüestió fent clic al botó Tancar (que té la forma d'una X). Després d'uns segons, apareixerà una finestra preguntant-nos si realment volem aniquilar el procés ja que aquest no respon adequadament. Li donem que si i llest.

Això vol dir que els mètodes aquí descrits haurien de ser utilitzats quan no passa res a l'fer clic al botó Tancar de la finestra en qüestió.

En cas de desastre major, no oblidis que abans de pressionar és possible realitzar un reinici «segur».

Finalment, pot ser de molta utilitat descobrir quins són els processos que estan executant-se actualment. Per a això, els diferents entorns d'escriptori (GNOME, KDE, etc.) tenen eines gràfiques que faciliten aquesta tasca. No obstant això, en cas que no puguis accedir-hi o simplement desitges fer-ho des del terminal, podeu executar el següent:

superior

En cas que això no funcioni o que no tinguis el paquet corresponent instal·lat, sempre pots executar:

ps -A

Això llistarà tots els processos en execució, juntament amb els seus respectius noms i PIDs.


22 comentaris, deixa el teu

Deixa el teu comentari

La seva adreça de correu electrònic no es publicarà. Els camps obligatoris estan marcats amb *

*

*

  1. Responsable de les dades: Miguel Ángel Gatón
  2. Finalitat de les dades: Controlar l'SPAM, gestió de comentaris.
  3. Legitimació: El teu consentiment
  4. Comunicació de les dades: No es comunicaran les dades a tercers excepte per obligació legal.
  5. Emmagatzematge de les dades: Base de dades allotjada en Occentus Networks (UE)
  6. Drets: En qualsevol moment pots limitar, recuperar i esborrar la teva informació.

  1.   Jeroni Navarro va dir

    «Ps -ef | grep firefox »no és el mateix que fer« pgrep firefox »?

    Bé personalment ús «pidof» per obtenir el PID.

    Salutacions!

  2.   Iago Martínez Ocaña va dir

    jo el que més ús és:
    ~ $ Top
    mostrant-nos la llista de processos actius, després si donem a «k» o escrivim «kill» ens demanarà el pid de el procés a matar (el llegim de top) i després intro, per sortir de top premem «q».
    Molt bona entrada, però em sembla més simple aquesta forma. Si el terminal no s'executa vam provar amb ctrl + alt + f [1-6] i el hacemeos des d'aquí.

  3.   Anatonia va dir

    Que genis nois gràcies per ajudar-me em van donar una gran mà amb aquest post !!!

  4.   Octavio Villanueva va dir

    Hola! ¿Pot ser que la comanda xkill només faci desaparèixer el programa de les X i segueixi obert? Perquè em passa sempre que quan vaig a l'administrador de tasques el procés segueix viu i he de matar-lo.
    Ho admeto, sóc molt novell. I les ordres killall i pkill em van a servir molt. Gràcies per pujar-los, molt bon bloc.
    Salutacions!

  5.   heberth Ardila va dir

    recomano htop 😀 és la millor per a això ...

    funciona amb ncurses

    suo apt-get install htop

  6.   lyonn va dir

    pidof no és per a tots els Unix, per exemple Solaris no té aquest comando, i això ens porta a fer servir el poderós pg.

    Salutacions

  7.   doblegar va dir

    htop és mes verbós i friendly user

  8.   RudaMacho va dir

    En el cas d'utilitzar PID el correcte és $ kill PID que envia el senyal SIGTERM per defecte, en el cas que el procés no respongui s'utilitza $ kill -9 PID que envia el senyal SIGKILL, això últim elimina el procés sense deixar que el mateix tancament correctament (pot haver pèrdua de dades per ex.). SIGTERM demana per favor, SIGKILL li dóna un cop de destral 🙂

  9.   Rodrigo va dir

    Moltes gràcies, ho provaré en si em torna a passar.

  10.   Rodrigo va dir

    una consulta. ¿Quan es penja l'entorn d'escriptori en Ubuntu (jo faig servir Unity), es pot reiniciar sense matar tots els altres processos ?. Jo no sóc molt avançat en linux i em passa a vegades que estic treballant i es penja, l'únic que es fer és el reinici segur, però perdo tot en el que estava treballant.

    No se si s'entén el meu dubte.

    Salutacions

  11.   StallValds va dir

    Un procés en estat Zombie no es pot eliminar de la forma tradicional.

    Aqui per més detalls: esdebian.org/wiki/matar-proceso-zombie

  12.   krafty va dir

    Per als més avançats, com mates a un procés en estat ZOMBIE?
    només per generar una mica de xerrada 😀

  13.   Jorge Vips va dir

    Molt bo, just el que necessitava ..

  14.   Pepe va dir

    La veritat és que la comanda kill és molt útil. Poder matar processos molestos amb només invocar kill és genial. Per fi una ordre que serveix per a alguna cosa.

  15.   Alex va dir

    Pregunta teòrica: Matar un procés vol dir que aquest deixa de funcionar. Llavors, la meva pregunta és a l'reves, si vull arrencar de nou aquest procés que vaig matar, com ho faig?

    1.    alex va dir

      doncs poses ./(el nom de l'procés) &
      amb això ho executes de nou i et sortirà el seu PID també 😀

  16.   JC Rivera va dir

    Excel·lent, tenia temps buscant ajuda com aquesta. Em va ser molt útil. Moltes gràcies per compartir.
    Salutacions des de San Luis Potosí, Mèxic.

  17.   alex va dir

    Com puc matar dos processos sabent ja el seu PID en el mateix ordre?

    1.    Joan va dir

      Crec que era «kill [Primer PID] [Segona PID]

  18.   gauchita Watafak va dir

    Molt interessant l'article. Aquesta web és la meva web linux de capçalera.

    Generalment jo faig servir:
    ps ax | grep nombre_del_proceso (això per ubicar-lo en el sistema)
    kill -9 id_del_procés

    Les comparteixo un curs online i gratuït de bash que camina en la volta:
    https://aprendemia.com/cursos/curso-de-bash-scripting Tant de bo els sigui d'utilitat.

  19.   andy va dir

    i si volgués que fos un perfil a linux només el que es tanqui com hauria de ser?

    exemple tinc 2 perfils de firefox oberts
    però només vull que un sol perfil es tanqui

    perfil 1
    perfil 2

    vull que només el perfil 2 es tanqui com hauria de ser la comanda

    per endavant gràcies per la resposta

  20.   Moi va dir

    com puc matar els processos de primer pla d'ubuntu, amb una sola línia de comndos