abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
dnes 02:20 | Zajímavý článek

David Revoy, autor open source webového komiksu Pepper&Carrot nebo portrétu GNU/Linuxu, upozorňuje na svém blogu, že nový Inkscape 0.92 rozbíjí dokumenty vytvořené v předchozích verzích Inkscape. Problém by měl být vyřešen v Inkscape 0.92.2 [reddit].

Ladislav Hagara | Komentářů: 0
dnes 02:02 | Komunita

Øyvind Kolås, hlavní vývojář grafických knihoven GEGL a babl, které využívá grafický program GIMP, žádá o podporu na Patreonu. Díky ní bude moci pracovat na vývoji na plný úvazek. Milník 1000 $, který by stačil na holé přežití, se již téměř podařilo vybrat, dalším cílem je dosažení 2500 $, které mu umožní běžně fungovat ve společnosti.

xkomczax | Komentářů: 12
včera 23:54 | Pozvánky

DevConf.cz 2017, již devátý ročník jedné z největších akcí zaměřených na Linux a open source ve střední Evropě, proběhne od pátku 27. ledna do neděle 29. ledna v prostorách Fakulty informačních technologií Vysokého učení technického v Brně. Na programu je celá řada zajímavých přednášek a workshopů. Letos je povinná registrace.

Ladislav Hagara | Komentářů: 0
včera 22:11 | Nová verze

Byla vydána verze 1.0.0 emulátoru terminálu Terminology postaveného nad EFL (Enlightenment Foundation Libraries). Přehled novinek v poznámkách k vydání.

Ladislav Hagara | Komentářů: 0
20.1. 17:00 | Nová verze

Byl vydán Docker 1.13. Přehled novinek na YouTube a v poznámkách k vydání na GitHubu. Docker umožňuje běh aplikací v softwarových kontejnerech (Wikipedia).

Ladislav Hagara | Komentářů: 4
20.1. 15:51 | Komunita

Mozilla.cz informuje, že nástroje pro webové vývojáře se možná oddělí od Firefoxu a stanou doplňkem. Nástroje pro webové vývojáře prošly velkým přepisem a tým, který se stará o jejich vývoj, by uvítal možnost jejich častějších aktualizacích nezávisle na vydávání nových verzí Firefoxu.

Ladislav Hagara | Komentářů: 9
20.1. 07:00 | Humor

Čtenářům AbcLinuxu vše nejlepší k dnešnímu Dni zvýšení povědomí o tučňácích (Penguin Awareness Day).

Ladislav Hagara | Komentářů: 0
20.1. 06:00 | Komunita

Bylo spuštěno hlasování o přednáškách a workshopech pro letošní InstallFest, jenž proběhne o víkendu 4. a 5. března v Praze. Současně byla oznámena změna místa. InstallFest se letos vrací zpět na Karlovo náměstí do budovy E.

Ladislav Hagara | Komentářů: 0
20.1. 02:48 | Komunita

Greg Kroah-Hartman potvrdil, že Linux 4.9 je jádrem s prodlouženou upstream podporou (LTS, Long Term Support). Podpora je plánována do ledna 2019. Aktuální jádra s prodlouženou podporou jsou tedy 3.2, 3.4, 3.10, 3.12, 3.16, 3.18, 4.1, 4.4 a 4.9.

Ladislav Hagara | Komentářů: 0
20.1. 00:11 | Zajímavý článek

Výrobce síťových prvků, společnost Netgear, spustila nový program, který slibuje vývojářům, expertům, ale i běžným uživatelům vyplacení finanční odměny za nalezení bezpečnostních chyby v jejich produktech. Za nalezení zranitelnosti v hardware, API nebo mobilní aplikaci nabízí odměnu od 150 do 15 tisíc dolarů (dle závažnosti).

Michal Makovec | Komentářů: 0
Jak se stavíte k trendu ztenčování přenosných zařízení (smartphony, notebooky)?
 (10%)
 (2%)
 (74%)
 (3%)
 (10%)
Celkem 360 hlasů
 Komentářů: 25, poslední včera 13:34
Rozcestník
Reklama

Dotaz: Jak zabít mrtvé?

27.4.2008 19:19 Franta
Jak zabít mrtvé?
Přečteno: 1975×
Část výpisu ps.

6990 ? D 0:08 /usr/lib/openoffice/program/soffice.bin -writer -splash-pipe=5

6752 ? D 0:00 bash

6770 ? D 0:00 mc

6424 ? Zs 0:00 [bash] <defunct>

6571 ? D 0:00 winecfg.exe

Dobrý den! Nemůže mi někdo poradit jak zlikvidovat či zabít tyto pěkné prográmky? Zombíci mi zas tak nevadí, ale vadí mi spuštěné wine, které nemůžu zabít (ani s -9). Nesmrtelné wine mi zabraňuje vstoupit do adresáře, kde je spuštěno.

Odpovědi

27.4.2008 19:29 1john2 | skóre: 35 | blog: jo12hn | zlín, brno
Rozbalit Rozbalit vše Re: Jak zabít mrtvé?
co zabiti jako root? nepomuze sudo kill -s9 xxxx? kazdopadne bych se byt vami, zajimal po pricine techto problemu a neresil jen nasledky..
27.4.2008 19:39 Franta
Rozbalit Rozbalit vše Re: Jak zabít mrtvé?
Zabití jako root nepomůže. Ty mrchy to přežijou. Jinak další takové polofunkční programy na svém počítači umím vytvořit. (Vyjma zombíků)
28.4.2008 00:42 Jirka P
Rozbalit Rozbalit vše Re: Jak zabít mrtvé?
Tak to máte smůlu. Mě se takhle občas kousne cdromka, což řeším tak, že uspím počítač a znova pustím.

Jinak Vám asi nepomůže nic jiného než reboot (nebo něco ekvivalentního).
27.4.2008 20:19 volca
Rozbalit Rozbalit vše Re: Jak zabít mrtvé?
Kdyz ma proces stav D, vetsinou ceka na zarizeni (neprerusitelny spanek). Nepristupuji ty procesy nahodou na nejaky sitovy disk? Stavalo se mi to pri pristupu prez NFS, pokud pripojeni chybovalo.

Zabit ty procesy nejde, jelikoz spi. Nejdrive je potreba odstranit pricinu spanku - cekani na IO.
27.4.2008 21:50 Franta
Rozbalit Rozbalit vše Re: Jak zabít mrtvé?
Přistupují na lokální, v průběhu odmountovaný disk. Další problém je, že wine mi zatuhlo pokud jsem přistupoval na windowsový disk. Pravděpodobně to působila nevyřešená práva.
pushkin avatar 28.4.2008 07:02 pushkin | skóre: 42 | blog: FluxBlog
Rozbalit Rozbalit vše Re: Jak zabít mrtvé?
Zkus kill -SIGKILL xxxx
"...viděl jsem Vás žíznit a tak jsem se vrátil." | Díky, Kájo!
28.4.2008 08:32 fixinko | skóre: 15 | Bratislava
Rozbalit Rozbalit vše Re: Jak zabít mrtvé?
proces v stave D a Z tym nezabijes...
28.4.2008 11:43 Radek Hladik | skóre: 20
Rozbalit Rozbalit vše Re: Jak zabít mrtvé?
Když už se tady o tom mluví, může mi někdo vysvětlit, proč není možné takový proces odstřelit? Pokud procesu posílám -9, tak už ho vlastně neposílám procesu, ale přímo kernelu. A ten normální proces ukončí i bez vědomí toho procesu.

Tak proč se to liší, když se proces zablokuje a čeká na nějaké I/O? Kernel přece ví, o které I/O se jedná (jinak by proces nemohl ve správnou chvíli vzbudit) a zároveň dané I/O provádí. Tak proč neukončí proces, neukončí I/O a kdyby to I/O nešlo, tak si ho zařadí někam do fronty "až tohle I/O skonční, tak výsledek ignoruj a co nejvíc po něm ukliď".

Když systém zrebootuju, tak se systém zombíků zvládne zbavit - minimálně mu nezabrání, aby dokončil vypínání - tak proč něco podobného neumí za běhu.
Nikola Ciprich avatar 28.4.2008 13:20 Nikola Ciprich | skóre: 23 | blog: NiX_blog | Bohumín
Rozbalit Rozbalit vše Re: Jak zabít mrtvé?
toto bude v novych kernelech reseno, psalo se o tom tusim v jednech z poslednich jadernych novin...

