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 17:22 | Nová verze

    Byla vydána betaverze Fedora Linuxu 43 (ChangeSet), tj. poslední zastávka před vydáním finální verze, která je naplánována na úterý 21. října.

    Ladislav Hagara | Komentářů: 0
    dnes 12:22 | Nová verze

    Multiplatformní emulátor terminálu Ghostty byl vydán ve verzi 1.2 (𝕏, Mastodon). Přehled novinek, vylepšení a nových efektů v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    dnes 00:11 | Nová verze

    Byla vydána nová verze 4.5 (𝕏, Bluesky, Mastodon) multiplatformního open source herního enginu Godot (Wikipedie, GitHub). Přehled novinek i s náhledy v příspěvku na blogu.

    Ladislav Hagara | Komentářů: 0
    včera 21:33 | Nová verze

    Byla vydána verze 3.0 (Mastodon) nástroje pro záznam a sdílení terminálových sezení asciinema (GitHub). S novou verzí formátu záznamu asciicast v3, podporou live streamingu a především kompletním přepisem z Pythonu do Rustu.

    Ladislav Hagara | Komentářů: 0
    včera 21:00 | Komunita

    Canonical oznámil, že bude podporovat a distribuovat toolkit NVIDIA CUDA (Wikipedie) v Ubuntu.

    Ladislav Hagara | Komentářů: 0
    včera 20:44 | IT novinky

    Tržní hodnota americké společnosti Alphabet, která je majitelem internetového vyhledávače Google, dnes poprvé překonala hranici tří bilionů dolarů (62,1 bilionu Kč). Alphabet se připojil k malé skupině společností, které tuto hranici pokořily. Jsou mezi nimi zatím americké firmy Nvidia, Microsoft a Apple.

    Ladislav Hagara | Komentářů: 2
    včera 20:33 | IT novinky

    Spojené státy a Čína dosáhly dohody ohledně pokračování populární čínské platformy pro sdílení krátkých videí TikTok v USA. V příspěvku na síti Truth Social to dnes naznačil americký prezident Donald Trump. Dosažení rámcové dohody o TikToku vzápětí oznámil americký ministr financí Scott Bessent, který v Madridu jedná s čínskými představiteli o vzájemných obchodních vztazích mezi USA a Čínou. Bessentova slova později potvrdila také čínská strana.

    Ladislav Hagara | Komentářů: 0
    včera 16:55 | Komunita

    MKVToolNix, tj. sada nástrojů pro práci s formátem (medialnym kontajnerom) Matroska, byl vydán ve verzi 95.0. Podpora přehrávání formátu Matroska míří do Firefoxu [Bug 1422891, Technický popis]. Přehrávání lze již testovat ve Firefoxu Nightly.

    Ladislav Hagara | Komentářů: 0
    13.9. 17:33 | Pozvánky

    Spolek OpenAlt zve příznivce otevřených řešení a přístupu na 211. sraz, který proběhne v pátek 19. září od 18:00 ve Studentském klubu U Kachničky na Fakultě informačních technologií Vysokého učení technického na adrese Božetěchova 2/1. Na srazu proběhne přednáška Jiřího Eischmanna o nové verzi prostředí GNOME 49. Nemáte-li možnost se zúčastnit osobně, přednáškový blok bude opět streamován živě na server VHSky.cz a následně i zpřístupněn záznam.

    Ladislav Hagara | Komentářů: 0
    13.9. 01:33 | IT novinky

    Microsoft se vyhnul pokutě od Evropské komise za zneužívání svého dominantního postavení na trhu v souvislosti s aplikací Teams. S komisí se dohodl na závazcích, které slíbil splnit. Unijní exekutivě se nelíbilo, že firma svazuje svůj nástroj pro chatování a videohovory Teams se sadou kancelářských programů Office. Microsoft nyní slíbil jasné oddělení aplikace od kancelářských nástrojů, jako jsou Word, Excel a Outlook. Na Microsoft si

    … více »
    Ladislav Hagara | Komentářů: 10
    Pro otevření více webových stránek ve webovém prohlížečí používám
     (82%)
     (7%)
     (3%)
     (3%)
     (4%)
     (2%)
    Celkem 184 hlasů
     Komentářů: 12, poslední 10.9. 13:00
    Rozcestník

    Pythonský démon

    27.9.2005 10:46 | Přečteno: 1370×

    Python znamená anglicky nějakého hada, myslím že hroznýše. Taky to znamená věštec. Známe pojem pýthie, to je byla věštkyně v Delfách. Nebo ovšem hroznýška. Správná česká výslovnost Pythona asi bude [pýton]. [paitn] je taky správná, ale anglická. Pythona mám rád, napsal jsem si v něm démona. Mám tam takovéhle řádky:

    import os
    import signal
    import re
    import time
    import string
    import sys

    konrad = re.compile(r"\r*\n*$")
    pidfile = "/var/run/dozorce.pid"
    krok = 120 # interval mezi testy v s

    A o kousek dál tohle, aby se náhodou nespustil dvakrát:

    if os.path.exists(pidfile) :
       sou = open(pidfile,"r")
       r = sou.readline()
       sou.close()
       cislo = eval(konrad.sub("",r))

       try:
          os.kill(cislo,0)
       except OSError:
         # pidfile jsme stastne nasli, ale k nemu proces nebezi
         pass
       else:
         sys.stderr.write( "dozorce konci protoze proces %d uz bezi\n"%cislo )
       sys.exit(1)


    A potom ještě tohle, aby se z něj udělal démon: vytvořím synovský proces a udělám ho vedoucím seance, čímž se zároveň odpojí od tty. Hodilo by se ještě přesměrování stdin, stdout, stderr někam jinam než je tty, ale to se dá i ve startovní skriptu.



    # spustime se jako demon
    p = os.fork()
    if p > 0:
       os.waitpid(p,os.WNOHANG)
       sys.exit(0)
    elif p == 0:
       # jsem synovsky proces
       os.setsid()
       sou = open(pidfile,"w")
       sou.write("%s"%os.getpid())
       sou.close()
    else:
       sys.stderr.write( "dozorce nezdareny fork\n" )
       sys.exit(2)


    Načež si udělám nekonečný cyklus, vždycky udělám co potřebuju a dvě minuty počkám. Zatím potřebuju hlídat na serveru, jestli mi tam někdo nežere moc paměti. Když tak mu pošlu mail, když je to ještě horší, tak ho rovnou zabiju.

    Do crona jsem si dal


    33 * * * * kill -0 $(cat /var/run/dozorce.pid) || /etc/init.d/dozor start

    Možná je to zbytečné, třeba crona taky nerestartuju každou hodinu z crona. Ještě to nespadlo. Při zkušebním běhu jsem si dal nižší závoru a zabilo mi to X server , u kterého jsem zrovna seděl. Jojo, hlavně že to funguje.

           

    Hodnocení: -

    zatím nehodnoceno
            špatnédobré        

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

    Komentáře

    Vložit další komentář

    27.9.2005 11:12 Dag | skóre: 25 | blog: bzuk
    Rozbalit Rozbalit vše python
    Python je latinské jméno pro krajtu. Hroznýš je Boa, i když ta podčeleď Boinae je hodně veliká, Anakonda je Boinae také jmenuje se Eunectes. A tak...
    To jen BTW, pokud, by to někoho zajímalo. Ale program se, myslím, jmenuje po Monthy Python. Ti ale mají jméno (pokud vím) po krajtě.(?)
    27.9.2005 11:42 Jan Kundrát (jkt) | skóre: 27 | blog: jkt | Praha - Bohnice
    Rozbalit Rozbalit vše Re: python
    "Another important goal of the Python developers is making Python fun to use. This is reflected in the origin of the name (after the television series Monty Python's Flying Circus); in the common practice of using Monty Python references in example code; and in an occasionally playful approach to tutorials and reference materials." -- Wikipedia
    27.9.2005 12:09 Dag | skóre: 25 | blog: bzuk
    Rozbalit Rozbalit vše Re: python
    Jo, já tušil že po Monty Pythonech, ale mám pocit, že ti se zase jmenují po krajtě (ona se tam chlapcům vyskytovala na obrázcích). Ale ono je to vcelku putna. :-)
    27.9.2005 15:29 krnoha | skóre: 10 | blog: prizpevy
    Rozbalit Rozbalit vše Re: python
    "Another important goal of the Python developers is making Python fun to use. "

    Tak, tohle na mě dejchlo před deseti lety, když jsem se náhodou dostal ke skvěle udržovanému unixovému prostředí v CERN a nazdařbůh jsem napsal

    cd /usr/local/bin
    ls
    

    a viděl jsem tam něco, co vypadalo jako věštkyně. Občas je s ním vážně psina.

    27.9.2005 13:11 zde | skóre: 9 | blog: Linuch | Brno
    Rozbalit Rozbalit vše Asi OK, ale
    Otestovat pomoci kill(pid, 0) zda dany PID bezi je zrejme dostatecne, ale PIDy se recyklujou. Ja ale beh demona testuju jinak:
        f = os.open (pidfile, os.O_RDWR | os.O_CREAT, 0644)
        try:
            fcntl.flock (f, fcntl.LOCK_EX | fcntl.LOCK_NB)
            # we're first!
            ...
        except IOError:
            # locked: already running
            pid = int (os.read (f, 5))
            sys.stderr.write ('%s is running, pid %d\n' % (app, pid))
            ...
    
    Táto, ty de byl? V práci, já debil.
    daemonize.py
    tato daemonizacia je podla mna trosku nazornejsia, ale inak celkom sympaticke.

    Založit nové vláknoNahoru

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