Cron-Job was Befehle über Putty ausführt?

Weckmann

Lt. Commander
Registriert
Okt. 2013
Beiträge
1.163
Hallo,

ich würde gerne auf meinem Linux Server ein Cron-Job laufen lassen, was im 2Std. Takt mehrer Putty Befehle ausführt. Hat jemand eine Anleitung oder kann mir dabei helfen?
 
Hi,

was genau sind "putty befehle"?

VG,
Mad
 
  • Gefällt mir
Reaktionen: Old Knitterhemd und Mar1u5
Meinst du mit "Putty Befehle" Befehlseingaben, die du in die Shell tippst ?
Sonst
Code:
crontab -e
 
Ich nehme an, dass du irgendwelche Befehle über ssh/seriell automatisiert ausführen lassen willst, was du aktuell manuell mit putty machst?
Dann würde ich das erstmal in ein Shell-Skript packen, das von der Kommandozeile ausgeführt das gleiche macht - danach musst du das Skript nur noch in die Crontab stecken
 
statt putty einfach "ssh" nehmen: ssh user@host mein_toller_befehl

vorher auf dem zielrechner den public-key des ausgangsrechners in die ~/.ssh/authorized_keys aufnehmen damit es nicht-interaktiv (d.h. ohne passwort) funktioniert.
 
Mach dir ein sh Script ausführbar und trage es in die crontab ein.
Anleitung siehe google crontab oder erstellen eines sh scripts
 
Der Titel des Threads ist ein Paradebeispiel für ein XY-Problem.

Was du eigentlich willst sofern ich es richtig verstanden habe: Du willst automatisiert etwas ausführen, dass eine Interaktion erfordert.
Was du schreibst was du willst: Zeitgesteuert Befehle über Putty ausführen.

Putty ist ein Hilfsmittel um u.a. eine SSH Verbindung aufzubauen. Windows 10 hat einen SSH-Client inzwischen als optionales Feature, Putty oder dessen Alternativen sind daher austauschbar und unter Linux braucht man putty sowieso nicht da es einen SSH-Client schon ewig gibt...

Für eine Interaktion mit anderen Komponenten bietet sich der Befehl expect an.
Du schreibst deinen ersten Schritt und dann definierst du mit expect was als nächstes in der Shell erscheinen soll. Wenn das erwartete, sprich expected, erscheint, schreibst den zweiten Schritt hin und so weiter. Damit kann man Dinge automatisieren, die sonst eine manuelle Eingabe erfordern und die nacheinander erfolgen müssen und bei denen nicht immer sofort eine Rückmeldung kommt.

Aus der Praxis ist z.B. die Konfiguration von Switchports so ein Paradebeispiel. Man definiert vorher als Variablen die IP des Switches, das jeweilige Interface und was man konfigurieren will, z.B. die VLAN-ID oder Description. Dann ruft man sein Skript auf und das verbindet sich zum Switch, ruft den config Modus auf, wählt das Interface, setzt die Description, setzt die VLAN-ID, speichert alles ab und trennt die Verbindung wieder. Manche Switche haben hier und da eine Gedenksekunde bis z.B. der config Modus aktiv ist.

Wie dem auch sei: Schreib dir ein Script was den Prozess/Ablauf per expect durch führt, speichere das Script, mach es ausführbar und rufe das Script dann per crontab oder eben systemd-timer auf.

95% der Arbeit wird es sein, das Script zu schreiben. Der Aufruf per cron ist dann schnell erledigt.
 
  • Gefällt mir
Reaktionen: Madman1209
Zurück
Oben