![Shell-Skript, das über SSH mehrere andere Maschinen berührt?](https://rvso.com/image/1259376/Shell-Skript%2C%20das%20%C3%BCber%20SSH%20mehrere%20andere%20Maschinen%20ber%C3%BChrt%3F.png)
Ich habe eine Liste mit etwa 90 Linux-Rechnern.
Diese werden in einer Datei als Host, USR, PW gespeichert.
Gibt es eine Möglichkeit, diese Liste zu lesen und dann eine Verbindung zu jedem Host herzustellen und die Befehle X, Y, Z auszuführen?
In der Vergangenheit habe ich jede Maschine einzeln angefasst und die Befehle einfach manuell ausgeführt.
Das dauert EWIG. Es muss einen besseren Weg geben.
Antwort1
Der SSH-Batchmodus sollte funktionieren. Hier besprochen:http://www.thegeekstuff.com/2009/10/how-to-execute-ssh-and-scp-in-batch-mode-only-when-passwordless-login-is-enabled/
ssh -o "BatchMode yes" ramesh@remote-host who
Um Benutzernamen und Passwörter zu verwenden, müssen Sie möglicherweise etwas mit expect arbeiten. Für den Batch-Modus ist die Verwendung von Pre-Shared Keys erforderlich
Antwort2
Antwort3
Antwort4
Schauen Sie sich anMCollectivevon Puppet Labs und dem PluginShellcmd-Agent.