Ubijte vse procese, ki pripadajo uporabniku, s pkill
Kazalo:
Activity Monitor in tradicionalno orodje ukazne vrstice 'uniči' lahko rešita večino potreb po prekinitvi procesa, toda če ste kdaj morali ciljati in uničiti vse procese, ki pripadajo enemu uporabniškemu računu, veste to je lahko frustrirajoče opravilo. Čeprav vam Activity Monitor omogoča razvrščanje »Drugih uporabniških procesov« in izbiro več procesov, vam ne dovoljuje, da prekinete več procesov hkrati.Podobno sta standardna ukaza kill in killall na splošno namenjena določenim procesom in ne vsaki posamezni nalogi, ki pripada določenemu uporabniškemu računu. Tu nastopi ukaz 'pkill', ki omogoča preprosto takojšnjo zaustavitev vsakega posameznega procesa, ki pripada kateremu koli uporabniku, prek terminala.
Kako ubiti vse procese uporabnika s pkill
Osnovna sintaksa za uporabo pkill za uničenje vseh uporabniških procesov je naslednja:
pkill -u uporabniško ime
Preverite, ali so vsi procesi, ki pripadajo temu uporabniku, prekinjeni z uporabo zastavice -u v ukazu ps:
ps -u uporabniško ime
Ob predpostavki, da je šlo vse po načrtih, boste našli prazen seznam.
pkill ne razlikuje med velikimi in malimi črkami, kar pomeni, da bo uporabniško ime »TestUser« identificirano enako kot »testuser«.
Če boste to preizkusili na sebi, bi bilo najbolje, da uporabite hitro preklapljanje med uporabniki, da začnete novo prijavo z drugim uporabniškim računom, ali pa uporabite strežnik ssh in to izvedete na drugem lokalni Mac. Uporaba pkill za vaše lastno aktivno uporabniško ime bo povzročila prekinitev vseh procesov, od katerih se nekateri takoj osvežijo, vendar se številni procesi v ozadju ne bodo znova samodejno zagnali. To vodi do najrazličnejših nenavadnih vedenj in glede na to, kaj uporabljate, ne bodite zelo presenečeni, ko ugotovite, da bo operacijski sistem postal tako neuporaben, da se boste morali bodisi odjaviti in znova prijaviti ali celo znova zagnati, če aktivni uporabnik račun, na katerega cilja pkill, je bil korenski ali skrbniški.
Ukaz pkill je nekoliko pihalnik, ko ga usmerite proti uporabniškim imenom, in si ga lahko predstavljate kot način, da v bistvu prisilno zaprete vse, kar pripada prijavljenemu uporabniku, vendar je zaradi tega lahko tudi zelo močan orodje za odpravljanje težav in obravnavo nedelujočih ali zombi procesov, ki so ostali nedotaknjeni kljub odjavi uporabnika.
Prej smo razpravljali o ukazu pkill za uničenje procesov z nadomestnimi znaki in določenimi aplikacijami/procesi, ki pripadajo enemu uporabniku, in čeprav je nedavni dodatek k Macu od Mac OS od Mac OS X Mountain Lion naprej, je v svetu Linuxa prisoten že kar nekaj časa.