Sie können definitiv eine GUI auf Ihrer VM haben. Es erfordert nur ein Minimum an Einrichtung.
Am einfachsten ist es, einen Linux / Unix-PC (Mac) für den Zugriff auf Ihre VM zu verwenden, da dann nur noch Folgendes erforderlich ist:
Bearbeiten Sie auf der VM die Datei / etc / ssh / sshd_config und stellen Sie sicher, dass Sie über diese beiden Zeilen verfügen:
X11Forwarding yes X11DisplayOffset 10
und starten Sie den SSH- Daemon neu,
sudo systemctl force-reload ssh
(Auf einem Mac wäre das:
sudo launchctl unload /System/Library/LaunchDaemons/ssh.plist sudo launchctl load -w /System/Library/LaunchDaemons/ssh.plist
auf einem alten Linux oder einem Unix wäre das:
sudo /etc/init.d/ssh restart
).
Verbinden Sie sich auf Ihrem Linux / Unix-PC mit dem Befehl:
ssh -Y me@My.Google.Cloud.VM
Stellen Sie dann auf der VM sicher, dass die grafische Anzeige richtig ausgewählt ist.
export DISPLAY=localhost:10.0
Nun können Sie innerhalb der SSH- Sitzung grafische Anwendungen starten, die auf Ihrem Linux-PC-Monitor angezeigt werden. Versuchen Sie zum Beispiel
xeyes
Grundsätzlich gibt es eine Möglichkeit, eine gesamte Desktop-Umgebung (KDE, Gnome, Xfce, Enlightenment, wie Sie sie nennen) auf der VM zu starten und auf Ihrem Linux-PC anzuzeigen, dies erfordert jedoch sehr große Bandbreiten wird Ihnen nicht sagen, wie es geht, wenn Sie nicht explizit nachfragen.
Der Grund, warum Ihnen diese Lösung ursprünglich nicht angeboten wurde, liegt darin, dass die meisten Leute zu vergessen scheinen, dass Xorg, die grafische Linux-Benutzeroberfläche, ein Server ist. Das heißt, sie führt den Dienst auf dem Monitor aus, auf dem die grafischen Anwendungen laufen, die Daten senden, ob sie vom lokalen oder vom entfernten PC stammen. Ihre Xorg-Sitzung ist also perfekt dazu in der Lage.
Wenn Sie stattdessen von einem Windows-PC aus eine Verbindung herstellen, erledigt vnc dies für Sie. Dafür ist jedoch eine Xorg-Sitzung auf der VM erforderlich, mit der sich vnc lokal verbindet und repliziert, allerdings mit einer viel schlechteren Auflösung. Wenn Sie das möchten, können Sie hier nachlesen .
BEARBEITEN :
eine Antwort auf Vidyas Kommentar unten. Im Folgenden wird davon ausgegangen, dass Sie bereits einen grafischen Desktop auf Ihrer VM, KDE oder Gnome installiert haben.
Ich möchte, dass diese Verbindung in einem eigenen Fenster angezeigt wird, das ich je nach Bedarf in der Größe ändern, verschieben, falten oder maximieren kann. Also benutze ich Xephyr : Auf deinem Heimcomputer, auf dem Linux läuft, musst du es zuerst installieren.
sudo apt-get install xserver-xephyr
(Dieser Befehl ist für Debian und Derivate geeignet. Wenn Sie eine andere Distribution verwenden, müssen Sie einen geeigneten Paketmanager verwenden.) Dann starten Sie ihn mit
Xephyr -ac -br :1 -resizeable &
(Bitte beachten Sie das Großbuchstabe X hier, nicht im Installationspaket). Die wichtigsten Optionen sind : 1 (so wird Ihr neues Display bezeichnet) und in der Größe veränderbar, sodass Sie das Fenster nach Ihren Wünschen ändern können.
Jetzt können Sie Ihre Remote-Sitzung auf Ihrem Server starten mit:
DISPLAY=:1.0 ssh -Y me@My.Remote.VM
Sobald Sie sich in der virtuellen Maschine befinden, wird ein für Ihren Display-Manager geeigneter Befehl wie startkde (falls Sie KDE haben) oder startx usw. Ihre grafische Sitzung im Xephyr-Fenster starten. Wenn Sie möchten, können Sie vor dem Start der grafischen Sitzung einfache Anwendungen wie xeyes starten, die sehr schnell geladen werden können und im Xephyr-Fenster geöffnet werden sollten. Wenn Sie fertig sind, töten Sie einfach das Xephyr- Fenster.