GNU/Linux >> LINUX-Kenntnisse >  >> Linux

So starten Sie die Bildschirmsitzung unter Linux beim Anmelden automatisch

Vor ein paar Tagen haben wir gesehen, wie man eine Tmux-Sitzung automatisch startet wenn Sie sich entweder lokal oder remote über SSH bei einem Linux-System anmelden. Heute werden wir sehen, wie man Screen automatisch startet Sitzung unter Linux, wenn Sie sich anmelden. Das automatische Starten von Bildschirmsitzungen ist sehr hilfreich, wenn Sie einen lang andauernden Prozess über SSH ausführen. Wenn Sie aus irgendeinem Grund die Netzwerkverbindung verloren haben, wird der Prozess innerhalb der Screen-Sitzung im Remote-System weiter ausgeführt und Sie können sich erneut damit verbinden, wenn das Netzwerk wieder online ist.

Bildschirmsitzung unter Linux beim Anmelden automatisch starten

Um die Bildschirmsitzung unter Linux automatisch zu starten, bearbeiten Sie das ~/.bash_profile Ihres Linux-Systems oder ~/.bashrc Datei:

$ nano ~/.bash_profile

Wenn die obige Datei nicht verfügbar ist, erstellen Sie sie einfach.

Und fügen Sie die folgenden Zeilen hinzu:

if [[ -z "$STY" ]]; then
   screen -xRR default
fi

Hier haben wir -x verwendet Flag, das an eine nicht getrennte Bildschirmsitzung angehängt werden soll. Und die -RR flag versucht, die jüngste (in Bezug auf die Erstellungszeit) getrennte Bildschirmsitzung fortzusetzen, die es findet.

Hinweis: Wenn Sie die Zsh-Shell verwenden, fügen Sie die obigen Zeilen in ~/.zshrc hinzu Datei.

Speichern und schließen Sie die Datei. Melden Sie sich vom System ab und wieder an. Sie landen in einer neuen Bildschirmsitzung mit dem Namen ‘default’ .

Starten Sie nun einen beliebigen Prozess innerhalb der Bildschirmsitzung und trennen Sie ihn davon, indem Sie Strg+a drücken gefolgt von d . Der Prozess wird innerhalb der Bildschirmsitzung weiter ausgeführt, auch wenn die Netzwerkverbindung getrennt wird. Sobald die Netzwerkverbindung wiederhergestellt ist, können Sie sich erneut per SSH mit dem Remote-System verbinden und Sie werden sehen, dass der Job noch ausgeführt wird!!

Sehen Sie sich die folgende animierte Demo an:

Lassen Sie mich erklären, was ich gerade in der obigen Ausgabe getan habe.

  1. Ich verbinde mich von meinem lokalen System über SSH mit meinem entfernten Ubuntu-Server. Eine neue Screen-Sitzung mit dem Namen "default" wird automatisch gestartet.
  2. Innerhalb der Screen-Sitzung führe ich einen Befehl aus (z. B. watch grep \"cpu MHz\" /proc/cpuinfo), um die CPU-Geschwindigkeit zu überwachen.
  3. Dann habe ich mich von der Sitzung getrennt, indem ich Strg+a gedrückt habe und d .
  4. Und dann liste ich die Screen-Sitzungen mit dem Befehl "screen -ls" auf und verlasse die SSH-Sitzung.
  5. Schließlich verbinde ich mich per SSH wieder mit dem Remote-System und überprüfe, ob der Prozess innerhalb der Screen-Sitzung ohne Unterbrechung weiterläuft.

Ich hoffe, Sie verstehen.

Um die automatisch startende Bildschirmsitzung zu beenden, löschen Sie einfach die zuvor hinzugefügten Zeilen aus der Datei ~/.bashrc Ihres Remote-Systems oder ~/.bash_profile Datei.


Linux
  1. Wie kann man eine nicht reagierende SSH-Verbindung unter Linux beenden?

  2. Linux – So speichern Sie eine X-Sitzung – Archlinux+openbox?

  3. Wie deaktiviere ich das Dimmen des Bildschirms in 14.04?

  4. Wie vergebe ich einen Namen für einen Bildschirm?

  5. So stellen Sie die Verbindung zu einer getrennten SSH-Sitzung wieder her

So überprüfen Sie, ob Sie sich in einer Bildschirmsitzung befinden oder nicht in Linux

Tmux-Sitzung auf Remote-System automatisch starten, wenn Sie sich über SSH anmelden

So verwenden Sie den Bildschirmbefehl unter Linux, um Terminals zu verwalten

So verwenden Sie den Linux-Bildschirmbefehl [Essential Guide]

So verwenden Sie den Bildschirmbefehl unter Linux

So löschen Sie das Terminal unter Linux {Bildschirm in Linux löschen}