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 16:44 | Nová verze

    Svobodný multiplatformní herní engine Bevy napsaný v Rustu byl vydán ve verzi 0.18. Díky 174 přispěvatelům.

    Ladislav Hagara | Komentářů: 2
    včera 15:11 | IT novinky

    Miliardy korun na digitalizaci služeb státu nestačily. Stát do ní v letech 2020 až 2024 vložil víc než 50 miliard korun, ale původní cíl se nepodařilo splnit. Od loňského února měly být služby státu plně digitalizované a občané měli mít právo komunikovat se státem digitálně. Do tohoto data se povedlo plně digitalizovat 18 procent agendových služeb státu. Dnes to uvedl Nejvyšší kontrolní úřad (NKÚ) v souhrnné zprávě o stavu digitalizace v Česku. Zpráva vychází z výsledků víc než 50 kontrol, které NKÚ v posledních pěti letech v tomto oboru uskutečnil.

    Ladislav Hagara | Komentářů: 8
    včera 13:55 | IT novinky

    Nadace Wikimedia, která je provozovatelem internetové encyklopedie Wikipedia, oznámila u příležitosti 25. výročí vzniku encyklopedie nové licenční dohody s firmami vyvíjejícími umělou inteligenci (AI). Mezi partnery encyklopedie tak nově patří Microsoft, Amazon a Meta Platforms, ale také start-up Perplexity a francouzská společnost Mistral AI. Wikimedia má podobnou dohodu od roku 2022 také se společností Google ze skupiny

    … více »
    Ladislav Hagara | Komentářů: 0
    včera 02:22 | Nová verze

    D7VK byl vydán ve verzi 1.2. Jedná se o fork DXVK implementující překlad volání Direct3D 5, 6 a 7 na Vulkan. DXVK zvládá Direct3D 8, 9, 10 a 11.

    Ladislav Hagara | Komentářů: 0
    včera 02:00 | Nová verze

    Byla vydána verze 12.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 12.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. 19:22 | Humor

    CreepyLink.com je nový zkracovač URL adres, 'díky kterému budou vaše odkazy vypadat tak podezřele, jak je to jen možné'. Například odkaz na abclinuxu.cz tento zkracovač převádí do podoby 'https://netflix.web-safe.link/logger_8oIlgs_free_money.php'. Dle prohlášení autora je CreepyLink alternativou ke zkracovači ShadyURL (repozitář na githubu), který dnes již bohužel není v provozu.

    NUKE GAZA! 🎆 | Komentářů: 3
    15.1. 12:33 | IT novinky

    Na blogu Raspberry Pi byla představena rozšiřující deska Raspberry Pi AI HAT+ 2 s akcelerátorem Hailo-10 a 8 GB RAM. Na rozdíl od předchozí Raspberry Pi AI HAT+ podporuje generativní AI. Cena desky je 130 dolarů.

    Ladislav Hagara | Komentářů: 3
    15.1. 12:11 | Komunita

    Wikipedie slaví 25. výročí svého založení. Vznikla 15. ledna 2001 jako doplňkový projekt k dnes již neexistující encyklopedii Nupedia. Doména wikipedia.org byla zaregistrována 12. ledna 2001. Zítra proběhne v Praze Večer svobodné kultury, který pořádá spolek Wikimedia ČR.

    Ladislav Hagara | Komentářů: 1
    15.1. 04:44 | Nová verze

    Po více než dvou letech od vydání předchozí verze 2.12 byla vydána nová stabilní verze 2.14 systémového zavaděče GNU GRUB (GRand Unified Bootloader, Wikipedie). Přehled novinek v souboru NEWS a v aktualizované dokumentaci.

    Ladislav Hagara | Komentářů: 2
    15.1. 02:22 | Nová verze

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

    Ladislav Hagara | Komentářů: 4
    Které desktopové prostředí na Linuxu používáte?
     (14%)
     (5%)
     (0%)
     (9%)
     (19%)
     (3%)
     (6%)
     (3%)
     (11%)
     (42%)
    Celkem 463 hlasů
     Komentářů: 12, poslední 14.1. 21:12
    Rozcestník

    Dotaz: Bash. Spousteni skriptů na zaklade dostupnosti/nedostupnosti ip adresy

    3.12.2007 09:02 Lemmy | skóre: 1 | blog: ctyri_iks
    Bash. Spousteni skriptů na zaklade dostupnosti/nedostupnosti ip adresy
    Přečteno: 1201×
    Ahoj, potreboval bych poradit s jednim skriptem.

    Skript by mel provadet nasledujici:

    V nastavenem intervalu by mel kontrolovat dostupnost/nedostupnost vybrane ip adresy a na zaklade dostupnosti ci nedostupnosti by mel spustet vybrane skripty.

    V pripade dostupnosti ip adresy by skript nic nedelal proste by pokracoval ve sve cinnosti a za urcity casovy interval by provedl kontrolu znovu. V pripade zjisteni nedostupnosti ip adresy by skript mel spustit prikaz A a zase by mel pokracovat v cinnosti. Skript by mel v kazdem prubehu kontrolovat ,jestli ip adresa byla v predchozim prubehu oznacena jako nedostupna. V pripade, ze v predchozim prubehu byla ip adresa nedostupne a v soucasnem prubehu uz dostupna je, skript by mel spustit prikaz B.

    V praxi by to melo vypadat tak, ze v pripade vypadku dostupnosti ip adresy, spusti skript prikaz pro nahozeni vpn tunelu a po zjisteni dostupnosti spusti prikaz, ktery vpn tunel zase shodi.

    Zaklad skriptu bych si predstavoval takto:
    #!/bin/sh
    PINGADDR=ver.ej.na.ip
    PINGCOUNT=5
    SLEEPTIME=60
    
    while [ 1 ]
    do
        STATE=`ping -c $PINGCOUNT $PINGADDR| awk 'END{print $4}'`
            
        if [ $STATE == 0 ]; then
          echo "IP je nedostupna"
        else
         echo "IP je dostupna"
        fi
        
        sleep $SLEEPTIME
    done
    Bohuzel uz nevim jak zajistit kotrolu stavu v predchozim prubehu skriptu.

    Idealni by bylo jeste skript rozsirit o kotrolu napriklad ip adresy pro www.google.com a v pripade, ze budou obe ip adresy nedostupne neprovadet nic, protoze velmi pravdepodobne doslo k vypadku pripojeni na strane naseho skriptu.

    Diky za nakopnuti spravnym smerem.

    Odpovědi

    3.12.2007 09:16 Filip Jirsák | skóre: 67 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: Bash. Spousteni skriptů na zaklade dostupnosti/nedostupnosti ip adresy
    Při zápolení s jednou kvalitní ADSL linkou a kvalitním modemem jsem si napsal následující skript. Bylo to „pro vlastní potřebu“, takže to není žádný zázrak, ale aspoň jako inspirace to snad posloužit může. Opakované spouštění zajišťoval cron.
    #!/bin/bash
    exec &> /dev/null
    sms_file='/var/watchdog/gymnacel.sms'
    email_file='/var/watchdog/gymnacel.email'
    if ping -nc 3 -i 5 -q -w 60 194.108.202.2
    then
            if [ -e $sms_file ]
            then
                    rm $sms_file
                    echo 'obnoveno' `date` >> /var/log/gymnacel-watchdog.log
            fi
    else
            if [ ! -e $sms_file ]
            then
                    echo 'vypadek' `date` >> /var/log/gymnacel-watchdog.log
                    echo 'From: xxx@example.com' > $email_file
                    echo 'Subject: gymnacel nepristupne ' `date` >> $email_file
                    echo '' >> $email_file
                    echo 'From: xxx@example.com > $sms_file
                    echo 'Subject: gymnacel nepristupne ' `date` >> $sms_file
                    echo '' >> $sms_file
                    ping -nc 1 194.108.202.2 >> $email_file || echo '194.108.202.2 selhal' >> $sms_file
                    ping -nc 1 194.108.129.153 >> $email_file || echo '194.108.129.153 selhal' >> $sms_file
                    sendmail -f 'yyy@example.com' 'yyy@example.com' < $email_file
                    sendmail -f 'yyy@example.com' 'yyy-SMS@example.com' < $sms_file
            fi
    fi
    
    
    3.12.2007 09:37 Lemmy | skóre: 1 | blog: ctyri_iks
    Rozbalit Rozbalit vše Re: Bash. Spousteni skriptů na zaklade dostupnosti/nedostupnosti ip ad
    Tak sem zkusil zapojit svou sedou kuru mozkovou a dostal sem se nekam sem:
    #!/bin/sh
    
    PINGADDR=ver.ej.na.ip
    PINGCOUNT=5
    SLEEPTIME=60
    
    while [ 1 ]
    do
        STATE_IP=`ping -c $PINGCOUNT $PINGADDR| awk 'END{print $4}'`
        
        if [ $STATE_IP == 0 ]; then
          if [ $STATE == 0]; then 
            echo "ip je stale nedostupna. Do nothing."
          else
            echo "IP je nedostupna. Zapinam tunel."
            STATE=0
          fi     
          
        else
          echo "IP je dostupna"
            if [ $STATE == 0 ]; then
              echo "Vypinam tunel"
              STATE=1   
            fi  
        fi
        
        sleep $SLEEPTIME
    done
    
    Mohlo by to takhle fungovat ?

    Diky za reakce.
    3.12.2007 09:46 Tomáš | skóre: 31 | blog: Tomik
    Rozbalit Rozbalit vše Re: Bash. Spousteni skriptů na zaklade dostupnosti/nedostupnosti ip adresy
    Bohuzel uz nevim jak zajistit kotrolu stavu v predchozim prubehu skriptu.
    Pokud to chapu spravne, tak staci pridat jednu promennou a do ni si davat zjisteny stav a v dalsim cyklu si to zase precist.
    3.12.2007 10:26 Lemmy | skóre: 1 | blog: ctyri_iks
    Rozbalit Rozbalit vše Re: Bash. Spousteni skriptů na zaklade dostupnosti/nedostupnosti ip ad
    Tady je uz skoro finalni verze:
    
    #!/bin/sh
    
    PINGADDR=ver.ej.na.ip
    GOOGLE=64.233.183.99
    PINGCOUNT=1
    SLEEPTIME=5
    
    while [ 1 ]
    do
        STATE_GOO=`ping -c $PINGCOUNT $GOOGLE|grep transmitted|awk '{print $4}'`
        
        if [ $STATE_GOO -ne 0 ]; then
          echo "Google je dostupny"
          STATE_IP=`ping -c $PINGCOUNT $PINGADDR|grep transmitted|awk '{print $4}'`
            
          if [ $STATE_IP -eq 0 ]; then
          
            if [ $STATE -eq 0 ]; then 
              echo "ip je stale nedostupna. Do nothing."
            else
              echo "IP je nedostupna. Zapinam tunel."
              STATE=0
            fi     
          
          else
            echo "IP je dostupna"
            if [ $STATE -eq 0 ]; then
              echo "Vypinam tunel"   
            fi  
            STATE=1
          fi
        
        fi
        sleep $SLEEPTIME
    done
    
    Budu vdecny za jakekoliv konstruktivni pripominky k uvedenemu skriptu.
    3.12.2007 13:03 Lemmy | skóre: 1 | blog: ctyri_iks
    Rozbalit Rozbalit vše Re: Bash. Spousteni skriptů na zaklade dostupnosti/nedostupnosti ip ad
    Tak skript uz vicemene funguje jak ma, ale mam s nim jeste jeden problem.

    Kdyz skript spustim, tak nejde zastavit pomoci kill pid, ale musim ho ukoncovat nasilne pomoci kill -9 pid.

    Nevedel byste nekdo, jak skript upravit tak, aby sel normalne ukoncit ?

    Diky za reakce.
    3.12.2007 18:25 Pavel1 | skóre: 33
    Rozbalit Rozbalit vše Re: Bash. Spousteni skriptů na zaklade dostupnosti/nedostupnosti ip ad
    Jsou 2 varianty (které mě teď napadají), jak skript opakovaně spouštět (v intervalu). Buďto jak to děláš, tzn. že skript bude běžet neustále a čekání se bude dělat uvnitř skriptu příkazem sleep a nebo uděláš jednorázový skriptík, který budeš nejlépe spouštět opakovaně cronem.

    Jak to típnout? Zabít celý skript, případně sleep, na kterém to vždy na 99,9% visí.

    Tip: Jde si pomoci i externím pomocným souborem, kde pomocí jeho obsahu, nebo případně i přímo existencí tohoto souboru můžeme skript ovlivňovat (ukončit, měnit interval apod.).
    3.12.2007 18:39 Pavel1 | skóre: 33
    Rozbalit Rozbalit vše Re: Bash. Spousteni skriptů na zaklade dostupnosti/nedostupnosti ip ad
    Ještě doplnění, pro to ukončení bych zkusil zjistit, jestli je přítomný proces s tím sleepem, pokud ano, tak ho kilnout. A ve skritu bych sleep upravil na:
        sleep $SLEEPTIM || exit
    

    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.