Der Inhalt dieses Artikels besteht darin, die Methode zur Verwendung von Screen zur Verwaltung von Remote-Sitzungen vorzustellen. Ich hoffe, dass er für Freunde hilfreich ist.
Bei der lokalen Entwicklung muss ich oft Remote-Verbindungen verwenden, um eine Verbindung zu Linux-Servern herzustellen. Zu Beginn habe ich mehrere SSH-Fenster geöffnet, als ich mehrere Remotes hatte. Diese Methode ist sehr primitiv und direkt, aber sie leidet immer Die Eingabe eines Passworts reicht aus. Selbst wenn Sie SSH verwenden, um sich ohne Passwort anzumelden, werden Sie das Gefühl haben, dass die Eingabe von SSH-Befehlen überhaupt nicht schnell geht. Wenn Sie außerdem zu viele Fenster öffnen, wird es verwirrend und schwierig zu verwalten. In diesem Fall gibt es viele Tools unter Linux. Lassen Sie uns heute etwas über screen
Tools lernen.
Bei der Einführung des screen
-Tools wollen wir zunächst besprechen, warum wir nach dem Herstellen einer Verbindung zum Server beim Ausführen einer Langzeitaufgabe das Remote-Verbindungsfenster schließen und die Aufgabe abgebrochen wird.
Unter Linux/Unix gibt es folgende Konzepte:
Prozessgruppe: Eine Sammlung von einem oder mehreren Prozessen. Jede Prozessgruppe hat eine eindeutige Prozessgruppen-ID.
Sitzung: Eine oder mehrere Prozessgruppen haben einen eindeutigen Sitzungsleiter , und die Sitzungs-ID ist die Leiterprozess-ID;
Die Sitzung kann ein separates Sitzungsterminal und das Steuerterminal haben. Der erste Prozess der verbundenen Sitzung wird als Steuerungsprozess bezeichnet Der Prozess, der aktuell mit dem Terminal interagiert, wird als Vordergrundprozessgruppe bezeichnet, und die übrigen Prozessgruppen werden als Hintergrundprozessgruppe bezeichnet.
Tool POSIX.1-Definition:
Die Standardaktion des Auflegesignals (SIGHUP) ist das Beenden des Programms
Wenn die Terminalschnittstelle erkennt, dass die Netzwerkverbindung getrennt ist, sendet sie das SIGHUP-Signal an den Steuerungsprozess (den ersten Prozess der Sitzung);
Wenn der erste Prozess der Sitzung beendet wird, wird dieses Signal an die Vordergrundprozessgruppe der Sitzung gesendet ping
Suchen Sie in einem anderen Terminalfenster die Prozess-ID von als 22132 und die ID des übergeordneten Prozesses ist 21803. Melden Sie sich also bei zsh an:
ping
Mit können Sie sehen, dass sich die Anmeldung bei zsh (PID 21803) und Ping in derselben Sitzung befinden, sodass die Prozessgruppen-PGID 21803 ist Die Prozessgruppen-PGID von Ping ist 22132, was die Vordergrundprozessgruppe ist.
ps -xj
Zu diesem Zeitpunkt schlossen wir das erste SSH-Remote-Fenster und sahen in einem anderen Fenster, dass der Ping-Prozess abgebrochen wurde:
Dies zeigt, dass bei der Ausführung einer zeitaufwändigen Aufgabe beim Schließen des Fensters der Aufgabenprozess abgebrochen wird und nicht wie erwartet im Hintergrund weiter ausgeführt wird.
Bildschirm verwenden1. Wenn Sie den Befehl screen
screen
eingegeben. Im Programm können Sie in diesem Fenster nach Belieben Befehle ausführen. Wenn Sie das Fenster verlassen möchten, geben Sie den Befehl ein.
2. Wenn Sie ein neues Fenster öffnen möchten, um eine andere Aufgabe auszuführen, können Sie Folgendes ausführen: screen
// 方法1 按键盘Ctrl+a +c, 会心打开一个screen窗口 // 方法2 screen 需要执行的任务的命令,比如: screen ping www.baidu.com
screen
3. Mehrere exit
Fensterwechsel方法1 键盘Ctrl+a +[0..9] 方法2 键盘Ctrl+a +n, 下一个screen窗口 键盘Ctrl+a +p, 上一个screen窗口
Weitere Befehle sind verfügbar Schauen Sie sich das Bild unten an:
screen
Screen ist ein Fenstermanager, der ein physisches Terminal zwischen mehreren Prozessen multiplexen kann. Screen verfügt auch über das Sitzungskonzept. Benutzer können in einer Bildschirmsitzung mehrere Bildschirmfenster erstellen, und zwar wie bei der Bedienung einer echten SSH-Verbindung Fenster.
Empfohlene verwandte Video-Tutorials: „Linux-Tutorial“
Das Obige ist der gesamte Inhalt dieses Artikels, ich hoffe, dass er für das Lernen aller hilfreich sein wird. Weitere spannende Inhalte finden Sie in den entsprechenden Tutorial-Kolumnen auf der chinesischen PHP-Website! ! !
Das obige ist der detaillierte Inhalt vonWie verwende ich Screen zum Verwalten von Remote-Sitzungen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!