btw subjekt me fakt pobavil :-)
Did you ever touch the starlight ? Dream for a thousand years? Have you ever seen the beauty Of a newborn century?
Bluebear avatar 28.4.2008 23:33 Bluebear | skóre: 30 | blog: Bluebearův samožerblog | Praha
Rozbalit Rozbalit vše Re: Jak zabít mrtvé?
Pokud procesu posílám -9, tak už ho vlastně neposílám procesu, ale přímo kernelu. A ten normální proces ukončí i bez vědomí toho procesu.

Jistě, to ale platí o každém signálu. Problém je v tom, že proces ve stavu D provádí nějakou kritickou operaci s hardwarem, kterou se kernel "bojí" násilně přerušit, aby nezpůsobil havárii ještě většího rozsahu.

Zombie proces (stav Z) je něco jiného; to je proces, který už je vlastně mrtvý, a existuje jen proto, že jeho rodič ještě nevzal na vědomí, že proces skončil, a nepřevzal si jeho výstupní hodnotu. Zombie se dá zbavit tím, že sestřelíš rodiče, případně několik vyšších rodičů, až se dostaneš k nějakému procesu (přinejhorším k initu), který akceptuje, že má pod sebou spoustu zombie procesů, a odstraní je.

Tedy aspoň doufám, že to tak je. Prosím nekamenujte mě, jestli jsem to popletl.
To mi připomíná, jak jsem si pořídil květináč, že v něm budu mít květinu. Opravdu tam byla, ale potom být přestala...
stativ avatar 28.4.2008 13:01 stativ | skóre: 54 | blog: SlaNé roury
Rozbalit Rozbalit vše Re: Jak zabít mrtvé?
D neznamená, že je mrtvý, ale že je ve stavu uninterruptible sleep (nepřerušitelný spánek). V té době proces čekaké na nějaké IO tj. čte nebo ukládá data na disk apod. Do tohohle stavu se můžeš dostat odstraněním disku zrovna za běho IO, což se může stát i třeba pokud je připojen přes nestabilní síť.

Teoreticky by mohlo pomoci zařízení připojit zpět aby se operace dokončila. Slyšel jsem, že občas pomůže zabití parent procesu, ale to se mi zdá poněkud proti principu nepřerušitelného spánku. Možná by pomohlo odstranit modul ovládající dané zařízení (třeba by si toho pak proces všiml).

PS.: Jinak tohle je celkem logické chování, zabraňuje vzniku nekonzistence FS nebo ještě hůře vzniku kernel panic.
Ať sežeru elfa i s chlupama!!! ljirkovsky.wordpress.com stativ.tk
Prom avatar 28.4.2008 22:43 Prom | skóre: 10 | Praha 5
Rozbalit Rozbalit vše Re: Jak zabít mrtvé?
ze se ptam, da se nejak snadno zjistit, na co dotycny zombik ceka ? pripadam si trapne, ze musim svuj notebook pri trose instalacni prace restartovat i desetkrat... :( pravda, slax ma sve speciality, ale stejne.
slax - nový pohled na svět...
28.4.2008 22:56 Jirka P
Rozbalit Rozbalit vše Re: Jak zabít mrtvé?
On to neni zombik (to jen na okraj), ale zjistit se to da. ps -A -l (nebo ps -A -f, nevim presne) vypise ve sloupci wchan jmeno funkce ve ktere ceka, takze treba zjistite ze ceka na mutex, na skonceni jineho procesu, atd. Nezjistite teda na ktery mutex, to byste musel na to jit nejakym debuggerem nebo se rucne hrabat v pameti.
28.4.2008 23:35 Lukáš Džunko | skóre: 39 | blog: Jooky | Bratislava
Rozbalit Rozbalit vše Re: Jak zabít mrtvé?
Presne tak.
D (neprerusitelne spanie) a Z (zombie) su dve rozdielne veci. Obydva su specificke stavy. Zombie uz z principu neni problem, pid existuje len preto ze parent si este neprebral navratovu hodnotu ale samotny process uz neexistuje. V pridade 'D' sa process moze znova prebrat a pokracovat v praci, preto moze drzat zamky, pamat, ... . V akuktualnej implementacii sa signal KILL zaradi na koniec signalovej fronty a caka nez sa preberie process.
msk avatar 30.4.2008 16:01 msk | skóre: 27 | blog: msk
Rozbalit Rozbalit vše Re: Jak zabít mrtvé?
Obydva

Brutal :) ...
Bluebear avatar 28.4.2008 23:38 Bluebear | skóre: 30 | blog: Bluebearův samožerblog | Praha
Rozbalit Rozbalit vše Re: Jak zabít mrtvé?
Možná by pomohlo odstranit modul ovládající dané zařízení (třeba by si toho pak proces všiml).

