Zombie protsessid

Kirje lugemine saidilt elav Meenus, et foorumis palus keegi abi, kuna nende süsteem oli aeglane, mõned lahendused keskendusid protsessidele.

Linuxi protsesside peamised olekud on:
Magamine (S) : Protsessid, mis ootavad täitmise järjekorda.
Jooksmine (R) : Töötavad protsessid.
Ootel (D) : Protsessid, mis ootavad sisenemise / väljumise toimingu lõpetamist.
Zombie (z) : Protsessid, mis on lõppenud, kuid ilmuvad jätkuvalt protsesside tabelis. Need võivad olla põhjustatud programmeerimisvigadest ja olla aeglase või probleeme põhjustava süsteemi sümptomiks.

Zombie protsess on protsess, mis ei saanud kunagi signaali selle loonud vanemprotsessilt, lapseprotsess pärineb kõrgema taseme protsessist, mida tuntakse vanemprotsessina, mille ülesandeks on lapsele signaalide saatmine. protsesside abil, mis näitavad, et nende eluiga on lõppenud.

Need võivad olla põhjustatud programmeerimisvigadest ja olla aeglase või probleeme põhjustava süsteemi sümptomiks. Selline olukord tekib tavaliselt ka seetõttu, et arendaja ei mõelnud mingile konfiguratsioonile.

Vikipeedias saate Loe rohkem nende protsesside kohta.

Tippkäsu käivitamisel näeme reaalajas süsteemis käivitatavaid protsesse ja see näitab, kas neid on zombie olekus, kuid see ei näita, milline neist on.

protsess

Kõigi protsesside nägemiseks sisestage terminal: ps toja näha ainult zombisid: ps -el | grep 'Z'o ps -A -staat, ppid, pid, cmd | grep -e '^ [Zz]'

alf @ Alf ~ $ ps -A -staat, ppid, pid, cmd | grep -e '^ [Zz]'

Z 1945

Kui protsesside loendisse ilmumisel ilmub Z staatus, tähendab see, et tegemist on zombiga, mis omakorda tähendab, et rakendus pole hästi lahendatud või sisaldab vigu, teades, et selle PID-d saab kõrvaldada, käivitades sarnase käsu, terminalis, selles näites: 

alf @ Alf ~ $ tappa -9 1945

Kui teil on palju zombiprotsesse või vähemalt mitu, saate kasutada järgmist käsku, mis neid tapab, see töötab ainult selleks, kui käivitate selle ilma zombiprotsessideta, ei juhtu midagi:

