Kategorien
Software

PuTTY (Secure-Shell-Programm)

Für bestimmte Aufgaben, die insbesondere für fortgeschrittene Word­Press-Be­nut­zer interessant sind, reichen die Funktionen von Word­Press selbst nicht aus, um Dateien auf dem Webserver zu bearbeiten, zu löschen oder zu ergänzen. Schon im Rahmen der Installation haben wir alle notwendigen Word­Press-Da­tei­en mit einem FTP-Pro­gramm auf den Speicherplatz des Webservers geschoben. Nun gibt es aber weitere Aufgaben, die sich selbst mit einem FTP-Pro­gramm nicht lösen lassen.

Für solche Spezialitäten gibt es sogenannte Secure-Shell-Pro­gram­me wie PuTTY, die ebenfalls eine Verbindung zwischen heimischen PC und dem Webserver aufbauen. Solche SSH-Pro­gram­me besitzen jedoch gegenüber FTP-Pro­gram­men zusätzliche Möglichkeiten. Eine dieser Möglichkeiten stelle ich in diesem Beitrag in den Vordergrund.

PuTTY Logo
PuTTY Logo

Am weitesten verbreitet ist das Secure-Shell-Pro­gramm PuTTY, der Klassiker unter den Terminalsoftwareangeboten. Das Programm wurde ursprünglich für Windows geschrieben, inzwischen jedoch auf mehrere andere Betriebssystemplattformen (Linux, macOS) portiert. Der Name klingt nach Abkürzung, hat allerdings keine überlieferte Bedeutung. Lediglich „TTY“ wurde früher als Kürzel für „Teletype“ (Fernschreiber der Teletyp Corporation) verwendet. Entwickelt und gepflegt wurde PuTTY von dem englischen Programmierer Simon Tatham, die erste Version wurde 1998 veröffentlicht.

PuTTY Screenshot
PuTTY Screenshot

Unschwer zu erkennen: PuTTY ist ein textorientiertes Kommandowerkzeug, das an die ersten Personal Computer erinnert, noch bevor es grafische Benutzerorberflächen wie Windows gab.

Um sich mit einem Server zu verbinden, benötigt man Angaben, die man von seinem Webhoster bekommt. Es sind die gleichen Daten wie für das FTP-Programm:

  • Die Internetadresse des Webservers,
  • den Namen des FTP-Be­nut­zers auf diesem Webserver und
  • dessen Passwort.

Nach erfolgreicher Anmeldung landet man im Kommandomodus auf dem Startverzeichnis des eigenen Webservers und könnte dort verschiedene Kommandos absetzen.
(Zum Beispiel dir, um eine Dateiliste angezeigt zu bekommen, oder cd um in ein Unterverzeichnis zu springen. Aber darum soll es in diesem Beispiel nicht gehen.)

Crontab – Tabelle der zeitgesteuerten Hintergrundaufgaben

In einem nicht über das FTP-Pro­gramm zugänglichen Verzeichnis liegt eine Datei mit der Bezeichnung Crontab. In dieser Datei sind zeilenweise alle Hintergrundaufgaben aufgelistet, die der Webserver automatisch abarbeiten soll.

Diese Datei kann man sich im Kommandomodus von PuTTY mit dem Befehl crontab -l anzeigen lassen. Will man die Cron­tab-Ta­bel­le bearbeiten, gibt man den Befehl crontab -e ein.

Danach wird die Bedienung ziemlich speziell. Man befindet sich nämlich im Kommandomodus eines historischen Dateieditors namens vi. Die Bedienung dieses Texteditors hat nichts mit modernen Werkzeugen zu tun, wie ich sie in einem separaten Beitrag vorgestellt habe. Doch Du kommst nicht umhin, Dich mit den wichtigsten Bedienungskommandos von vi vertraut zu machen, wenn Du Cronjobs auf Deinem Webserver einrichten möchtest.

Liste der wichtigsten vi-Kommandos

Der vi-Editor unterscheidet zwischen drei Bedienungsmodi:

  1. Texteingabemodus
  2. Befehlsmodus
  3. Ex-Modus

Der vi startet im Befehlsmodus. Das bedeutet, dass jeder Tastendruck ein bestimmtes Kommando ausführt. Vorsicht also beim Berühren der Tatstatur!

x (aktuelles Zeichen löschen)
dd (aktuelle Zeile löschen)
1Y (aktuelle Zeile in den Zwischenspeicher kopieren)
p (Text aus dem Zwischenspeicher nach aktueller Zeile einfügen)
i (in den Texteingabemodus wechseln)

ZZ (speichern und vi-Editor verlassen)

Wie Du siehst, wechselt man mit dem Kommando i in den Texteingabemodus. Es gibt noch weitere Kommandos, mit denen man aus dem Befehlsmodus in den Texteingabemodus wechseln kann: o fügt eine leere Zeile nach der aktuellen ein, und O eine leere Zeile vor der aktuellen.

Will man den Texteingabemodus beenden und wieder in den Kommandomodus zurückkehren, drückt man die ESC-Taste.

Der Ex-Modus wird aus dem Befehlsmodus mit dem :-Zeichen gestartet. Danach werden alle weiteren Zeichen ganz unten auf dem Bildschirm angezeigt. Der Ex-Modus dient zum Verlassen des vi-Editors:

:wq (speichern und verlassen, identisch mit ZZ)
:q! (verlassen, aber die Änderungen nicht speichern)

Hast Du den vi-Editor verlassen, befindest Du Dich wieder im Kommandomodus von PuTTY. Du könntest Dir jetzt beispielsweise mit crontab -l anzeigen lassen, wie Deine Tabelle der Hintergrundaufgaben nach allen Änderungen tatsächlich aussieht. Nur um sicher zu gehen.

Wenn Du fertig bist, beendest Du die Verbindung zu Deinem Webserver durch Eingabe von exit in der Kommandozeile.

***

Eine vollständige Liste aller vi-Kom­man­dos findest Du zum Beispiel bei Erwin Hoffmann unter https://www.fehcom.de/pub/viref.pdf.

Fazit

Mit Hilfe von PuTTY und dem vi-Editor kann man also Einträge in die Datei Crontab des Webservers erzeugen oder bearbeiten. Diese Einträge sorgen dafür, dass ohne weiteres Zutun Hintergrundaufgaben nach einem bestimmten Zeitschema ausgeführt werden, also täglich, wöchentlich, monatlich oder jährlich.

Wie man solche Hintergrundeinträge verfasst, erkläre ich in einem separaten Beitrag, aus dem ich die Bedienungsanleitung für PuTTY und den vi heraushalten wollte und deshalb hierher ausgelagert habe.

Von Ulf Brossmann

Betreiber von und Autor der Beiträge auf WordPress fassbar. Eine Kurzbiografie von Ulf findest Du am unteren Ende der Seite über diese Website. Hier folgen nun alle Artikel, die Ulf bisher verfasst hat, in umgekehrt chronologischer Reihenfolge, also der neuste zuoberst:

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert