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í
×
    včera 22:22 | Komunita

    Open source webový aplikační framework Django slaví 20. narozeniny.

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

    V Brestu dnes začala konference vývojářů a uživatelů linuxové distribuce Debian DebConf25. Na programu je řada zajímavých přednášek. Sledovat je lze online.

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

    Před 30 lety, tj. 14. července 1995, se začala používat přípona .mp3 pro soubory s hudbou komprimovanou pomocí MPEG-2 Audio Layer 3.

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

    Výroba 8bitových domácích počítačů Commodore 64 byla ukončena v dubnu 1994. Po více než 30 letech byl představen nový oficiální Commodore 64 Ultimate (YouTube). S deskou postavenou na FPGA. Ve 3 edicích v ceně od 299 dolarů a plánovaným dodáním v říjnu a listopadu letošního roku.

    Ladislav Hagara | Komentářů: 16
    13.7. 17:55 | Zajímavý projekt

    Společnost Hugging Face ve spolupráci se společností Pollen Robotics představila open source robota Reachy Mini (YouTube). Předobjednat lze lite verzi za 299 dolarů a wireless verzi s Raspberry Pi 5 za 449 dolarů.

    Ladislav Hagara | Komentářů: 11
    11.7. 16:44 | Komunita

    Dnes v 17:30 bude oficiálně vydána open source počítačová hra DOGWALK vytvořena v 3D softwaru Blender a herním enginu Godot. Release party proběhne na YouTube od 17:00.

    Ladislav Hagara | Komentářů: 3
    11.7. 14:55 | Humor

    McDonald's se spojil se společností Paradox a pracovníky nabírá také pomocí AI řešení s virtuální asistentkou Olivii běžící na webu McHire. Ian Carroll a Sam Curry se na toto AI řešení blíže podívali a opravdu je překvapilo, že se mohli přihlásit pomocí jména 123456 a hesla 123456 a získat přístup k údajům o 64 milionech uchazečů o práci.

    Ladislav Hagara | Komentářů: 16
    11.7. 00:11 | Nová verze

    Byla vydána (𝕏) červnová aktualizace aneb nová verze 1.102 editoru zdrojových kódů Visual Studio Code (Wikipedie). Přehled novinek i s náhledy a videi v poznámkách k vydání. Ve verzi 1.102 vyjde také VSCodium, tj. komunitní sestavení Visual Studia Code bez telemetrie a licenčních podmínek Microsoftu.

    Ladislav Hagara | Komentářů: 0
    10.7. 21:00 | Bezpečnostní upozornění

    Byla vydána nová verze 2.4.64 svobodného multiplatformního webového serveru Apache (httpd). Řešeno je mimo jiné 8 bezpečnostních chyb.

    Ladislav Hagara | Komentářů: 4
    10.7. 15:22 | Nová verze

    Společnost xAI na síti 𝕏 představila Grok 4, tj. novou verzi svého AI LLM modelu Grok.

    Ladislav Hagara | Komentářů: 12
    Jaký je váš oblíbený skriptovací jazyk?
     (59%)
     (26%)
     (7%)
     (3%)
     (1%)
     (1%)
     (4%)
    Celkem 393 hlasů
     Komentářů: 16, poslední 8.6. 21:05
    Rozcestník

    Dotaz: Fetchmail spousteny z dovecot?

    13.2.2007 16:08 Freeman
    Fetchmail spousteny z dovecot?
    Přečteno: 202×
    Dobry den,

    potreboval bych poradit v nastaveni stahovani posty. Mam nekolik e-mail uctu, z nich si pomoci fetchmail stahuji pravidelne vse k sobe na server, kde bezi dovecot jako IMAP server. Postu pak ctu pouze pres IMAP z ruznych mist.

    Fetchmail v soucasne dobe bezi s cca 3 minutovym intervalem, to je ale na celodenni beh prilis casto, zato ale zas, kdyz se trebas nekde registruji a cekam na potvrzovaci e-mail, prilis malo casto.

    Napadlo me zvolnit interval na cca 1 hodinu ale probouzet fetchmail vzdy, kdyz se pripojim/prihlasim k IMAPu. Bohuzel nevim, jak to nejlepe zintegrovat s dovecotem. Nechci ho nejak patchovat, spis, zda neni nejaka moznost to dat do tcpd nebo do PAM (ktery asi bude overovat heslo). Nemam s tim zkusenosti, takze uvitam tipy, jak vec resit, trebas i uplne jinak.

    Diky.

    Odpovědi

    13.2.2007 19:00 Jan Martinek | skóre: 43 | blog: johny | Brno
    Rozbalit Rozbalit vše Re: Fetchmail spousteny z dovecot?
    Asi bych na to šel nějak takhle:
    #!/usr/bin/env python
    import time
    def is_conn_established(port):
        retvalue = False
        for line in file('/proc/net/tcp'):
            spl = line.split()
            if spl[3] != '01': continue #01 is ESTABLISHED
            local_port = int(spl[1].split(':')[1], 16)
            if local_port == port:
                retvalue = True
                break
        return retvalue
    
    def run_fetchmail():
        print 'running fetchmail'
    
    while True:
        if is_conn_established(993):
            run_fetchmail()
            delay = 3 * 60
        else:
            print 'nothing to do'
            delay = 1
        time.sleep(delay)
    
    Program každou sekundu sleduje, zda je navázáno tcp spojení na sledovaný port (v mém případě 993) a pokud ano, tak pustí fetchmail a interval sledování prodlouží na tři minuty. Jestliže spojení navázáno není, nic se nespouští a spojení se kontroluje opět jednou za sekundu.
    Ten fetchmail se prozatím ve skutečnosti nevolá, jen je pro něj nachystaná funkce.
    Josef Kufner avatar 13.2.2007 19:18 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Fetchmail spousteny z dovecot?
    Pokud pouštíš dovecat přes inetd, tak prostě jeho příkaz uprav z "dovecat" na "killall -HUP fetchmail & dovecat". Čímž souběžně s navázáním spojení na IMAP spustíš i stahování pošty. Nazkoušel jsem to, ale mělo by to bez problémů fungovat. Má to však pár neduhů na které jistě brzy přijdeš. Třeba právě to, že klient obvykle udržuje spojení na IMAP nepřetržitě (u POP3 by to nevadilo).

    Drobnou modifikací by se dalo udělat to, že pokud jsi připojen k IMAPu, tak by se zkrátil interval stahování fetchmailem. K tomu budeš potřebovat jednoduchý script, který upraví konfiguraci fetchmailu (postavený okolo sed -i) nebo upraví konfiguraci cronu -- záleží na stylu jakým fetchmail používáš. Pak by příkaz v inetd vypadal nějak takto: "uprav-interval 3 ; dovecat ; uprav-interval 30". Prostě to spustí script při začátku navazování spojení a po ukončení.

    V obou případech platí, že to co spouštíš navíc kromě dovecatu nesmí nijak sahat na standardní vstup a výstup. V druhé variantě se k době navazování spojení přičte doba prvního spuštění onoho scriptu. Ten script musí také zvládat více souběžných spojení (stačí aby nic nedělal, pokud už jiná instance scriptu upravila konfiguraci, tzn. držet si někde záznam o úpravě, třeba přímo v konfiguráku fetchmailu).

    Další možností je sledovat logy (pomocí tail -f), odposlouchávat provoz na síti (tcpflow, tcpdump) nebo třeba jen sledovat navázaná spojení (netstat) či se dívat, kdo má otevřený mailbox (lsof, incron). Myslím, že použití incronu by mohlo být zajímavé (pokud dokáže zachytit i pouhé otevření souboru pro čtení).
    Hello world ! Segmentation fault (core dumped)
    Josef Kufner avatar 13.2.2007 19:20 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Fetchmail spousteny z dovecot?
    Ještě nutno poznamenat, že periodicky kontrolovat, zda něco je či není, je poněkud neefektivní a ošklivé. To se týká právě sledování pomocí netstat, lsof nebo podobných nástrojů.
    Hello world ! Segmentation fault (core dumped)
    14.2.2007 11:36 Jan Martinek | skóre: 43 | blog: johny | Brno
    Rozbalit Rozbalit vše Re: Fetchmail spousteny z dovecot?
    Ještě nutno poznamenat, že periodicky kontrolovat, zda něco je či není, je poněkud neefektivní a ošklivé. To se týká právě sledování pomocí netstat, lsof nebo podobných nástrojů.
    Obecně s tím souhlasím, ale přesto to tak v tomto případě dělám. Aby byla nějaká názorná představa, tak jedno otestování trvá asi milisekundu, přičemž nespouštím žádný externí program (stačí poslat signál fetchmailu) ani nijak nehrabu na disk a nepotřebuji práva roota.
    Všechno má svá pro a proti. Tail -f koneckonců taky periodicky zjišťuje stav -- pokud je mi známo, tak zatím žádnou pokročilejší techniku nepoužívá. Další varianta testování mailboxu pomocí inotify taky nemá význam, protože dovecot je inteligentní a nečte z něj, dokud do něj někdo nezapíše, takže by se z toho stal bludný kruh. Ta varianta s tcpdumpem by dost zatížila systém a navíc to musí běžet jako root. Pak zbývají ty čachry vyžadující xinetd, cron, přepisování konfiguráku ...
    No zkrátka by to opravdu chtělo nějaký upozorňovací modul do PAMu. Umí to někdo?

    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.