alf @ Alf ~ $ sudo kill -HUP `ps -A -ostat, ppid, pid, cmd | grep -e '^ [Zz]' | awk '{print $ 2}' ''

seoses


Jäta oma kommentaar

Sinu e-postiaadressi ei avaldata. Kohustuslikud väljad on tähistatud *

*

*

  1. Andmete eest vastutab: Miguel Ángel Gatón
  2. Andmete eesmärk: Rämpsposti kontrollimine, kommentaaride haldamine.
  3. Seadustamine: teie nõusolek
  4. Andmete edastamine: andmeid ei edastata kolmandatele isikutele, välja arvatud juriidilise kohustuse alusel.
  5. Andmete salvestamine: andmebaas, mida haldab Occentus Networks (EL)
  6. Õigused: igal ajal saate oma teavet piirata, taastada ja kustutada.

  1.   korralik DIJO

    🙁

  2.   Oscar DIJO

    Tänud, väga hea panus, salvestan käsklused perioodiliste kontrollide tegemiseks.

  3.   Nokkimine DIJO

    Aitäh, kena artikkel.

  4.   MSX DIJO

    Paar selgitust teie artikli kohta:

    Termin "Zombie process" on tehniliselt sobimatu ja need meist, kellel on GNU / Linuxiga vähe kogemusi, peaksid selle kasutamist vältima, kuna iseenesest ei käi ühtegi protsessi, kuid see on ainult viide protsessile, mida süsteemi ja ta ei andnud oma identifikaatorit välja.

    "Zombie-protsess" on tegelikult protsessi identifikaatori (protsessi kirjeldaja) kaardistamise tabeli kirje, just nii, nii et see ei tarbi ressursse, mis ületavad paari baiti mälu, mida süsteem kasutab protsessitabeli jälgimiseks.

    Ainus probleem, mis võib tekkida kummituste (või zombide) registrikirjeldajate puhul, on see, et kui nad liiga kiiresti kudevad, võivad nad teoreetiliselt hõivata kogu protsessikirjeldajate eraldamise tabeli, jättes süsteemile uute kirjete jaoks ruumi, nii et uute programmide käitamine oleks potentsiaalselt võimatu - mis registreerivad nende protsessid - riputavad masina lõpuks üles.

    Kuid seda on peaaegu võimatu juhtuda, kuna 32-bitistes süsteemides on protsesside registreerimiseks 32767 tühikut (harva või pole kunagi kasutatud) ja kaks korda suurem kui 64-bitises süsteemis.

    Ainus viis halvasti eemaldatud surnud protsessidega süsteemi krahhi tekitamiseks on protsesside loomine ja nende kiire tapmine ilma protsessikirjeldajat korralikult puhastamata (st "zombiprotsesside" loomiseta), kuid olgem ausad, kui keegi soovib süsteemis on palju otsesemaid viise. alustada uute protsesside kiiret loomist eksponentsiaalsel viisil, mis süsteemi segavad ja selle üles riputavad; üks viis selle saavutamiseks kahvlipommiga:

    : () {: |: &};:

    Süsteemi saate kahvlipommile suhteliselt vastupidavaks muuta, seadistades faili /etc/security/limits.conf õigesti, kuigi tuleb arvestada, et mida rohkem me uute protsesside loomise võimalust piirame, suudame käivitada vähem rakendusi samaaegselt meie süsteemis. Kuid see on kehtiv tööriist kõigile paranoilistele sysadminidele, kes soovivad oma süsteemi üle väga hästi kontrollida!

    Selles artiklis on hea teave kehtetute protsessikirjeldajate kohta:
    http://www.howtogeek.com/119815/htg-explains-what-is-a-zombie-process-on-linux/
    Ja selles on selge selgitus selle kohta, kuidas kahvlipomm töötab: http://stackoverflow.com/questions/991142/how-does-this-bash-fork-bomb-work

    Salu2

    1.    jotaele DIJO

      msx: «Mõiste„ zombiprotsess “on tehniliselt sobimatu ja need meist, kellel on GNU / Linuxiga vähe kogemusi, peaksid selle kasutamist vältima ...» Ha ha ha. On vaid midagi suuremat kui teie uhkus: teie halb maitse. Kuule, see, mida sa tegid, on halva maitsega, kui soovite pidada loengut, hankida selle teaduskonnas või panna oma ajaveeb ja kirjutada, mida soovite, kuid siia tulles korterit hea Alfiga korrigeerida on tõesti halb maitse .

      1.    Ferdinand Rojas DIJO

        Tõde tundus väga huvitav kommentaar. Palju rohkem kui postitus

  5.   platonov DIJO

    aitäh väga huvitav.

  6.   Mädaneb87 DIJO

    suurepärane artikkel aitäh

  7.   Alf DIJO

    MSX
    "Termin" Zombie process "on tehniliselt sobimatu ja need meist, kellel on vähe GNU / Linuxi kogemusi, peaksid selle kasutamist vältima."

    Peame sellest arendajatele teatama, kuna nagu näete, kasutatakse ka mõistet zombie, lugesin seda konsoolilt.

    seoses

  8.   Linn DIJO

    Palju õnne, väga hea artikkel, mul oli alati olnud kahtlusi, et nad on PZ-d, kuid mul pole kunagi olnud aega seda uurida. Nüüd lähen lehele ja vastus on mul olemas tänu ...

  9.   truko22 DIJO

    KDE-s koos juhtimisega + põgenemissüsteemiga tegevused kustuvad ja me võime need zombid kiiresti tappa.

  10.   Vihm DIJO

    Parandus, see on ZOMBIE, mitte ZOMBIE protsess
    Zombie on inglise keeles
    Zombi hispaania keeles

  11.   elynx DIJO

    Luksus, aitäh!

  12.   Roberto DIJO

    Esiteks tundub mõiste zombiprotsess täiesti õige. Ka see termin on kõige vähem oluline.
    Asi on selles, et nagu osutab msx ja sama vikipeedia (lugesin artiklit) on zombiprotsess tõesti surnud.
    «Kui protsess on lõppenud, on kogu selle mälu ja sellega seotud ressursid alandatud, et neid saaksid kasutada muud protsessid. Igatahes jääb protsessitabelisse protsessi kirje ikkagi alles »
    Teisisõnu, protsess ei võta enam süsteemiressursse, seetõttu on süsteemi koormus minimaalne, nagu msx selgitab.
    Kuid ainus asi, mis tal on, on kehtetu kirje protsessitabelis ... mis, kui neid on tuhandeid, võib see olla koormus (lõppude lõpuks peab protsessor lugema protsessitabelit ja lugema palju asjatut teavet) lisaks halbade programmeerimistavade kajastamisele (keegi teeb halvasti tehtud rakendusi).
    Kuid iseenesest pole postituse selgitus nii õige ja õige oleks see, mille andis msx.