Effiziente Verwaltung langlaufender Aufgaben in Ubuntu mit “screen” und SSH

In diesem Blogpost erfahren Sie, wie Sie “screen” verwenden können, um lange laufende Aufgaben auf einem Ubuntu-System zu verwalten und Ihre SSH-Verbindung zu trennen, ohne dass die Aufgaben unterbrochen werden. Wir werden auch diskutieren, wie diese Technik bei der Verwaltung von WordPress-Installationen hilfreich sein kann, insbesondere bei der Durchführung zeitaufwändiger Aufgaben wie dem Aufräumen unbenutzter Medien.

Installation und Benutzung von “screen”

Screen” ist ein praktisches Tool, mit dem Sie virtuelle Terminalsitzungen erstellen können, die auch dann weiterlaufen, wenn Sie Ihre SSH-Verbindung trennen. Hier ist, wie man “screen” installiert und benutzt:

Installieren von “screen”:

Öffnen Sie Ihre SSH-Sitzung und geben Sie den Befehl

sudo apt-get install screen

Damit wird “screen” auf Ihrem Ubuntu-System installiert.

Starten einer “screen”-Sitzung:

Geben Sie den Befehl ein:

screen

Dies startet eine neue “screen”-Sitzung und Sie sehen ein virtuelles Terminal.

Innerhalb von “screen” einen Befehl ausführen:

Geben Sie den gewünschten Befehl ein und drücken Sie Enter. Beispiel:

wp media-cleaner scan

Der Befehl wird im Hintergrund ausgeführt und Sie können das Terminalfenster schließen oder die SSH-Verbindung trennen, ohne dass der Befehl beendet wird.

Verwaltung von “screen”-Sitzungen

Screen” bietet auch die Möglichkeit, mehrere Sitzungen zu verwalten und zwischen ihnen zu wechseln. Hier einige nützliche Befehle:

Überprüfen der laufenden “Screen”-Sitzungen:

screen -ls

Dadurch erhalten Sie eine Liste der laufenden “screen”-Sitzungen mit ihren IDs.

Zurückkehren zu einer “screen”-Sitzung:

Geben Sie den Befehl ein, gefolgt von der Sitzungs-ID:

screen -r session_id

Damit kehren Sie zu der von Ihnen gewünschten Bildschirmsitzung zurück und können den Fortschritt des Auftrags überprüfen oder mit ihm interagieren.

Trennen der “screen”-Sitzung:

Verwenden Sie die Tastenkombination “Strg+A” gefolgt von “Strg+D”. Dadurch werden Sie aus der Bildschirmsitzung herausgenommen und können Ihre SSH-Verbindung trennen, während der Befehl im Hintergrund weiterläuft.

Anwendung bei WordPress-Installationen

Bei der Verwaltung von WordPress-Installationen kann es zu langlaufenden Aufgaben kommen, die viel Zeit in Anspruch nehmen und die SSH-Verbindung blockieren können. Ein Beispiel hierfür ist die Verwendung des Plugins Media Cleaner Pro. Dieses Plugin durchsucht die Medienbibliothek nach unbenutzten Dateien und ermöglicht deren Löschung.

In einem konkreten Fall hatte ein Kunde mehr als 200.000 Dateien in seiner Medienbibliothek, die er nicht mehr benötigte. Das Suchen und Löschen dieser Dateien kann sehr zeitaufwendig sein. Um nicht zu sagen: unmöglich.

Hier kommt “screen” ins Spiel. Durch die Verwendung von “screen” können Sie den Scanvorgang mit “Media Cleaner Pro” in einer “screen”-Sitzung starten und dann Ihre SSH-Verbindung trennen. Der Scanvorgang läuft dann im Hintergrund weiter, auch wenn Sie nicht mehr mit dem Server verbunden sind.

Wenn Sie zu einem späteren Zeitpunkt wieder eine SSH-Verbindung zu Ihrem Server herstellen, können Sie die “screen”-Sitzung wiederherstellen und den Fortschritt des Scans überprüfen. Auf diese Weise können Sie langwierige Aufgaben erledigen, ohne Ihre SSH-Sitzung die ganze Zeit offen halten zu müssen.

Zusammenfassung

Die Verwendung von “screen” in Verbindung mit SSH bietet eine praktische Möglichkeit, langlaufende Aufgaben auf einem Ubuntu-System zu verwalten. Durch das Trennen der SSH-Verbindung bleiben Ihre Aufgaben im Hintergrund aktiv und laufen weiter, auch wenn Sie nicht mit dem Server verbunden sind. Dies ist besonders nützlich bei der Verwaltung von WordPress-Installationen, wenn zeitaufwändige Aufgaben wie das Aufräumen unbenutzter Medien durchgeführt werden müssen. Mit “screen” können Sie solche Aufgaben starten, die SSH-Verbindung trennen und später zur “screen”-Sitzung zurückkehren, um den Fortschritt zu überprüfen.

Hinweis: Bitte beachten Sie, dass bei der Verwendung von “screen” Sicherheitsaspekte zu berücksichtigen sind, insbesondere wenn Sie das Tool auf einem öffentlich zugänglichen Server verwenden. Stellen Sie sicher, dass angemessene Sicherheitsvorkehrungen getroffen werden, um unbefugten Zugriff auf Ihre “screen”-Sitzungen zu verhindern.