abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 06:33 | Komunita

    Přímý přenos (YouTube) z konference LinuxDays 2024, jež probíhá tento víkend v Praze v prostorách Fakulty informačních technologií Českého vysokého učení v Praze (FIT ČVUT). Na programu je spousta zajímavých přednášek.

    Ladislav Hagara | Komentářů: 0
    včera 07:11 | IT novinky

    Elon Musk na akci We, Robot (YouTube, 𝕏) představil Robotaxi, Robovan a vylepšeného Tesla Bota (Optimus).

    Ladislav Hagara | Komentářů: 40
    včera 06:33 | IT novinky

    Internet Archive je offline (𝕏, Bluesky, Mastodon‪). Unikly údaje 31 milionů uživatelů. Probíhal / probíhá na něj DDoS útok.

    Ladislav Hagara | Komentářů: 0
    včera 05:22 | Komunita

    Alyssa Rosenzweig se v příspěvku na svém blogu rozepsala o hraní AAA her na Asahi Linuxu. Na YouTube je záznam její včerejší přednášky na XDC 2024 (X.Org Developer's Conference).

    Ladislav Hagara | Komentářů: 10
    včera 04:55 | IT novinky

    Vláda schválila Národní polovodičovou strategii: Česká republika má velký potenciál stát se významným hráčem v oblasti výroby čipů, zejména v evropském měřítku. Využít tento potenciál je cílem Národní polovodičové strategie, kterou připravilo Ministerstvo průmyslu a obchodu ve spolupráci s experty, a která navazuje na evropský Akt o čipech.

    Ladislav Hagara | Komentářů: 2
    10.10. 18:11 | Zajímavý software

    V lete vyšiel Aeonwave 4.0, ktorý niekoľkonásobne menej vyťažuje procesor pri interpretácií priestorového zvuku než OpenAL Soft. Autor hľadá prispievateľov do knižnice libaaxopenal za účelom pridania ALC_EXT_EFX rozšírení využívaných napr. v hre Doom 3 cez port Dhewm3 v Linuxe.

    atirage21 | Komentářů: 6
    10.10. 15:33 | Nová verze

    Linuxová distribuce Ubuntu 24.10 „Oracular Oriole“ byla vydána. Jde o průběžné vydání s podporou 9 měsíců. Obsahuje mj. Linux 6.11 či GNOME 47 s několika odkazy na první vydání Ubuntu (4.10 „Warty Warthog“) před 20 lety. K dispozici jsou také oficiální deriváty s odlišnými výchozími desktopovými prostředími anebo balíky aplikací.

    Fluttershy, yay! | Komentářů: 2
    10.10. 13:55 | Nová verze

    Deno (Wikipedie), běhové prostředí (runtime) pro JavaScript, TypeScript a WebAssembly, bylo vydáno v nové major verzi 2.0 (YouTube). Důležité změny v Migration Guide.

    Ladislav Hagara | Komentářů: 3
    10.10. 13:33 | Nová verze

    Apache Tomcat (Wikipedie) slaví 25 let. Při té příležitosti byla vydána nová verze 11.0. Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    10.10. 12:44 | Nová verze

    Open source 3D herní a simulační engine Open 3D Engine (O3DE) byl vydán v nové verzi 24.09.0. Přehled novinek v poznámkách k vydání. O3DE má nového maskota: Odie.

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

    Dotaz: Vytvoreni procesu s prirazenym PID

    19.5.2010 18:58 Marena
    Vytvoreni procesu s prirazenym PID
    Přečteno: 289×
    Ahoj,

    potreboval bych poradit. Potřeboval bych, aby se mi spustila alikace s urcitym PIDem. Jestli by se nasla nejaka duse, ktera by mi udelala mensi navod nebo poslat nejaky v cj/aj/nj. Chtel jsem udela kontrolu pres pidof jmeno, jenze ty aplikace se stejnym jmenem jsou spustene 2, jen maji jiny core a umisteni. Potreboval bych to dat do nejaky podminky, jakoze.
    #!/bin/bash
    
    if [ podminky ]; then
     echo "Server je jiz spusteni!"
    else
     PODMINKA NA SPUSTENI VE SCREENU S PRIRAZENYM PIDEM
    Asi bych si to predstavoval jako neco ve smyslu "screen -A -m -d -S `PRIKAZ`

    Odpovědi

    19.5.2010 19:24 Ash | skóre: 53
    Rozbalit Rozbalit vše Re: Vytvoreni procesu s prirazenym PID
    Pustit proces s určitým pid asi nepůjde, budete ty aplikace muset rozlišit jinak. Například podle parametru příkazové řádky, prostředí apod, lze to vyčíst z ps nebo /proc/<pid>/*. Nějak se ty aplikace nejspíš liší, tak se zamyslete čím a pak je podle toho rozlište v té vaší podmínce. Nejdříve si zjistěte pidof aplikace, a pak pro získané pids zjistěte, jestli je to ta co myslíte, nebo není.

    (Nevím bohužel co myslíte tím "jiný core" a "jiné umístění"). Pokud třeba startovací adresář tak to by snad šlo také zjistit z prostředí.
    19.5.2010 19:37 Marena
    Rozbalit Rozbalit vše Re: Vytvoreni procesu s prirazenym PID
    Jo jáá to tedy snad jasne upresním. :) Jedna se o World of Warcraft server, já potřebuji docílit toho, abych si udelal script na kontrolu spustene aplikace, pokud apliace neni zapnuta tak se spusti, pokud je zapnuta tak bude delay tak na 15sec, kde je cas na zrusení nebo pokracovani v prípade, ze je freez (záseknutí emulátoru). Tim core myslim prave ten emulátor. Server je zkompilovaný na stejný verzi a jako /bin pro spusteni je mangos-worldd jenze ten se kompiluje u vsech verzi, tudiz v ps, top je 2x mangos-worldd a pri kazdem restartu je prirazeno jiny PID. Tim jina cesta, myslim prave ten adresar, kde je prave ten mangos-worldd, ten je pokazdy jinde.

    Ja potřebuju nejak docílit toho, abych si v te podmince nejak evidoval ten mangos-worldd ktery potrebuju (jestli to pujde podle cesty, byla by to parada. Ale ja jsem chtel vytvorit s urcitym PIDem kvuli prave podmince, aby bylo: if [ "$PODMINKA" == "2234" ]; then

    Jenze, kdyz nebude urcity cislo, tak budu muset jeste popremyslet jak to tedy udelam. JA se psolehal prave na ten PID, ktery bych si eventuelne vytvoril.
    19.5.2010 19:51 Ragzid | skóre: 24 | blog: Pivní koutek | Liberec-Brno
    Rozbalit Rozbalit vše Re: Vytvoreni procesu s prirazenym PID
    Staci trochu pohledat na MaNGOS foru. Neco podobneho jsem kdysi pouzival:
    #!/bin/bash
    
    MANGOSDIR=/home/mangos/server
    
    if (ps -C mangos-worldd )
        then echo "status : OK"
    else
            echo "status : DOWN" 
            cd ${MANGOSDIR}/bin
            
            screen -d -m -S session_name ${MANGOSDIR}/bin/mangos-worldd
    fi
    Obdobne i pro realmd, pokud take mrzne. A nakonec pridat zaznam do cronu aby to treba kazdou minutu kontroloval.
    19.5.2010 20:19 Ondřej Kubečka | skóre: 29 | blog: datlovo | Ulm
    Rozbalit Rozbalit vše Re: Vytvoreni procesu s prirazenym PID
    On tam má dva procesy téhož jména. (A to šachování se screen je proč přesně? Aby docílil toho, co dělá nohup? Nebo se ten server za běhu interaktivně ovládá a tak na to mám sezení, do kterého se mohu přihlásit?

    Nicméně zpět k tazateli: když jste zmínil dvě různé cesty k binárce, tak to bude asi Vaše nejsnazší řešení. Když spustíte s plnou cestou a pak třeba i z ps to vylámete snadno (ps -o cmd).

    Vaše konstrukce s podmínkou není problém, prostě si napíšete funkci bezi(identifikator_instance), která bude vracet true/false podle stavu dané instance a podmínka se podle toho zachová.

    Pokud byste to mocí mermo chtěl řešit přes PID, musel byste si ho někam pro jednotlivé instance zapisovat při startu (zřejmě /var/run a pak s ním pracovat).

    19.5.2010 20:35 Ragzid | skóre: 24 | blog: Pivní koutek | Liberec-Brno
    Rozbalit Rozbalit vše Re: Vytvoreni procesu s prirazenym PID
    screen se v tomhle pripade pouziva proto, ze ten deamon funguje zaroven jako konzole (neni nutna, ale casto se tak vyuziva).

    Kazdopadne zapisovani PID po startu by melo byt v tomto pripade samozrejmosti.

    Ale nerozumim tomu proc tam mangos-worldd bezi 2x, pokud na tom serveru jede jediny realm, tak neni duvod, aby tam ten proces byl vicekrat. Pokud je tak pojmenovan ten restartovaci skript, tak to je samozrejme chyba, ten by mel byt napr. mangos-restarter.sh.
    20.5.2010 06:39 Ash | skóre: 53
    Rozbalit Rozbalit vše Re: Vytvoreni procesu s prirazenym PID
    No a díval jste se už do toho /proc/<pid> obou procesů? Nenašel jste žádný rozdíl? Na pid se už vykašlete, tím "přiřadit asi nepude" jsem myslel "přiřadit určitě nepude".

    nejak evidoval ten mangos-worldd ktery potrebuju

    Jak jsem již řekl, zamyslete se a řekněte, jak rozlišujete vy ten magnos-worldd který potřebujete.

    Server je zkompilovaný na stejný verzi a jako /bin pro spusteni je mangos-worldd jenze ten se kompiluje u vsech verzi, tudiz v ps, top je 2x mangos-worldd

    Liší se tedy poloha binárky? Může pomoct /proc/<pid>/exe a podobně.

    Josef Kufner avatar 20.5.2010 09:28 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Vytvoreni procesu s prirazenym PID
    A nejsou to jen dvě vlákna?
    Hello world ! Segmentation fault (core dumped)
    19.5.2010 19:26 Ondřej Kubečka | skóre: 29 | blog: datlovo | Ulm
    Rozbalit Rozbalit vše Re: Vytvoreni procesu s prirazenym PID
    Tak to asi nedáte, tohle si řeší správa procesů jádra fork() žádné parametry nemá.

    Krom toho, že i kdyby to šlo, tak by to byl problém, protože dané pid byste také musel být schopen rezervovat, aby je náhodou nedostalo něco jiného.

    Asi na to budete muset jít jinak. Napadají mě dvě varianty:
    • Pokud se liší parametry použité na příkazové řádce, můžete příslušný proces identifikovat pomocí těchto (jak to bylo zavoláno můžete zjistit třeba ps nebo se pohrabat v /proc/<PID/>.
    • Pokud se liší pracovní oblast, konfigurační soubory... prostě to, s čím dané procesy pracují, tak je můžete rozeznávat podle nich. Třeba lsof nebo zahrabat v /proc/$$/fd/.

    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.