Hallo liebe Leute. Ich habe da gerade ein Projekt mit 6 Servern. Und eigentlich öffne ich mindestens einmal täglich 6 Terminal Fenster um mich darinne über ssh mit den Servern zu verbinden. Gibt es eine Möglichkeit per Script 6 Terminal Fenster zu öffnen und drinnen auch noch einen Befehl aufzurufen? System ist Ubuntu 16
Probiere mal cssh ("cluster SSH", sudo apt-get install clusterssh). Dem übergibst du einfach n Server, und es werden n xterms aufgemacht und ein kleines Eingabefenster. Du kannst jedes xterm einzeln bedienen, aber auch über das Eingabefenster Input an alle gleichzeitig schicken.
:
Bearbeitet durch User
Ich schlage dafür "terminator" [1] vor. Da kannst du dir mit diversen Splitscreen eine Profil anlegen und das auch beim Starten immer wieder aufrufen [2]. [1] https://linux.die.net/man/1/terminator [2] https://askubuntu.com/questions/317255/how-can-i-open-terminator-with-mutiple-windows-already-open
Schau Dir mal Systeme wie Ansible an, damit kann man die Konfiguration der Server automatisieren: * 6 jungfräuliche leere Debian aufgesetzt * Ansible laufen lassen * alles fix und fertig installiert und konfiguriert Änderungen in der Konfiguration auf den Servern erforderlich? * Ansible scripte entsprechend anpassen * Ansible nochmal laufen lassen * fertig
Noch ein Vorschlag: tmux (https://wiki.ubuntuusers.de/tmux/) als Terminal-Multiplexer und https://github.com/tmux-plugins/tmux-resurrect ("Restore tmux environment after system restart.") Auf einen "Knopfdruck" wird der verher gesicherte Zustand von tmux wieder hergestellt.
Wenn Deine Anwendung sich auf 6 Server verteilt und es erfordert auf allen 6 Servern tagelang manuell herumzukonfigurieren bis sie installiert ist und läuft würde ich stattdessen auch mal einen Blick auf Docker werfen, das spart unendlich viel Zeit und Nerven und sorgt für präzise Wiederholbarkeit.
Wie man einen Terminalemulator started und darin einen Befehl ausführen lässt steht in der Manpage des Terminalemulators. Meistens ist es die -e option. Verwendet Ubuntu gnome-terminal? Dann wäre das 'gnome-terminal -e "commando"'. 6 davon wären dann:
1 | gnome-terminal -e "command" & |
2 | gnome-terminal -e "command" & |
3 | gnome-terminal -e "command" & |
4 | gnome-terminal -e "command" & |
5 | gnome-terminal -e "command" & |
6 | gnome-terminal -e "command" & |
Wenn sich das aber sowieso täglich wiederholt, eventuell sollte man das dann einfach auf dem Servern automatisieren, also von einem cronjob erledigen lassen und sich das Ergebnis per Mail zukommen lassen.
tmux, mosh, etc. Gibt so viel Fancy Zeug. Man muss nicht immer mit der Holzhammermethode vorgehen.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.