Shell-Skript, das über SSH mehrere andere Maschinen berührt?

Shell-Skript, das über SSH mehrere andere Maschinen berührt?

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.

verwandte Informationen