Mám zlé tušení, že kdo tohle udělá, ten do smrti veselý nebude :-)
To mi připomíná, jak jsem si pořídil květináč, že v něm budu mít květinu. Opravdu tam byla, ale potom být přestala...
stativ avatar 29.4.2008 15:58 stativ | skóre: 54 | blog: SlaNé roury
Rozbalit Rozbalit vše Re: Jak zabít mrtvé?
To neznamenená, že to nemůže fungovat.
Ať sežeru elfa i s chlupama!!! ljirkovsky.wordpress.com stativ.tk
Bluebear avatar 29.4.2008 21:23 Bluebear | skóre: 30 | blog: Bluebearův samožerblog | Praha
Rozbalit Rozbalit vše Re: Jak zabít mrtvé?
Myslím, že bohužel ne...

Pokud je nějaký proces zaseklý v D stavu, interpretuju si to tak, čeká někde v kernelovém kódu, v modulu, kterého se to týká. Tzn. modul se používá, k jeho odstranění bude nutné použít rmmod --force a v tom případě se daný proces náhle octne uvnitř neplatné oblasti paměti v kernelu, což by mělo nedozírné následky, jak praví klasik :-)
To mi připomíná, jak jsem si pořídil květináč, že v něm budu mít květinu. Opravdu tam byla, ale potom být přestala...
stativ avatar 30.4.2008 16:38 stativ | skóre: 54 | blog: SlaNé roury
Rozbalit Rozbalit vše Re: Jak zabít mrtvé?
Zkoušet to nehodlám, ale řekl bych, že by to mohlo fungovat. I pokud by to vyvolalo kernel panic, tak by to bylo řešení.
Ať sežeru elfa i s chlupama!!! ljirkovsky.wordpress.com stativ.tk
Bluebear avatar 30.4.2008 22:02 Bluebear | skóre: 30 | blog: Bluebearův samožerblog | Praha
Rozbalit Rozbalit vše Re: Jak zabít mrtvé?
Obával bych se poškození filesystému, zvlášť jestli se inkriminovaný modul současně používá i u jiných úložných zařízení.

Řekl bych, že milosrdnější by bylo provést normální shutdown, a pokud se ten shutdown nepodaří dokončit kvůli těm zaseknutým procesům, tak nouzová synchronizace přes Magic SysRq (pokud je k dispozici) a pak vypnout počítač natvrdo.
To mi připomíná, jak jsem si pořídil květináč, že v něm budu mít květinu. Opravdu tam byla, ale potom být přestala...
29.4.2008 11:10 ivan | skóre: 17 | blog: ivan
Rozbalit Rozbalit vše Re: Jak zabít mrtvé?
Nemas nahodou nfs disk, sw raid nebo namontovanej loopback device? Nekdy se nejaky vlakno v linux kernelu zasekne a nepokracuje dal. Dej echo "t" > /proc/sys/kernel/sysrq-trigger. Ono ti to vyvise vsechny tasky v kernelu vcetne stacktraces. Z toho poznas v jakym ovladaci tvuj proces visi. Zajimany je, ze samotna operace vypisu tasku casto umozni, ze se zaseknuty proces zase rozjede.
Bluebear avatar 30.4.2008 22:09 Bluebear | skóre: 30 | blog: Bluebearův samožerblog | Praha
Rozbalit Rozbalit vše Re: Jak zabít mrtvé?
Kurník, teď mi něco došlo. Ty soubory, které jsou blokované v D stavu, jsou spuštěné z tvého lokálního disku? Jestli ano, tak doporučuju ze všeho nejdřív všechno zazálohovat - obávám se, že by to mohlo být způsobeno taky tím, že se s tebou loučí disk. :-(

Potom bych zkusil mrknout do dmesg (příkaz dmesg), jestli kernel nevypisuje nějaká děsivá varování o chybách přístupu na disk - jestli ano, tak www.alza.cz nebo jiný e-shop dle vlastního výběru :-)
To mi připomíná, jak jsem si pořídil květináč, že v něm budu mít květinu. Opravdu tam byla, ale potom být přestala...

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267   www.czech-server.cz
© 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.