Ahojte, neviete poradit sposoby ako vzdialene spustat skripty alebo vykonavat prikazy cez ssh na remote servery. Standardne nato pouzivam expect ale pride mi dost tazkopadny a mam problemi s error stavmi a ich odchytavanim. Ako napr. skript na vytvaranie|mazanie uzivatelov pripadne ine admin operacie. Dane riesenie by malo byt funkcne pre Linux aj Unix systemy.
Sposoby vykonavania prikazov cez ssh
Pre pridávanie komentárov sa musíte prihlásiť.
hmmm odbornik... a toho ssh-agenta si si uz rozbehal...?
1) Vygeneruj ssh kluce cez ssh-keygen
2) Verejny kluc nakopci na servre cez ssh-copy-id
3) Testni ci sa vies prihlasit cez ssh na server bez hesla.
a potom uz mozes pisat prikazy, ktore chces spustat.
Napr.
ssh user@masina "command"
Popr.
ssh user@masina 'bash' << EOF
command1
command2
command3
EOF
Pre spustenie rovnakeho commandu na viac servroch
for i in server1 server2; do ssh user@${i} "command"; done
Ospravedlnujem sa evidentne som pisal rychlejsie ako premyslal. Myslim ze toto by mi mohlo pomoct. Dakujem.
Ansible ;-)
Nie nemal som chut sa s nim vcera jedovat, bude musiet pockat na vikend :D
Dakujem za strucny prehlad ako nato ale skor mi islo vykonavanie cez skript na danom servery preto som v uvode pisal expect. Na ssh sa pripojit viem a spravit to manualne ale hladam skor moznosti ako to riesit cez skript. Expect som skusal ale niesom s tym uplne spokojny (na komplikovanejsie veci mi pride narocny) tak ze ci neexistuje nieco ine aj?
Pridávanie užívateľov zvládneš aj v neinteraktívnom móde, takže program expect nepotrebuješ. A ako spúšťať neinteraktíve skripty ti už bolo povedané.
puppet je cesta ..