Kann ich meine grafische Hauptsitzungssitzung remote starten?
8
Daher wurde meine Workstation bei der Arbeit neu gestartet und ich bin dort derzeit nicht physisch mit einer grafischen Sitzung angemeldet. Ich habe SSH-Zugriff darauf und kann eine neue X Windows-Sitzung starten und meine grafischen Anwendungen remote verwenden. Ich habe mich nur gefragt, ob es eine Möglichkeit gibt, die Haupt-Desktop-Sitzung remote zu starten, damit ich mich dann verbinden und mit ihr interagieren kann. Wenn ich das nächste Mal vor der Workstation stehe, kann ich einfach dort weitermachen, wo ich aufgehört habe ...
Sie können eine Konsolen-GUI-Sitzung remote starten: Ausführen startx. Dies funktioniert jedoch wahrscheinlich nicht, da Ihnen die Berechtigung fehlt. Bei den meisten Setups darf nur der Benutzer, der physisch an der Konsole angemeldet ist, die Konsole verwenden.
Verschiedene Distributionen haben unterschiedliche Mechanismen eingeführt, um zu steuern, wer eine X-Sitzung auf der Konsole starten kann. Ich glaube, dass dies bei RHEL über systemd erfolgt, aber ich weiß nicht wie.
Wenn Sie eine X-Anwendung auf dem Konsolendisplay starten, können Sie nicht remote mit ihr interagieren. Es gibt einige Ausnahmen wie Emacs, die eine Verbindung zu mehreren Anzeigen herstellen können. Im Allgemeinen stellen X-Anwendungen jedoch beim Starten eine Verbindung zur X-Anzeige her und blicken nie zurück. Sie können Xmove oder Xpra verwenden , um zwischen dem X-Server und der Anwendung zu vermitteln. Eine in Xmove oder Xpra gestartete X-Anwendung kann auf einen anderen X-Server verschoben werden (z. B. Trennen und Anhängen einer Bildschirmsitzung).
Eine weitere Option, sobald Sie die Console X-Sitzung gestartet haben, ist die Remote-Interaktion mit ihr. Sie können dafür X11vnc verwenden und mit einem VNC-Client auf die Remote-Sitzung zugreifen.
Nun, das war mehr, was ich vorhatte. Wenn ich startx ausführen kann, kann ich eine Verbindung zum X-Hauptserver (: 0) herstellen und mit meinem Hauptdesktop interagieren. Ich werde versuchen, Sie wissen zu lassen, was passiert.
FrenchKheldar
@FrenchKheldar Ich werde versuchen, Sie wissen zu lassen, was passiert. Was ist passiert?
Piotr Dobrogost
1
Dies funktioniert jedoch wahrscheinlich nicht, da Ihnen die Berechtigung fehlt. Könnten Sie dies bitte in Ihrer Antwort näher erläutern? Bedeutet dies, dass Remotebenutzer den X-Server überhaupt nicht starten sollen? Wenn nicht, gibt es eine akzeptierte / kanonische Möglichkeit, den X-Server remote zu starten? Alternativ können Sie Links hinzufügen, die meine Fragen beantworten.
Piotr Dobrogost
@PiotrDobrogost Benutzer müssen an der Konsole angemeldet sein, um eine GUI-Sitzung auf der Konsole zu starten. Dies liegt daran, dass Sie keinen Zugriff auf das Konsolenperipheriegerät haben, wenn Sie nicht an der Konsole angemeldet sind. Sie können einen X-Server remote starten, aber er kann nicht auf die Konsole zugreifen, z. B. Xvfb (Anzeige in einem Framebuffer im Speicher), aber nicht Xorg (Anzeige auf einem tatsächlichen Bildschirm). Nur der Administrator (root) darf die Kontrolle über die Konsole übernehmen (einschließlich des Startens eines X-Servers dort), ohne angemeldet zu sein.
Gilles 'SO - hör auf böse zu sein'
@PiotrDobrogost Wenn ich mich richtig erinnere, hat es nicht funktioniert. Aber es ist schon eine Weile her!
FrenchKheldar
5
Ich würde einen Blick auf die folgenden Projekte vorschlagen (obwohl ich bezweifle, dass xpradies eine ganze Sitzung bewältigen kann)
Das x2goTerminalserver-Projekt scheint für diese Aufgabe ziemlich gut zu sein (siehe diesen Artikel im Linux-Magazin ). Für ein kleineres Setup könnte es jedoch etwas übertrieben sein.
Xpra ist "Bildschirm für X": Sie können X-Programme ausführen, normalerweise auf einem Remote-Host, ihre Anzeige auf Ihren lokalen Computer richten und dann die Verbindung zu diesen Programmen trennen und die Verbindung von demselben oder einem anderen Computer wiederherstellen, ohne den Status zu verlieren . Sie erhalten Fernzugriff auf einzelne Anwendungen.
Bearbeiten Etwas ist mir gerade in den Sinn gekommen - wenn Sie einen Desktop-Manager verwenden, der die automatische Anmeldung unterstützt (z. B. slim, nodm, gdm3, kdm); Sie sollten in der Lage sein, eine Sitzung für einen bestimmten Benutzer zu starten :0(z. B. über /etc/init.d/gdm3 start).
Danke diese sind interessant. Aber ich denke, es gibt keine Möglichkeit, eine Remote-Anmeldung durchzuführen, die dasselbe wie eine physische Anmeldung bewirkt (dh Startanzeige: 0).
Ich würde einen Blick auf die folgenden Projekte vorschlagen (obwohl ich bezweifle, dass
xpra
dies eine ganze Sitzung bewältigen kann)Das
x2go
Terminalserver-Projekt scheint für diese Aufgabe ziemlich gut zu sein (siehe diesen Artikel im Linux-Magazin ). Für ein kleineres Setup könnte es jedoch etwas übertrieben sein.xpra
::Und schauen Sie sich um , einige andere Tools wurden hier bereits erwähnt (zB hier ).
(Etwas direkteres könnte möglich sein ( siehe diesen Hinweis von "startx over ssh" ), aber das "Aufnehmen, wo ich den Teil verlassen habe" wird nicht funktionieren.)
Bearbeiten Etwas ist mir gerade in den Sinn gekommen - wenn Sie einen Desktop-Manager verwenden, der die automatische Anmeldung unterstützt (z. B. slim, nodm, gdm3, kdm); Sie sollten in der Lage sein, eine Sitzung für einen bestimmten Benutzer zu starten
:0
(z. B. über/etc/init.d/gdm3 start
).Und es gibt XDMCP (mit Sicherheitsbedenken ).
quelle