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 01:33 | Zajímavý software

    Hra Mini Thief je na Steamu zdarma napořád, když aktivaci provedete do 24. ledna do 19.00 [ProtonDB].

    Ladislav Hagara | Komentářů: 0
    16.1. 22:00 | IT novinky

    Certifikační autorita Let's Encrypt oznámila, že bude volitelně nabízet krátkodobé certifikáty s šestidenní platností a navíc s možností vystavit je na IP adresu. Zvolit typ certifikátu bude možné v certifikačním profilu ACME.

    Ladislav Hagara | Komentářů: 9
    16.1. 21:22 | IT novinky

    Herní konzole Nintendo Switch 2 byla oficiálně potvrzena. Vyjde letos. Trailer na YouTube. Více ve středu 2. dubna na Nintendo Direct.

    Ladislav Hagara | Komentářů: 0
    16.1. 17:33 | Nová verze

    Byl vydán Linux Mint 22.1 s kódovým jménem Xia. Podrobnosti v přehledu novinek a poznámkách k vydání. Linux Mint 22.1 bude podporován do roku 2029.

    Ladislav Hagara | Komentářů: 0
    15.1. 19:33 | Nová verze

    Google Chrome 132 byl prohlášen za stabilní. Nejnovější stabilní verze 132.0.6834.83 přináší řadu novinek z hlediska uživatelů i vývojářů. Podrobný přehled v poznámkách k vydání. Opraveno bylo 16 bezpečnostních chyb. Vylepšeny byly také nástroje pro vývojáře (YouTube).

    Ladislav Hagara | Komentářů: 0
    15.1. 14:22 | Nová verze

    Byla vydána verze 11.0.0 knihovny libvirt (Wikipedie) zastřešující různé virtualizační technologie a vytvářející jednotné rozhraní pro správu virtuálních strojů. Současně byl ve verzi 11.0.0 vydán související modul pro Python libvirt-python. Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    15.1. 14:00 | Nová verze

    Byla vydána nová verze 3.4.0 nástroje pro inkrementální kopírování souborů rsync (Wikipedie). Přehled oprav a vylepšení v souboru NEWS. Řešeno je 6 zranitelností.

    Ladislav Hagara | Komentářů: 0
    15.1. 02:55 | IT novinky

    V srpnu loňského roku byla vyhlášena RP2350 Hacking Challenge aneb oficiální výzva Raspberry Pi na prolomení bezpečnosti mikrokontroléru RP2350. Povedlo se. Včera byli představeni čtyři vítězové a jejich techniky.

    Ladislav Hagara | Komentářů: 21
    15.1. 00:00 | Komunita

    Na čem aktuálně pracují vývojáři open source operačního systému Haiku (Wikipedie)? Byl publikován přehled vývoje za prosinec 2024. Vypíchnuto je začlenění webového prohlížeče Iceweasel, tj. alternativního sestavení Firefoxu.

    Ladislav Hagara | Komentářů: 0
    14.1. 21:44 | Humor

    Tetris a DOOM běžící v pdf. Proč a jak v příspěvku na blogu.

    Ladislav Hagara | Komentářů: 2
    Rozcestník

    Dotaz: Jak kontrolovat PID?

    21.10.2012 17:15 Orlando
    Jak kontrolovat PID?
    Přečteno: 503×
    Ahoj,

    spustím v příkazové řádce na pozadí příkaz

    mysqldump ............ &

    zjistím jaký mu byl přidělen PID

    VAR=$!

    echo $VAR

    a teď můj problém, nevím jak bych mohl zjistit, jestli PID ještě existuje, jelikož se může stát, že příkaz skončil ale mezi tím byl stejný PID přidělen zcela jinému procesu. Neporadil by někdo jak zjistit jestli se opravdu jedná o PID mého volaného příkazu? Moc děkuji

    Odpovědi

    21.10.2012 18:17 l4m4
    Rozbalit Rozbalit vše Re: Jak kontrolovat PID?
    Opravdu čisté řešení bez race conditions IMO v shellu nejde. Nestačí-li ti tedy někdy později jen počkat na dokončení (pokud to ještě nedoběhlo), to umí builtin wait. Nicméně pokud

    jobs -p

    vypíše dané číslo procesu, tak existuje shell job s tímto pid, což, máš-li nějakou kontrolu na tím, co se ve tvém shellu děje, by mohlo zhruba stačit.
    21.10.2012 19:55 luky
    Rozbalit Rozbalit vše Re: Jak kontrolovat PID?
    Prectete si PID rodice procesu se zkoumanym PID. Musi to byt PID shellu, z ktereho jste ho sputsil.
    21.10.2012 20:06 l4m4
    Rozbalit Rozbalit vše Re: Jak kontrolovat PID?
    Nebo.

    Pořád ovšem může proces zhynout mezi tím přečtením a čímkoli, co se na základě něj má stát. Tedy bezpečně lze zjsitit pouze to, že už skončil, ne to, že ještě běží.
    23.10.2012 15:53 luky
    Rozbalit Rozbalit vše Re: Jak kontrolovat PID?
    Na to se ale tazatel neptal ;-) Pokud chce neco provadet, nez proces skonci, muze si odblokovat signal SIGCHILD. Ten bude dorucen pri pristim vstupu rodicovskeho procesu do kernelu a protoze vsechny akce, kterymi se daji ovlivnit ostatni procesy (krome dat ve sdilene pameti), vyzaduji vstup do kernelu, je toto reseni bezpecne.
    22.10.2012 10:35 camel1cz | skóre: 25
    Rozbalit Rozbalit vše Re: Jak kontrolovat PID?
    V debianu bych zkusil znásilnit start-stop-daemon(8) - parametr -m vytváří PID file správným způsobem...
    22.10.2012 11:25 camel1cz | skóre: 25
    Rozbalit Rozbalit vše Re: Jak kontrolovat PID?
    Teď mi došlo jak zněla původní otázka - co třeba:

    ps -p $PID

    ...pokud je nutné řešít možné přetočení PIDů (pouze u hodně živých serverů nebo dlouho běžících procesů), tak mě napadá jedině kontrola dalších atributů procesu (jméno binárky, čas spuštění, ...) např. přes parametr -o (command,start) zmiňovaného ps(1)

    Jendа avatar 22.10.2012 11:46 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: Jak kontrolovat PID?
    Nestačil by wait?
    Josef Kufner avatar 22.10.2012 13:17 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Jak kontrolovat PID?
    Koukni na wait, mohl by stačit. Kontrola PID rodičovského procesu je dobrý nápad.

    Možná bys ale nemusel spouštět mysqldump na pozadí. Co tam máš okolo?
    Hello world ! Segmentation fault (core dumped)
    22.10.2012 16:48 Semo | skóre: 45 | blog: Semo
    Rozbalit Rozbalit vše Re: Jak kontrolovat PID?
    ak to nie je kriticka uloha, tak mozes kontrolovat nazov procesu a jeho pid. Sanca, ze dalsi proces toho isteho typu dostane zase to iste pid a ty si medzitym nevsimnes, ze 1. skoncil je vcelku mala.
    If you hold a Unix shell up to your ear, you can you hear the C.
    23.10.2012 16:13 luky
    Rozbalit Rozbalit vše Re: Jak kontrolovat PID?
    Sanca, ze dalsi proces toho isteho typu dostane zase to iste pid a ty si medzitym nevsimnes, ze 1. skoncil je vcelku mala.
    A pokud tu sanci vycislime, tak je 0 protoze system nikdy nesmi recyklovat PID, dokud si neprectete navratovou hodnotu procesu, pokud neni SIG_CHLD nastaven na SIG_IGN!
    23.10.2012 23:50 l4m4
    Rozbalit Rozbalit vše Re: Jak kontrolovat PID?
    Zrovna od shellu se těžko dá čekat, že by to nedělal.
    24.10.2012 12:36 luky
    Rozbalit Rozbalit vše Re: Jak kontrolovat PID?
    Zrovna od shellu se těžko dá čekat, že by to nedělal.
    Opravdu jste si precetl muj prispevek cely?

    pokud neni SIG_CHLD nastaven na SIG_IGN

    toto samozrejme muzete v shellu ovlivnit
    stativ avatar 22.10.2012 17:15 stativ | skóre: 54 | blog: SlaNé roury
    Rozbalit Rozbalit vše Re: Jak kontrolovat PID?
    pidof na binárku a porovnat výsledek s uloženým PID?
    Ať sežeru elfa i s chlupama!!! ljirkovsky.wordpress.com stativ.tk
    23.10.2012 14:29 marbu | skóre: 31 | blog: hromada | Brno
    Rozbalit Rozbalit vše Re: Jak kontrolovat PID?
    Jeste by se to dalo resit pomoci cgroups, ty jeste nikdo nezminoval ;)
    There is no point in being so cool in a cold world.
    24.10.2012 08:35 Radek
    Rozbalit Rozbalit vše Re: Jak kontrolovat PID?
    muzes si na to napsat skript? a jenom skript poustet na pozadi ktery muze nastavovat nejakou promenou nebo vytvaret nejaky tmp soubor nevim jestli je jde vytvorit promenou v rodicovskem bashi

    mysqldump ... & VAR = $! fg $var

    nastaveni promene nebo vytroverni souboru

    24.10.2012 09:42 Ja
    Rozbalit Rozbalit vše Re: Jak kontrolovat PID?
    A co třeba rovnou { mysqldump; touch dump.done; } &

    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.