Sie möchten mehrere virtuelle Bildschirmsitzungen von einer einzigen Terminalkonsole aus ausführen? Oder vermeiden Sie Verbindungsabbrüche beim Abmelden von der Konsole über SSH? Wenn ja, begrüßen Sie den GNU Screen Terminal Multiplexer noch heute in Ihrem Toolkit.
Verwenden des GNU-Anzeigedienstprogramms
Das Dienstprogramm GNU Screen für Linux ist ein vielseitiger Bildschirm-Multiplexer, mit dem Sie mehrere virtuelle Bildschirmsitzungen starten können (Betrachten Sie sie als zusätzliche Konsolenfenster) aus Ihrer aktuellen Terminalsitzung.
Der Einstieg ist einfach. Sie können das GNU Screen-Tool installieren mit sudo apt install screen
in der Befehlszeile Ihres Terminals:
Wenn Sie ein RedHat-basiertes Betriebssystem verwenden / Drehzahl, Ersetze `apt` durch `yum` im obigen Befehl.
So öffnen Sie eine neue virtuelle Konsole, jetzt kannst du einfach tippen screen
und drücke Enter, die Ihnen einen Willkommensbildschirm präsentiert:
Drücken Sie einfach die Leertaste oder gehen Sie zurück, um den Willkommensbildschirm zu schließen. Die Eingabeaufforderung wird angezeigt, um zurückzukehren, aber in Wirklichkeit, Sie befinden sich jetzt in einer virtuellen Bildschirmsitzung. Betrachten Sie es als eine alternative Terminalsitzung, läuft innerhalb der obigen Terminalsitzung.
Eines der besten Dinge am GNU-Bildschirm ist, dass selbst wenn die Hauptterminalsitzung / Eltern werden irgendwie scheitern oder abstürzen (als Beispiel, aufgrund einer verlorenen Netzwerkverbindung), und selbst wenn die Hauptterminalsitzung geschlossen oder beendet wird / Vati, this Die Bildschirmsitzung bleibt aktiv und läuft!
Es ist einfach zu überprüfen, ob wir uns gerade in einer Bildschirmsitzung befinden oder nicht:
Diese if-Anweisung testet, ob die $STY
die Variable ist gesetzt oder nicht. Wenn er $STY
Umgebungsvariable ist gesetzt, Das ist also eine Bildschirmsitzung.
Dann, Wie kommen wir zurück zu unserer Hauptsitzung / Hauptterminal? Dies kann mit einer Tastaturkombination erfolgen, die der GNU-Bildschirm im Hintergrund hört. Drücken Sie einfach STRG + A> STRG + D. Es spielt keine Rolle, ob Sie dabei die STRG-Taste loslassen oder nicht.
Sie sehen etwas Äquivalentes zu dieser Ausgabe:
Dies sagt uns auch, dass wir nur die Verbindung zur virtuellen GNU-Bildschirmsitzung getrennt haben; es ist noch nicht vorbei und, wenn wir wollen, wir können uns wieder mit ihr verbinden. Auch wenn aus irgendeinem Grund die Hauptsitzung / Vater hätte geschlossen, die virtuelle Bildschirmsitzung wäre nicht beendet und wir können uns wieder damit verbinden.
So verbinden Sie sich wieder mit der Sitzung, wir können einen einfachen Befehl ausgeben:
Wenn Sie diesen Befehl bestätigen, kehren wir einfach zu der virtuellen Bildschirmsitzung zurück, die wir ausgeführt haben. Beachten Sie, dass wir die entsprechende Prozedur-ID verwenden (wie berichtet, als wir uns von der Bildschirmsitzung trennten) um sich wieder mit der virtuellen Bildschirmsitzung zu verbinden. Dies klärt sofort weiter, wie wir eine unbestimmte Anzahl von Bildschirmsitzungen initiieren können (obwohl jeder eine bestimmte Menge an Ressourcen verbraucht) und verbinden Sie sich mit dem, den wir möchten, indem Sie die screen -d -r
Befehl.
Wir können mehr über die Alternativen, die wir für diesen Befehl verwenden, im Online-Handbuch des Bildschirms lesen:
Für eine umfassendere Übersicht über das Display und seine vielen Funktionalitäten, du kannst den ... benutzen man screen
Befehl:
Wenn wir eine Liste der Bildschirmsitzungen sehen möchten, die derzeit auf dem Computer ausgeführt werden, wir können a ausgeben screen -list
Befehl:
Beachten Sie, wie die Sitzung als "Getrennt" gemeldet wird’ o 'Angehängt’ je nachdem ob du noch irgendwo mit ihr verbunden bist oder nicht.
Manchmal, Vielleicht möchten Sie innerhalb einer Bildschirmsitzung zurückscrollen, als Beispiel, wenn mehr Ausgabezeilen generiert wurden als die Anzahl der Zeilen, die in Ihrer Terminalfenstergröße aktiviert ist. Man würde erwarten, dass dies so einfach ist, wie mit der Maus nach oben und unten zu scrollen, ist aber nicht.
Stattdessen, Sie können eine STRG-Tastaturkombination verwenden + ESC zum Aktivieren des Kopiermodus (obwohl eine echte Kopie nicht erstellt wird, wenn Sie nur scrollen), und jetzt deine maus, sowie die Standard-Cursor-Auf-Tasten / unten wird richtig funktionieren. Wenn ich mit der Suche fertig bin (und / oder kopieren wenn du willst, als Beispiel, mit Mausselektion und Kopieren wie gewohnt), Drücken Sie einfach die ESC-Taste erneut, um den Kopiermodus abzubrechen.
Manchmal, Ein Programm, das in einem Bildschirm ausgeführt wird, kann abstürzen, als Beispiel, aufgrund eines Programmfehlers oder unzureichender Speicher- oder Festplattensituation. Wenn das passiert, Der Bildschirm wird als "Dead" angezeigt’ bei screen -list
Produktion:
An so einem Punkt, Wir können die tote Bildschirmsitzung entfernen, indem wir a . ausgeben screen -wipe
Befehl:
In diesem Beitrag, Wir untersuchen, wie man das GNU-Display-Dienstprogramm installiert, wie man damit eine neue virtuelle Bildschirmsitzung startet und wie man eine bestehende Bildschirmsitzung trennt und wieder beitritt. Abschließend, wir werden sehen, wie man innerhalb von Bildschirmsitzungen navigiert, sowie wie man mit Dead-Screen-Sessions umgeht.