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 06:00 | Komunita

    Vydání Debianu 11 s kódovým jménem Bullseye je naplánováno na sobotu 14. srpna.

    Ladislav Hagara | Komentářů: 3
    včera 23:55 | Nová verze

    Google Chrome 92, konkrétně verze 92.0.4515.107, byl v úterý prohlášen za stabilní. Opraveno bylo 35 bezpečnostních chyb. Pete LePage doteď nepublikoval oficiální přehled novinek (New in Chrome, YouTube). Publikován byl jenom seznam novinek v nástrojích pro vývojáře (YouTube). Sundar Pichai dnes na Twitteru oznámil vylepšení integrované hry chrome://dino/.

    Ladislav Hagara | Komentářů: 6
    včera 08:00 | Nová verze

    Firewall firewalld (Wikipedie, GitHub) dospěl do verze 1.0.0. Upozornit je nutno na nekompatibilní změny. Zrušena byla podpora Pythonu 2.

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

    Milí priatelia Mozilly, tím Mozilla.sk hľadá pomoc v radoch dobrovoľníkov, ktorí sú ochotní pomáhať nám s týmto projektom. Vítaná je akákoľvek pomoc, no aktuálne hľadáme hlavne ľudí, ktorí by sa starali o aktuálnosť lokalizovaných článkov na stránkach podpory SUMO. Projekt je doteraz veľmi sviežo udržiavaný, no naše kapacity prekročili všetky limity a už nestíhame. Ak sa nám v najbližšej dobe nepodarí rozšíriť tím, bude nutné zo stránok

    … více »
    Ladislav Hagara | Komentářů: 18
    22.7. 12:00 | Nová verze

    PeerTube (Wikipedie), svobodná decentralizovaná platforma pro pro sdílení a přehrávání videí, byla vydána ve verzi 3.3. Z novinek lze zmínit možnost snadné úpravy úvodní stránky, vyhledávání v seznamech videí nebo kratší odkazy na videa.

    Ladislav Hagara | Komentářů: 28
    22.7. 09:00 | Komunita

    Vývojáři svobodného (GPLv3) šachového enginu Stockfish (Wikipedie) na svém blogu informují, že podali žalobu na společnost ChessBase (Wikipedie): ChessBase prodává šachový engine Fat Fritz 2 vycházející z enginu Stockfish a své uživatele neinformuje o GPL licenci a neposkytuje jim zdrojové kódy.

    Ladislav Hagara | Komentářů: 12
    22.7. 08:00 | Komunita

    Alyssa Rosenzweig se v příspěvku na blogu společnosti Collabora věnuje reverznímu inženýrství GPU Mali G78 s mikroarchitekturou a instrukční sadou Valhall. Po měsíci práce byla vydána referenční instrukční sada (pdf).

    Ladislav Hagara | Komentářů: 2
    22.7. 07:00 | Zajímavý software

    LiveKit je nedávno uvolněna open source platforma pro realtimovou komunikaci. Zdrojové kódy jsou k dispozici na GitHubu.

    Ladislav Hagara | Komentářů: 0
    21.7. 13:11 | Nová verze

    Po čtyřech měsících vývoje od vydání verze 5.7 byla vydána nová verze 5.8 svobodného open source redakčního systému WordPress. Kódové označení Tatum bylo vybráno na počest amerického jazzového klavíristy Arta Tatuma (Yesterdays).

    Ladislav Hagara | Komentářů: 25
    21.7. 08:00 | Bezpečnostní upozornění

    Společnost Qualys zveřejnila na svém blogu informace o v upstreamu již opravených bezpečnostních chybách CVE-2021-33909 v Linuxu (txt) a CVE-2021-33910 v systemd (txt). Chyba v Linuxu (fs/seq_file.c) je zneužitelná k lokální eskalaci práv.

    Ladislav Hagara | Komentářů: 7
    Preferuji
     (62%)
     (28%)
     (10%)
    Celkem 317 hlasů
     Komentářů: 61, poslední dnes 12:19
    Rozcestník

    Dotaz: BASH - posílání příkazů ze scriptu na jiné zařízení skrze SSH

    Petr Maleček avatar 18.6. 15:17 Petr Maleček | skóre: 28 | Plzeň - Bolevec
    BASH - posílání příkazů ze scriptu na jiné zařízení skrze SSH
    Přečteno: 627×
    Ahoj,

    řeším tady takový problém. Chci si vytvořit script, který bude hlídat intenzitu signálu na anténě a v případě poklesu pod určitou hodnotu zajistit přepnutí portu na SW. Vyčítání signálu mi funguje. Podmínky mi fungují také, ale nefunguje mi předání příkazu do switche, jelikož se nejedná jen o jeden holý příkaz, ale výsledek dalšího spuštěného scriptu s určitým parametrem.

    Zde je příkaz, který se spouští:
    
    `/usr/bin/sshpass -p ${SWPW} ssh -o "StrictHostKeyChecking=no" ubnt@${SW} 'bash -s' ./ubnt.switch ${SWPW} ${PB} ${PM}`
    
    
    Ve scriptu "ubnt.switch" je sled příkazů oddělených enterem, kdy se předávají 3 parametry. A co se mi nedaří je, aby se výsledek scriptu ubnt.switch (všechny jeho skrze parametry vyplněné příkazy) předal skrze SSH do antény jednotlivě, oddělené enterem.

    Obsah scriptu ubnt.switch je:
    
    enable
    ${1}
    configure
    interface 0/${2}
    shutdown
    exit
    interface 0/${3}
    no shutdown
    exit
    
    
    Potřebuji, aby se tyto příkazy předaly do antény (již tedy správně vyplněné). Můžete mi poradit, jak postupovat? Děkuji :-)
    LinMuck, WinFuck :-P - pokud by mi někdo chtěl pomoct s prostorem na DropBoxu a sám získat 250MB, tak zde.

    Řešení dotazu:


    Odpovědi

    Petr Maleček avatar 18.6. 15:27 Petr Maleček | skóre: 28 | Plzeň - Bolevec
    Rozbalit Rozbalit vše Re: BASH - posílání příkazů ze scriptu na jiné zařízení skrze SSH
    V podstatě potřebuji "catnout" výsledek toho scriptu do antény. Samotný cat mi ale předané parametry nenahradí.
    LinMuck, WinFuck :-P - pokud by mi někdo chtěl pomoct s prostorem na DropBoxu a sám získat 250MB, tak zde.
    18.6. 15:48 GeorgeWH | skóre: 41
    Rozbalit Rozbalit vše Re: BASH - posílání příkazů ze scriptu na jiné zařízení skrze SSH
    Vygeneruj skript, nakopiruj ho na cielove zariadenia a tam ho pusti.

    A pouzivaj SSH kluce.
    Petr Maleček avatar 18.6. 16:02 Petr Maleček | skóre: 28 | Plzeň - Bolevec
    Rozbalit Rozbalit vše Re: BASH - posílání příkazů ze scriptu na jiné zařízení skrze SSH
    SSH klíče ještě přijdou na řadu, ale to teď není podstatné. Problém je i v tom, že na vzdálené zařízení nemohu zapisovat soubory.
    LinMuck, WinFuck :-P - pokud by mi někdo chtěl pomoct s prostorem na DropBoxu a sám získat 250MB, tak zde.
    18.6. 15:47 X
    Rozbalit Rozbalit vše Re: BASH - posílání příkazů ze scriptu na jiné zařízení skrze SSH
    Trochu to pro zacatek zjednodusim:
    /usr/bin/sshpass -p $SWPW ssh -o "StrictHostKeyChecking=no" ubnt@$SW bash ubnt.switch $SWPW $PB $PM
    Petr Maleček avatar 18.6. 16:01 Petr Maleček | skóre: 28 | Plzeň - Bolevec
    Rozbalit Rozbalit vše Re: BASH - posílání příkazů ze scriptu na jiné zařízení skrze SSH
    To mi vrací:
    ubnt.switch: line 3: configure: command not found
    ubnt.switch: line 4: interface: command not found
    ubnt.switch: line 5: shutdown: command not found
    
    Udělal jsem to tedy tak, že se nejdříve spustí script, který generuje ty příkazy a uloží je do souboru (už vyplněné) a tento soubor pak teprve předávám anténě:
    
    `/bin/bash ubnt.switch $SWPW $PB $PM > changes/change.$SW`
    `/usr/bin/sshpass -p $SWPW /usr/bin/ssh -o "StrictHostKeyChecking=no" ubnt@$SW 'bash -s' < ./changes/change.$SW`
    
    
    Bohužel stále tu mám výsledek:
    ./check-status: line 21: _____: command not found
    
    Což je právě řádek s příkazem začínajícím na sshpass. Tak teď nevím, jestli opravdu 'bash -s' < ./changes... způsobí předání všech těch příkazů do vzdáleného bashe, nebo spustí vzdálený bash a ty příkazy pak spouští lokálně (což by mi nedávalo smysl).
    LinMuck, WinFuck :-P - pokud by mi někdo chtěl pomoct s prostorem na DropBoxu a sám získat 250MB, tak zde.
    Petr Maleček avatar 18.6. 16:16 Petr Maleček | skóre: 28 | Plzeň - Bolevec
    Rozbalit Rozbalit vše Re: BASH - posílání příkazů ze scriptu na jiné zařízení skrze SSH
    Tak jsem zatím zjistil, že cokoliv za ... ubnt@X nevyvolá nic. Takže třeba ... ubnt@X 'help' způsobí jen přihlášení, ale spuštění příkazu help už ne.
    LinMuck, WinFuck :-P - pokud by mi někdo chtěl pomoct s prostorem na DropBoxu a sám získat 250MB, tak zde.
    Petr Maleček avatar 18.6. 16:29 Petr Maleček | skóre: 28 | Plzeň - Bolevec
    Rozbalit Rozbalit vše Re: BASH - posílání příkazů ze scriptu na jiné zařízení skrze SSH
    Tak nechápu, volání: /usr/bin/sshpass -p XXX ssh -o "StrictHostKeyChecking=no" -t ubnt@XXX help

    Výsledek:
    
      _____    _
     | ____|__| | __ _  ___          (c) 2010-2019
     |  _| / _  |/ _  |/ _ \         Ubiquiti Networks, Inc.
     | |__| (_| | (_| |  __/
     |_____\__._|\__. |\___|         https://www.ui.com
                 |___/
    
    Welcome to EdgeSwitch
    
    By logging in, accessing or using Ubiquiti Inc. (UI) products, you
    acknowledge that you have read and understood the Ubiquiti Licence
    Agreement (available in the WebUI and at https://www.ui.com/eula/)
    and agree to be bound by its terms.
    
    
    (hostname) >
    
    
    Takže si můžu psát příkazy jaké chci, ale do konzole se zjevně nedostávají. Měl se vypsat help, nevypsalo se nic.
    LinMuck, WinFuck :-P - pokud by mi někdo chtěl pomoct s prostorem na DropBoxu a sám získat 250MB, tak zde.
    18.6. 16:34
    Rozbalit Rozbalit vše Re: BASH - posílání příkazů ze scriptu na jiné zařízení skrze SSH
    A nemáš tam mít náhodou místo option -s option -c?
    Řešení 1× (Petr Maleček (tazatel))
    Petr Maleček avatar 18.6. 16:51 Petr Maleček | skóre: 28 | Plzeň - Bolevec
    Rozbalit Rozbalit vše Re: BASH - posílání příkazů ze scriptu na jiné zařízení skrze SSH
    To jsem také zkoušel a nic. Ale zajímavé je, že když udělám trochu prasárnu a udělám kombinaci s PHP, tak to funguje:

    shell_exec("sshpass -p " . $argv[2]." ssh -o \"StrictHostKeyChecking=no\" ubnt@" . $argv[1] . " 'bash -s' < changes/change." . $argv[1]);

    Tohle projde správně a udělá co má.
    LinMuck, WinFuck :-P - pokud by mi někdo chtěl pomoct s prostorem na DropBoxu a sám získat 250MB, tak zde.
    Petr Maleček avatar 18.6. 16:57 Petr Maleček | skóre: 28 | Plzeň - Bolevec
    Rozbalit Rozbalit vše Re: BASH - posílání příkazů ze scriptu na jiné zařízení skrze SSH
    Tak beru zpět, po vypsání výsledku jsem zjistil, že se to chová úplně stejně jako přímo z bashe.
    LinMuck, WinFuck :-P - pokud by mi někdo chtěl pomoct s prostorem na DropBoxu a sám získat 250MB, tak zde.
    Petr Maleček avatar 18.6. 17:04 Petr Maleček | skóre: 28 | Plzeň - Bolevec
    Rozbalit Rozbalit vše Re: BASH - posílání příkazů ze scriptu na jiné zařízení skrze SSH
    Tak ještě jednou odvolávám, co jsem odvolal :)) za pomocí PHP to funguje. Jen jsem si chybovou hlášku špatně spojil.
    LinMuck, WinFuck :-P - pokud by mi někdo chtěl pomoct s prostorem na DropBoxu a sám získat 250MB, tak zde.
    18.6. 17:08
    Rozbalit Rozbalit vše Re: BASH - posílání příkazů ze scriptu na jiné zařízení skrze SSH
    ubnt@${SW} 'bash -s' < ./ubnt.switch ${SWPW} ${PB} ${PM}

    Co ta šipka?
    Petr Maleček avatar 18.6. 18:10 Petr Maleček | skóre: 28 | Plzeň - Bolevec
    Rozbalit Rozbalit vše Re: BASH - posílání příkazů ze scriptu na jiné zařízení skrze SSH
    S tou to funguje (přes shell_exec()). Každopádně ani ta nehrála ve fungování žádnou roli :-(
    LinMuck, WinFuck :-P - pokud by mi někdo chtěl pomoct s prostorem na DropBoxu a sám získat 250MB, tak zde.
    18.6. 18:35
    Rozbalit Rozbalit vše Re: BASH - posílání příkazů ze scriptu na jiné zařízení skrze SSH
    No já jenom, že to tam v původním dotazu nemáš.
    Petr Maleček avatar 20.6. 19:13 Petr Maleček | skóre: 28 | Plzeň - Bolevec
    Rozbalit Rozbalit vše Re: BASH - posílání příkazů ze scriptu na jiné zařízení skrze SSH
    Jo, omlouvám se, jak už jsem to upravoval vícekrát, tak jsem nekopiroval původní formát.
    LinMuck, WinFuck :-P - pokud by mi někdo chtěl pomoct s prostorem na DropBoxu a sám získat 250MB, tak zde.
    21.6. 08:18 MM
    Rozbalit Rozbalit vše Re: BASH - posílání příkazů ze scriptu na jiné zařízení skrze SSH
    Nesouvisí to s PATH proměnnou? Co když do skriptu přidáš kompletní cestu k příkazům? Pokud příkazy nemůže najít, mohlo by to pomoct (myšleno místo configure třeba /usr/bin/configure, nebo kde ta binárka/skript na tom stroji leží).
    7.7. 21:09 Zdenek 'Mst. Spider' Sedlak | skóre: 38 | blog: xMstSpider
    Rozbalit Rozbalit vše Re: BASH - posílání příkazů ze scriptu na jiné zařízení skrze SSH
    Nemuze byt problem v tom sshpass? Co udela obycejne ssh s rucne zadanym heslem?
    8.7. 16:19 .
    Rozbalit Rozbalit vše Re: BASH - posílání příkazů ze scriptu na jiné zařízení skrze SSH
    Zadáváš příkaz, který se má spustit na serveru. Možná to vůbec nechápu, ale asi tam nechceš spouštět bash a ne na soubor, který je u tebe na lokálu.

    Jestli chceš ty příkazy poslat, jako bys je ťukal po přihlášení ručně, tak je do ssh předáš na standardním vstupu. Třeba něco takového:
    sshpass ... ssh ... user@host <<_EOF_ # promenne se nejdrive nahradi jejich hodnotou
    enable
    ${SWPW}
    configure
    interface 0/${PB}
    shutdown
    exit
    interface 0/${PM}
    no shutdown
    exit
    _EOF_
    
    8.7. 23:05 j
    Rozbalit Rozbalit vše Re: BASH - posílání příkazů ze scriptu na jiné zařízení skrze SSH
    Hele a snmp znas? Protoze to co tu vymejslis je naproto typicka vec ktera se resi prave tim. A kazda aspon trochu normalni sitova vec to umi. Tim myslim jak si cist hodnoty prakticky cehokoli, tak menit nastaveni.

    BTW: "Problém je i v tom, že na vzdálené zařízení nemohu zapisovat soubory" ??? Vazne? Tam neni temp?

    ---

    Dete s tim guuglem dopice!

    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.