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ářů: 3
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ářů: 8
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 355 hlasů
 Komentářů: 25, poslední včera 13:34
    Rozcestník
    Reklama

    Dotaz: PHP dotazy na server

    23.11.2008 20:25 maic
    PHP dotazy na server
    Přečteno: 636×

    Zdravím,

    chtěl bych se zeptat jestli by mě někdo neporadil jak udělat aby se aplikace spustila pod předem nastaveném PID ... mám administraci serverů pro gta samp.. a potřebuji nějak udělat zapínání a vypínání serverů a napadlo mě na to použít v php příkaz  system("PRIKAZ");  ,ale nevim jak predem nastavit ten PID .. a nebo alespon jak v PHP zjistit jakej PID ten spustenej program má.

    Předem děkuji. Michael Fanta

     

    Odpovědi

    23.11.2008 20:46 Zdeněk Burda | skóre: 61 | blog: Zdendův blog | Praha
    Rozbalit Rozbalit vše Re: PHP dotazy na server

    Tohle se řeší tak, že server (nebo skript, který ho startuje) při startu uloží do souboru své PID  (v linuxu se k tomu běžně používá adresář /var/run/) a ty si pak z toho souboru načteš PID a můžeš zasílat signály.

    -- Nezdar není hanbou, hanbou je strach z pokusu.
    23.11.2008 20:55 maic
    Rozbalit Rozbalit vše Re: PHP dotazy na server

    Jo takle.. a neporadil byste trošku blíže? Přece jenom já dělám s linuxem teprve chvilku. Třeba kdybyste byl tak hodnej a nějakej příklad uvedl. Byl bych moc vděčný. Určitě nejsem jediný, ale věci lépe chápu  spříkladu. 

    AraxoN avatar 23.11.2008 22:13 AraxoN | skóre: 45 | blog: slon_v_porcelane | Košice
    Rozbalit Rozbalit vše Re: PHP dotazy na server

    PID procesu sa dá zistiť shell príkazom pidof, kde ako parameter ide názov príkazu. Napríklad:

    araxon@lighthouse ~ $ pidof firefox-bin
    6217

    To sa potom dá vložiť do iného príkazu cez operátor `:

    araxon@lighthouse ~ $ kill -15 `pidof firefox-bin`

    V php potom cez shell_exec takto: shell_exec("kill -15 `pidof firefox-bin`");

    A fine is a tax for doing wrong. A tax is a fine for doing well.
    23.11.2008 23:17 maic
    Rozbalit Rozbalit vše Re: PHP dotazy na server

    Takže jestli to chápu dobře tak to    firefox-bin  je nazev toho PID ?

    No dejme tomu že mám aplikaci   samp_7777 a chci kni dat PID 7777 to udělám jak?

    zkoušel sem to i takto:

    ./samp_7777 -PID=777

    ale nic

     

    23.11.2008 23:34 CN!RY
    Rozbalit Rozbalit vše Re: PHP dotazy na server

    a co pro start třeba nějak takto

    /sbin/start-stop-daemon --start -m -p ./samp.pid -b -x samp_7777

     

    a pro kill pak takto

    /sbin/start-stop-daemon --stop -p ./samp.pid

    23.11.2008 23:39 maic
    Rozbalit Rozbalit vše Re: PHP dotazy na server

    Takto mě to nejde ... 

    AraxoN avatar 23.11.2008 23:40 AraxoN | skóre: 45 | blog: slon_v_porcelane | Košice
    Rozbalit Rozbalit vše Re: PHP dotazy na server

    PID si nevyberáš, ten Ti pridelí operačný systém. firefox-bin bol názov programu, ktorého PID som chcel zistiť, a napísal som ho len pre ukážku. Ak taký program u Teba nie je spustený tak pidof nevráti nič.

    A fine is a tax for doing wrong. A tax is a fine for doing well.
    24.11.2008 00:04 maic
    Rozbalit Rozbalit vše Re: PHP dotazy na server

    Tak jinak.. udělal jsem to teda takto:

     

      $pid = shell_exec("pidof samp_7779");
      $akce = "kill ".$pid;
      echo "PID (".$pid.") - Akce (".$akce.")";
      shell_exec($akce);

      echo "<p><font color='#008000'>Server vypnut...</font></p>";
     

     

    Ale nic se neprovede.. nevíte proč? To by mě fakt zajímalo teda proč? :(

    AraxoN avatar 24.11.2008 00:58 AraxoN | skóre: 45 | blog: slon_v_porcelane | Košice
    Rozbalit Rozbalit vše Re: PHP dotazy na server

    A ten program samp_7779 beží pod tým istým užívateľom ako webserver? Zistilo to ten PID? Čo to vypísalo?

    A fine is a tax for doing wrong. A tax is a fine for doing well.
    24.11.2008 01:17 maic
    Rozbalit Rozbalit vše Re: PHP dotazy na server

    Ano .. šak tam mám to echo kde se vypisuje ten PID kterej to zjistí... a pak teprve zadává KILL 

    24.11.2008 01:22 maic
    Rozbalit Rozbalit vše Re: PHP dotazy na server

    Jinak vypsalo se to přesně takto

     

    PID (9667 ) - Akce (kill 9667 ) 

    24.11.2008 10:55 Haaja | skóre: 25 | blog: haaja | Praha
    Rozbalit Rozbalit vše Re: PHP dotazy na server

    Jedine co me napada ze to co chces stopnout bezi pod jinym uzivatelem (root nebo neco jineho) nez je apache a tudiz ten kill dat nemuzes.

     

    Kdyz spustis ten kill rucne pod uzivatelem apache (www-data nebo nejaky jiny pouzivany) tak to zabije?

    24.11.2008 11:05 maic
    Rozbalit Rozbalit vše Re: PHP dotazy na server

    přes ssh ho to zabije... ale když dám top tak je tam user root a apache to samý 

    24.11.2008 11:22 maic
    Rozbalit Rozbalit vše Re: PHP dotazy na server

    Ach jo ted na to kooukám.... apache běží přes usera    nobody :(

     

      515     nobody      15    0    27532    16m    5476   S    0    3.3    0:04.62     httpd 

    24.11.2008 11:41 maic
    Rozbalit Rozbalit vše Re: PHP dotazy na server

    Dal sem si tam

     

      echo shell_exec("groups")."<br>";
      echo shell_exec("whoami")."<br>";
     

     

    a vyplsalo mi to:

    nogroup

    nobody

     

    tak jde nejak spustit ty servery pod temito udaji? 

    24.11.2008 11:50 maic
    Rozbalit Rozbalit vše Re: PHP dotazy na server

    Vyřešeno.. použil jsem  

    su nobody -c ./samp_7777

     

    ale ještě bych potřeboval jestli by mě někdo neporadil jak by měl vypadat script co by tohle zadaval.. např ...  start.sh

     

    a tam aby se provedlo

    su nobody -c ./samp_7777 

    24.11.2008 13:30 maic
    Rozbalit Rozbalit vše Re: PHP dotazy na server

    Takže mám tento script:  start_7777.sh

    #!/bin/bash
    cd /root/servery/7777
    su nobody -c ./samp_7777 &
     

    a pouštím ho pomocí

    shell_exec("./start_7777.sh");

    nevíte pls někdo proč to nejde takto spustit? :) 

    24.11.2008 15:30 Messa | skóre: 39 | blog: Messa
    Rozbalit Rozbalit vše Re: PHP dotazy na server

    Má ten skript práva pro spuštění (chmod +x start_7777.sh)?

    BTW. proč to nejde takto spustit bys nám spíš měl říct ty podle nějaké chybové hlášky nebo výpisu z logu :)

    A proč tam máš vlastně to su nobody, když to spouštíš z PHP pod Apache a Apache už pod nobody běží, jak píšeš výše?

    24.11.2008 16:08 maic
    Rozbalit Rozbalit vše Re: PHP dotazy na server

    V logu nic není.. nebo aspon ve kterým? .. a chmod je nastaven na 777 

    24.11.2008 16:22 maic
    Rozbalit Rozbalit vše Re: PHP dotazy na server

    No tak už vše funguje.. jen mě štve, že web čeká až se server ukončí.. do té doby se nenačítá :'( 

    25.11.2008 12:16 Kroko | skóre: 22
    Rozbalit Rozbalit vše Re: PHP dotazy na server

    Nejak jsem nepochopil proc potrebujete spoustenemu procesu prirazovat konkretni PID, navic si myslim (mozna se pletu) ze PID prirazuje samo jadro podle toho jak se jednotlive procesy spousteji a vy ho neovlivnite, max. ho muzete zjistit ...

    http://kroko.evesnight.net
    25.11.2008 12:18 Kroko | skóre: 22
    Rozbalit Rozbalit vše Re: PHP dotazy na server

    Asi spise hledate UID (user ID) nebo GID (group ID) a ne PID (proces ID)

    http://kroko.evesnight.net
    25.11.2008 19:24 maic
    Rozbalit Rozbalit vše Re: PHP dotazy na server

    Tohle už je vyřešeno :)

    Teďka se snažím příjít na tuhle chybu:

     

    když kliknu na start serveru tak mě to server spustí ale apache čeká dokud se server nevypne.. až server vypne tak apache pokračuje v akci. :( 

    25.11.2008 20:14 Messa | skóre: 39 | blog: Messa
    Rozbalit Rozbalit vše Re: PHP dotazy na server

    Ten server by se měl nějak daemonizovat. Měl by to umět sám - tato vlastnost se obecně od serverů celkem očekává :-) Takže se zkus podívat po nějakém přepínači v příkazové řádce. Nebo si můžeš pomoci nějakým trikem - např. nohup (nevím jestli bude fungovat), nebo teď mě napadá konstrukce typu  "(su nobody -c ./samp_7777 &)".

    27.11.2008 13:10 maic
    Rozbalit Rozbalit vše Re: PHP dotazy na server

    Vyřešeno .. díky Messa :)

    27.11.2008 13:31 Messa | skóre: 39 | blog: Messa
    Rozbalit Rozbalit vše Re: PHP dotazy na server

    Nakonec stačilo jen přesměrovat standardní a chybový výstup do /dev/null a spustit skript na pozadí:

    <?php
    system("./skript.sh 2>/dev/null >/dev/null &");
    ?>

    Nejpravděpodobnější vysvětlení - výstupy jsou napojeny na rouru, kterou čte PHP (jak jinak) a PHP považuje příkaz za dokončení evidentně zavřením této roury. Samozřejmě je nutné, aby se proces se shellem ukončil, proto ten ampersand.

    Josef Kufner avatar 25.11.2008 22:24 Josef Kufner | skóre: 66
    Rozbalit Rozbalit vše Re: PHP dotazy na server
    Ještě k tomu system()... Já bych raději napsal malého jednoduchého démona, který by poslouchal na nějakém soketu, očekával příkazy a dělal podle nich co je potřeba. IMHO by to bylo výrazně bezpečnější a dalo by se s tím i vyřešit monitorování stavu služeb, jejich automatické restartování a další věci. A nejspíš už i něco takového existuje.

    Ale jak tak nad tím přemýšlým, asi bych se na to vykašlal, nahrál ssh klíče a pro obzvlášť otravné činnosti si napsal jednoduché scripty (hlavně ssh-nuke all shutdown now).
    Hello world ! Segmentation fault (core dumped)

    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.