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 14:00 | IT novinky

    Programovací jazyk JavaScript (Wikipedie) dnes slaví 30 let od svého oficiálního představení 4. prosince 1995.

    Ladislav Hagara | Komentářů: 0
    dnes 04:22 | Bezpečnostní upozornění

    Byly zveřejněny informace o kritické zranitelnosti CVE-2025-55182 s CVSS 10.0 v React Server Components. Zranitelnost je opravena v Reactu 19.0.1, 19.1.2 a 19.2.1.

    Ladislav Hagara | Komentářů: 2
    dnes 02:44 | Komunita

    Bylo rozhodnuto, že nejnovější Linux 6.18 je jádrem s prodlouženou upstream podporou (LTS). Ta je aktuálně plánována do prosince 2027. LTS jader je aktuálně šest: 5.10, 5.15, 6.1, 6.6, 6.12 a 6.18.

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

    Byla vydána nová stabilní verze 3.23.0, tj. první z nové řady 3.23, minimalistické linuxové distribuce zaměřené na bezpečnost Alpine Linux (Wikipedie) postavené na standardní knihovně jazyka C musl libc a BusyBoxu. Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 3
    včera 18:11 | Nová verze

    Byla vydána verze 6.0 webového aplikačního frameworku napsaného v Pythonu Django (Wikipedie). Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    včera 05:55 | Nová verze

    Po více než 7 měsících vývoje od vydání verze 6.8 byla vydána nová verze 6.9 svobodného open source redakčního systému WordPress. Kódové jméno Gene bylo vybráno na počest amerického jazzového klavíristy Gene Harrise (Ray Brown Trio - Summertime).

    Ladislav Hagara | Komentářů: 14
    včera 05:11 | Komunita

    Na čem pracují vývojáři webového prohlížeče Ladybird (GitHub)? Byl publikován přehled vývoje za listopad (YouTube).

    Ladislav Hagara | Komentářů: 0
    včera 01:55 | Nová verze

    Google Chrome 143 byl prohlášen za stabilní. Nejnovější stabilní verze 143.0.7499.40 přináší řadu novinek z hlediska uživatelů i vývojářů. Podrobný přehled v poznámkách k vydání. Opraveno bylo 13 bezpečnostních chyb.

    Ladislav Hagara | Komentářů: 0
    2.12. 19:33 | Nová verze

    Společnost Valve aktualizovala přehled o hardwarovém a softwarovém vybavení uživatelů služby Steam. Podíl uživatelů Linuxu dosáhl 3,2 %. Nejčastěji používané linuxové distribuce jsou Arch Linux, Linux Mint a Ubuntu. Při výběru jenom Linuxu vede SteamOS Holo s 26,42 %. Procesor AMD používá 66,72 % hráčů na Linuxu.

    Ladislav Hagara | Komentářů: 0
    2.12. 15:22 | IT novinky

    Canonical oznámil (YouTube), že nově nabízí svou podporu Ubuntu Pro také pro instance Ubuntu na WSL (Windows Subsystem for Linux).

    Ladislav Hagara | Komentářů: 0
    Jaké řešení používáte k vývoji / práci?
     (34%)
     (47%)
     (19%)
     (18%)
     (23%)
     (15%)
     (25%)
     (16%)
     (18%)
    Celkem 426 hlasů
     Komentářů: 18, poslední 2.12. 18:34
    Rozcestník

    Dotaz: cron vs. expect

    29.4.2013 18:23 hajoucha | skóre: 22
    cron vs. expect
    Přečteno: 371×
    Ahojda,

    v cronu má root:
    # crontab -l
    * * * * * /home/test/bin/cuc.sh >> /tmp/crontest
    
    cuc.sh vypadá takto:
    # cat cuc.sh 
    #!/usr/bin/expect -f
    spawn ssh USERID@bmc3 temps
    expect {
      "Password:"       {send PASSWORD\r}
    }
    interact
    exit 0
    
    
    Přesto se cronjob nevykoná, viz.
    # cat /tmp/crontest 
    spawn ssh USERID@bmc3 temps
    Password: spawn ssh USERID@bmc3 temps
    Password: spawn ssh USERID@bmc3 temps
    Password: spawn ssh USERID@bmc3 temps
    Password: spawn ssh USERID@bmc3 temps
    Password: spawn ssh USERID@bmc3 temps
    Password: spawn ssh USERID@bmc3 temps
    Password:
    
    tj. z nějakého důvodu chybí výpisy teplot, je to jinak než když pustím cuc.sh z příkazové řádky:
    # ./cuc.sh 
    spawn ssh USERID@bmc3 temps
    Password: 
    system> Temperatures are displayed in degrees Fahrenheit/Celsius
                     WR            W             T             SS            HS
    ---------------------------------------------------------------------------------------
    Ambient Temp     102.20/39     109.40/43.00  84.20/29.00   114.80/46.00  122.00/50.00
    PCI Riser 1 Temp 150.80/66     158.00/70.00  95.00/35.00   176.00/80.00  185.00/85.00
    PCI Riser 2 Temp 150.80/66     158.00/70.00  84.20/29.00   176.00/80.00  185.00/85.00
    CPU1 VR Temp     195.80/91     203.00/95.00  95.00/35.00   212.00/100.00 221.00/105.00
    CPU2 VR Temp     195.80/91     203.00/95.00  91.40/33.00   212.00/100.00 221.00/105.00
    DIMM AB VR Temp  195.80/91     203.00/95.00  89.60/32.00   212.00/100.00 221.00/105.00
    DIMM CD VR Temp  195.80/91     203.00/95.00  86.00/30.00   212.00/100.00 221.00/105.00
    DIMM EF VR Temp  195.80/91     203.00/95.00  84.20/29.00   212.00/100.00 221.00/105.00
    DIMM GH VR Temp  195.80/91     203.00/95.00  86.00/30.00   212.00/100.00 221.00/105.00
    PCH Temp         192.20/89     199.40/93.00  114.80/46.00  208.40/98.00  217.40/103.00
    
    
    
    Netušíte někdo, v čem by mohl být problém? Mě napadá akorát to, že cuc.sh normálně trvá cca 4-5s. Nevím ale, proč by se jenom díky pauze nevykonal celý skript....

    Popř... jak takovou věc debugovat?

    Řešení dotazu:


    Odpovědi

    29.4.2013 19:19 hajoucha | skóre: 22
    Rozbalit Rozbalit vše Re: cron vs. expect
    hmm, mám takové tušení, že chyba je v tom expect. Stačilo by mi, kdyby cuc.sh vypsal první řádek té teploty. Tj. ten, co začíná "Ambient Temp".
    29.4.2013 19:51 potato
    Rozbalit Rozbalit vše Re: cron vs. expect
    Opravdu není možné použít autentizaci klíčem jako normální člověk?

    Jinak je ssh velmi pěkně se chovající příkaz, můžeš ho normálně strkat do rour, takže výstup z jedné strany spojení se zpracovává na druhé etc.
    Zdeněk Zámečník avatar 29.4.2013 23:02 Zdeněk Zámečník | skóre: 26
    Rozbalit Rozbalit vše Re: cron vs. expect
    Zkus ten expect upravit podle tohoto příkladu.

    Anebo si nainstaluj balíček sshpass, pokud máš tu možnost. Jeho použití je jednoduché: sshpass -p "pwd" ssh uid@server_name ls -l.

    Ovšem příkláním se, jak už tu bylo zmíněno, spíše k použití SSH klíče...
    Řešení 1× (hajoucha (tazatel))
    30.4.2013 17:39 nomen omen
    Rozbalit Rozbalit vše Re: cron vs. expect
    Místo příkazu
    interact
    použij
    expect eof
    (a ošetři si i korektní odhlašování z té sondy)

    Interact totiž pracuje s pty, ale při volání z crontabu se žádný terminál nealokuje (snad teďka necanstám kraviny)

    Ale jak doporučuje někdo výše, sshpass je pro tebe ta správná volba.
    Řešení 1× (hajoucha (tazatel))
    30.4.2013 18:14 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: cron vs. expect

    Fascinuje mne, jak často u dotazů na problémy s cronem tazatel tvrdí, že se job nevykoná, přestože jím poskytnuté informace svědčí o pravém opaku…

    Zkusil jsem Google na "cron expect": první odkaz, druhý odkaz, … Zkusil jste to, co tam doporučují ("expect eof" místo "interact")?

    30.4.2013 18:29 hajoucha | skóre: 22
    Rozbalit Rozbalit vše Re: cron vs. expect
    ano, to je ono! Díky.

    Co se týče tvrzení "cronjob se nevykoná" - souhlasím a omlouvám se, nevyjádřil jsem se dost přesně. Měl jsem na mysli "cronjob se nevykoná podle mého očekávání". Zdá se, že je opravdu těžké ubránit se pokaždé podobným nepřesnostem...:(
    30.4.2013 19:32 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: cron vs. expect
    Ono je to právě dost podstatné - pro řešení problému je důležité vědět, jestli se skript opravdu nespustil (a chyba je pravděpodobně v cronu nebo v cron tabulkách) nebo jestli se sice spustil, ale chová se jinak, než se očekává (a chyba je pravděpodobně ve skriptu samotném a neoprávěných předpokladech). Podle mých zkušeností je druhá možnost podstatně častější.

    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.