In dieser Anleitung wird beschrieben, wie Sie den Dienst Chrome Remote Desktop in einer VM-Instanz mit Debian Linux auf Compute Engine einrichten. Eine separate Anleitung für Windows-VMs finden Sie unter Virtuelle Windows-Maschinen. Chrome Remote Desktop bietet eine grafische Benutzeroberfläche, über die Sie von lokalen Computern oder mobilen Geräten aus per Remotezugriff auf Anwendungen zugreifen können.
Wenn Sie diese Anleitung befolgen, lassen die Standardfirewallregeln Chrome Remote Desktop-Verbindungen zu; Sie müssen keine zusätzlichen Firewallregeln konfigurieren. Der SSH-Zugriff ist nur für die Ersteinrichtung erforderlich.
Die VM benötigt Zugriff auf das Internet (entweder über eine externe IP-Adresse oder über Cloud NAT) und Sie verwenden Ihr Google-Konto für die Authentifizierung und Autorisierung.
In dieser Anleitung wird davon ausgegangen, dass Sie mit der Linux-Befehlszeile vertraut sind und Debian-Pakete installieren können.
Informationen zu anderen Optionen zum Erstellen virtueller Workstations finden Sie unter Virtuelle Workstation erstellen.
Ziele
- Monitorlose Compute Engine-VM-Instanz erstellen, auf der Chrome Remote Desktop ausgeführt wird
- Chrome Remote Desktop auf der VM-Instanz installieren und konfigurieren
- Desktopumgebung auf Basis von X Window System in der VM-Instanz einrichten
- Vom lokalen Computer eine Verbindung zur Desktopumgebung der VM-Instanz herstellen
Kosten
In dieser Anleitung werden kostenpflichtige Komponenten von Google Cloud verwendet, darunter:
- Compute Engine
Mit dem Preisrechner können Sie eine Kostenschätzung für die voraussichtliche Nutzung erstellen.
Hinweise
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Compute Engine API.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Compute Engine API.
-
Make sure that you have the following role or roles on the project: roles/compute.admin
Check for the roles
-
In the Google Cloud console, go to the IAM page.
Go to IAM - Select the project.
-
In the Principal column, find all rows that identify you or a group that you're included in. To learn which groups you're included in, contact your administrator.
- For all rows that specify or include you, check the Role colunn to see whether the list of roles includes the required roles.
Grant the roles
-
In the Google Cloud console, go to the IAM page.
IAM aufrufen - Wählen Sie das Projekt aus.
- Klicken Sie auf Zugriff erlauben.
-
Geben Sie im Feld Neue Hauptkonten Ihre Nutzer-ID ein. Dies ist in der Regel die E-Mail-Adresse eines Google-Kontos.
- Wählen Sie in der Liste Rolle auswählen eine Rolle aus.
- Wenn Sie weitere Rollen hinzufügen möchten, klicken Sie auf Weitere Rolle hinzufügen und fügen Sie weitere Rollen hinzu.
- Klicken Sie auf Speichern.
- Sie verwenden den Browser Google Chrome auf Ihrem lokalen Computer.
-
Nach Abschluss der in diesem Dokument beschriebenen Aufgaben können Sie weitere Kosten vermeiden, indem Sie die erstellten Ressourcen löschen. Weitere Informationen finden Sie unter Bereinigen.
Compute Engine-Instanz erstellen
In dieser Anleitung wird der Standardmaschinentyp mit einem Debian Linux-Bootlaufwerk verwendet. Wenn Sie diesen für Ihre eigene Umgebung verwenden, müssen Sie möglicherweise den Maschinentyp, den Namen, die Region, die Größe des Bootlaufwerks oder andere Einstellungen anpassen.
Rufen Sie in der Google Cloud Console die Seite VM-Instanzen auf.
Klicken Sie auf Erstellen.
Legen Sie als Instanznamen
crdhost
fest.Klicken Sie auf Erstellen.
Das Erstellen der Instanz dauert einen Moment.
Stellen Sie eine Verbindung zur neuen Instanz her, sobald die Instanz erstellt wurde. Klicken Sie dafür in der Instanzliste auf SSH:
Chrome Remote Desktop auf der VM-Instanz installieren
Fügen Sie im SSH-Fenster für Ihre VM-Instanz das Repository für Debian Linux Chrome Remote Desktop der Paketliste
apt
hinzu und installieren Sie das Paketchrome-remote-desktop
.curl https://dl.google.com/linux/linux_signing_key.pub \ | sudo gpg --dearmor -o /etc/apt/trusted.gpg.d/chrome-remote-desktop.gpg echo "deb [arch=amd64] https://dl.google.com/linux/chrome-remote-desktop/deb stable main" \ | sudo tee /etc/apt/sources.list.d/chrome-remote-desktop.list sudo apt-get update sudo DEBIAN_FRONTEND=noninteractive \ apt-get install --assume-yes chrome-remote-desktop
Der Parameter
DEBIAN_FRONTEND=noninteractive
unterdrückt die Aufforderung zur Konfiguration eines Layouts für eine Tastatur, die direkt mit der VM-Instanz verbunden ist.
Desktopumgebung auf Basis von X Windows System installieren
Sie müssen eine Desktopumgebung auf Basis von X Window System und einen Fenstermanager für Chrome Remote Desktop installieren. Gängige Optionen:
Es können auch andere Desktopumgebungen verwendet werden, allerdings unterstützt Chrome Remote Desktop keine 3D-Grafikbeschleunigung. Wenn Sie sich für eine Desktopumgebung mit 3D-Grafikbeschleunigung entscheiden, müssen Sie diese Funktion deaktivieren. Andernfalls wird der Remote Desktop-Dienst nicht gestartet.
Für Remoteverbindungen über langsamere Netzwerke empfehlen wir Xfce, da es minimale grafische Elemente und wenige Animationen enthält.
Xfce
Installieren Sie im SSH-Fenster, das mit der VM-Instanz verbunden ist, die Xfce-Desktopumgebung und die grundlegenden Desktopkomponenten:
sudo DEBIAN_FRONTEND=noninteractive \ apt install --assume-yes xfce4 desktop-base dbus-x11 xscreensaver
XScreenSaver ist erforderlich, da die Xfce-Standardbildschirmsperre (Light Locker) nicht mit Chrome Remote Desktop funktioniert (Light Locker zeigt einen leeren Bildschirm an, der nicht entsperrt werden kann).
Konfigurieren Sie Chrome Remote Desktop, um Xfce standardmäßig zu verwenden:
sudo bash -c 'echo "exec /etc/X11/Xsession /usr/bin/xfce4-session" > /etc/chrome-remote-desktop-session'
Da mit Ihrer Instanz kein Display verbunden ist, deaktivieren Sie den Displaymanager in Ihrer Instanz:
sudo systemctl disable lightdm.service
Installieren Sie optional die vollständige Suite der Linux-Desktopanwendungen, die u. a. Firefox-Browser, LibreOffice, eine Suite für Office-Programme und den PDF-Viewer Evince umfasst:
sudo apt install --assume-yes task-xfce-desktop
Optional: Installieren Sie Google Chrome als Browser in Ihrer Instanz:
curl -L -o google-chrome-stable_current_amd64.deb \ https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb sudo apt install --assume-yes --fix-broken ./google-chrome-stable_current_amd64.deb
Cinnamon
Installieren Sie im SSH-Fenster, das mit der VM-Instanz verbunden ist, die Cinnamon-Desktopumgebung und die grundlegenden Desktopkomponenten:
sudo DEBIAN_FRONTEND=noninteractive \ apt install --assume-yes cinnamon-core desktop-base dbus-x11
Richten Sie Ihre Sitzung mit Chrome Remote Desktop so ein, dass Cinnamon im 2D-Modus (ohne 3D-Grafikbeschleunigung) standardmäßig genutzt wird:
sudo bash -c 'echo "exec /etc/X11/Xsession /usr/bin/cinnamon-session-cinnamon2d" > /etc/chrome-remote-desktop-session'
Installieren Sie optional die vollständige Suite der Linux-Desktopanwendungen, die u. a. Firefox-Browser, LibreOffice, eine Suite für Office-Programme und den PDF-Viewer Evince umfasst:
sudo apt install --assume-yes task-cinnamon-desktop
Optional: Installieren Sie Google Chrome als Browser in Ihrer Instanz:
curl -L -o google-chrome-stable_current_amd64.deb \ https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb sudo apt install --assume-yes --fix-broken ./google-chrome-stable_current_amd64.deb
Gnom
Installieren Sie in dem mit der VM-Instanz verbundenen SSH-Fenster die vollständige Desktop-Umgebung von Gnome, einschließlich Firefox-Browser, der LibreOffice-Suite für Office-Anwendungen und des Evince-PDF-Viewers:
sudo DEBIAN_FRONTEND=noninteractive \ apt install --assume-yes task-gnome-desktop
Richten Sie die Chrome Remote Desktop-Sitzung für die Verwendung von Gnome ein.
sudo bash -c 'echo "exec /etc/X11/Xsession /usr/bin/gnome-session" > /etc/chrome-remote-desktop-session'
Deaktivieren Sie den Gnome-Anzeigemanager auf Ihrer Instanz, da er mit dem Chrome Remote Desktop-Dienst in Konflikt steht.
sudo systemctl disable gdm3.service sudo reboot
Mit diesem Befehl wird die VM neu gestartet.
Stellen Sie die Verbindung über SSH wieder her, bevor Sie fortfahren.
Optional: Installieren Sie Google Chrome als Browser in Ihrer Instanz:
curl -L -o google-chrome-stable_current_amd64.deb \ https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb sudo apt install --assume-yes --fix-broken ./google-chrome-stable_current_amd64.deb
Gnome-Classic
Installieren Sie in dem mit der VM-Instanz verbundenen SSH-Fenster die vollständige Desktop-Umgebung von Gnome, einschließlich Firefox-Browser, der LibreOffice-Suite für Office-Anwendungen und des Evince-PDF-Viewers:
sudo DEBIAN_FRONTEND=noninteractive \ apt install --assume-yes task-gnome-desktop
Der Parameter
DEBIAN_FRONTEND=noninteractive
unterdrückt die Aufforderung zur Konfiguration eines Layouts für eine Tastatur, die direkt mit der VM-Instanz verbunden ist.Legen Sie fest, dass in der Chrome Remote Desktop-Sitzung der Gnome-Classic-Desktop verwendet wird:
sudo bash -c 'echo "exec /etc/X11/Xsession /usr/bin/gnome-session-classic" > /etc/chrome-remote-desktop-session'
Deaktivieren Sie den Gnome-Anzeigemanager auf Ihrer Instanz, da er mit dem Chrome Remote Desktop-Dienst in Konflikt steht.
sudo systemctl disable gdm3.service sudo reboot
Mit diesem Befehl wird die VM neu gestartet.
Stellen Sie die Verbindung über SSH wieder her, bevor Sie fortfahren.
Optional: Installieren Sie Google Chrome als Browser in Ihrer Instanz:
curl -L -o google-chrome-stable_current_amd64.deb \ https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb sudo apt install --assume-yes --fix-broken ./google-chrome-stable_current_amd64.deb
KDE Plasma
Installieren Sie in dem mit der VM-Instanz verbundenen SSH-Fenster die vollständige Desktop-Umgebung von KDE Plasma, einschließlich Firefox-Browser, der LibreOffice-Suite für Office-Anwendungen und des Evince-PDF-Viewers:
sudo DEBIAN_FRONTEND=noninteractive \ apt install --assume-yes task-kde-desktop
Der Parameter
DEBIAN_FRONTEND=noninteractive
unterdrückt die Aufforderung zur Konfiguration eines Layouts für eine Tastatur, die direkt mit der VM-Instanz verbunden ist.Legen Sie fest, dass in der Chrome Remote Desktop-Sitzung KDE Plasma verwendet wird.
sudo bash -c 'echo "exec /etc/X11/Xsession /usr/bin/startplasma-x11" > /etc/chrome-remote-desktop-session'
Optional: Installieren Sie Google Chrome als Browser in Ihrer Instanz:
curl -L -o google-chrome-stable_current_amd64.deb \ https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb sudo apt install --assume-yes --fix-broken ./google-chrome-stable_current_amd64.deb
Chrome Remote Desktop-Dienst konfigurieren und starten
Für den Start des Remote Desktop-Servers benötigen Sie einen Autorisierungsschlüssel für das Google-Konto, zu dem Sie eine Verbindung herstellen möchten.
Rufen Sie in der Google Cloud Console die Seite VM-Instanzen auf:
Stellen Sie eine Verbindung zur Instanz her. Klicken Sie dazu auf SSH.
Wechseln Sie auf Ihrem lokalen Computer mit Google Chrome zur Seite für die Befehlszeilen-Konfiguration von Chrome Remote Desktop:
Wenn Sie noch nicht angemeldet sind, melden Sie sich mit einem Google-Konto an. Dieses Konto dient zur Autorisierung des Remotezugriffs.
Klicken Sie auf der Seite Weiteren Computer einrichten auf Starten.
Klicken Sie auf Autorisieren.
Sie müssen Chrome Remote Desktop den Zugriff auf Ihr Konto gewähren. Wenn Sie zustimmen, wird auf der Seite eine Befehlszeile für Debian Linux angezeigt, die so oder ähnlich aussieht:
DISPLAY= /opt/google/chrome-remote-desktop/start-host \ --code="4/xxxxxxxxxxxxxxxxxxxxxxxx" \ --redirect-url="https://remotedesktop.google.com/_/oauthredirect" \ --name=$(hostname)
Mit diesem Befehl können Sie den Chrome Remote Desktop-Dienst in Ihrer VM-Instanz einrichten und starten. Über den Autorisierungscode wird er mit dem Google-Konto verknüpft.
Kopieren Sie den Befehl in das mit Ihrer Instanz verbundene SSH-Fenster und führen Sie ihn dann aus.
Geben Sie bei Aufforderung eine 6-stellige PIN ein. Diese Zahl wird zur zusätzlichen Autorisierung verwendet, wenn Sie später eine Verbindung herstellen.
Möglicherweise werden Fehler wie
No net_fetcher
oderFailed to read
angezeigt. Sie können diese Fehler ignorieren.Prüfen Sie mit dem folgenden Befehl, ob der Dienst ausgeführt wird.
sudo systemctl status chrome-remote-desktop@$USER
Ist der Dienst aktiv, sehen Sie in der Ausgabe den Status
active
:chrome-remote-desktop.service - LSB: Chrome Remote Desktop service Loaded: loaded (/lib/systemd/system/chrome-remote-desktop@USER.service; enabled; vendor preset: enabled) Active: active (running) since DATE_TIME; ELAPSED_TIME
Verbindung zur VM-Instanz herstellen
Sie können mit der Chrome Remote Desktop-Webanwendung eine Verbindung zur VM-Instanz herstellen:
Rufen Sie auf Ihrem lokalen Computer die Chrome Remote Desktop-Website auf.
Klicken Sie auf Auf meinen Computer zugreifen.
Wenn Sie noch nicht bei Google angemeldet sind, melden Sie sich mit demselben Google-Konto an, über das Sie den Chrome Remote Desktop-Dienst eingerichtet haben.
Die neue VM-Instanz
crdhost
wird jetzt in der Liste Remote-Geräte angezeigt.Klicken Sie auf den Namen der Remote Desktop-Instanz.
Wenn Sie dazu aufgefordert werden, geben Sie die PIN ein, die Sie zuvor erstellt haben, und klicken Sie dann auf die Pfeilschaltfläche, um die Verbindung herzustellen.
Sie sind jetzt mit der Desktopumgebung auf der Remoteinstanz von Compute Engine verbunden.
Wenn Sie dazu aufgefordert werden, erlauben Sie der Remote Desktop-Anwendung immer, Ihre Zwischenablage zu lesen und das Kopieren und Einfügen zwischen lokalen und Remote-Anwendungen zu ermöglichen.
Wenn Sie den Xfce-Desktop installiert haben, werden Sie bei der ersten Verbindung aufgefordert, die Desktopbereiche einzurichten. Klicken Sie auf Standardkonfiguration verwenden, um die Standard-Taskleiste oben und die Schnellstartleiste unten einzublenden.
Remote Desktop-Oberfläche verbessern
In diesem Abschnitt wird beschrieben, mit welchen Einstellungen Sie Remote Desktop an Ihre Anforderungen anpassen können.
Remote Desktop Chrome-App installieren
Die Remote Desktop Chrome App bietet ein separates Fenster und ermöglicht die Verwendung von Tastenkürzeln, die normalerweise von Chrome abgefangen werden würden, auf dem Remote-System.
Wenn diese App nicht installiert ist, gehen Sie so vor:
- Öffnen Sie den Bereich Sitzungsoptionen über die Schaltfläche chevron_left, die angezeigt wird, wenn Sie die Maus zur Seite des Fensters bewegen.
- Klicken Sie im Abschnitt App installieren auf Starten.
- Klicken Sie auf Installieren.
Die Remote Desktop-Sitzung wird in einem eigenen Anwendungsfenster wieder geöffnet.
Sie können beliebige Remote Desktop-Sitzungen von einem Chrome-Tab in das App-Fenster verschieben. Klicken Sie dazu in der Adressleiste auf das Symbol Öffnen mit open_in_new.
Animationen und Effekte in Cinnamon deaktivieren
Auf dem Cinnamon-Desktop gibt es verschiedene grafische Funktionen und Animationen, die ein- und ausgeblendet werden, zum Beispiel halbtransparente Fenster und Menüs. Da das Rendern dieser Animationen über eine Remoteverbindung länger dauert, wird der Eindruck erweckt, die gesamte Benutzeroberfläche wäre langsam.
So deaktivieren Sie diese Effekte:
Wählen Sie auf dem Cinnamon-Desktop die Optionen Menu > Preferences > Effects.
Deaktivieren Sie die betreffenden Effekte:
Nutzerpasswort festlegen
Das von Compute Engine erstellte Nutzerkonto hat kein Passwort. Mehrere Desktopumgebungen erfordern jedoch eine zum Entsperren des Bildschirmschoners und zum Autorisieren von administrativen Aktionen. Daher ist es wichtig, ein Passwort für Ihren Nutzer festzulegen:
- Stellen Sie über SSH eine Verbindung zur Instanz her. Gehen Sie dabei so vor wie beim ersten Einrichten der Instanz.
Erstellen Sie ein Passwort für den Nutzer:
sudo passwd $(whoami)
Bildschirmschoner und Sperrbildschirme deaktivieren
Da Sie von einem Remotecomputer auf den Desktop zugreifen, sind im Normalfall kein Bildschirmschoner und keine Bildschirmsperre erforderlich. Sie können diese daher deaktivieren.
Xfce
- Wählen Sie im Menü Applications die Optionen Settings>Screensaver.
- Stellen Sie Mode (Modus) auf Disable Screen Saver (Bildschirmschoner deaktivieren) ein.
Cinnamon
- Wählen Sie auf dem Desktop die Optionen Menu (Menü)>Preferences (Voreinstellungen)>Screensaver (Bildschirmschoner).
- Stellen Sie auf dem Tab Einstellungen die Option Verzögerung auf Nie ein und deaktivieren Sie die folgenden beiden Sperreinstellungen, um den Bildschirm automatisch zu sperren.
Gnom
- Klicken Sie auf dem Desktop auf Aktivitäten und geben Sie
Settings
ein. - Wählen Sie die Anwendung Einstellungen aus.
- Wählen Sie in der Anwendung Einstellungen die Option Datenschutz > Bildschirmsperre aus.
- Deaktivieren Sie Automatische Bildschirmsperre und schließen Sie das Dialogfeld.
- Wählen Sie Geräte > Tastatur aus.
- Wechseln Sie in der Liste der Tastenkombinationen nach unten zum Abschnitt System und klicken Sie dann auf Bildschirm sperren.
- Drücken Sie die Taste
Backspace
, um die Verknüpfung zu deaktivieren, und klicken Sie dann auf Festlegen. - Wählen Sie Stromversorgung aus und setzen Sie Leerer Bildschirm auf Nie.
Gnome-Classic
- Klicken Sie auf dem Desktop auf Anwendungen > Systemtools > Einstellungen.
- Wählen Sie in der Anwendung Einstellungen die Option Datenschutz > Bildschirmsperre aus.
- Deaktivieren Sie Automatische Bildschirmsperre und schließen Sie das Dialogfeld.
- Wählen Sie Geräte > Tastatur aus.
- Wechseln Sie in der Liste der Tastenkombinationen zum Abschnitt System und klicken Sie auf Bildschirm sperren.
- Drücken Sie die Taste
Backspace
, um die Verknüpfung zu deaktivieren, und klicken Sie dann auf Festlegen. - Wählen Sie Stromversorgung aus und setzen Sie Leerer Bildschirm auf Nie.
KDE Plasma
- Klicken Sie auf dem Computer auf die KDE-Menüschaltfläche und geben Sie
Screen Locking
ein. - Wählen Sie die Bildschirmsperre aus.
- Deaktivieren Sie in der Anwendung Bildschirmsperre konfigurieren die Option Bildschirm automatisch sperren nach und klicken Sie auf die Schaltfläche , um die Tastenkombination zu löschen.
- Klicken Sie auf OK.
Desktopauflösung erhöhen
Für Monitore mit extrem hoher Auflösung kann die maximale Standardgröße von 1600 x 1200 für den Desktop zu klein sein. Erhöhen Sie in diesem Fall die Auflösung des Monitors.
- Stellen Sie mit SSH eine Verbindung zur Instanz her.
Richten Sie die Umgebungsvariable
CHROME_REMOTE_DESKTOP_DEFAULT_DESKTOP_SIZES
so ein, dass sie die Auflösung Ihres Monitors enthält:echo "export CHROME_REMOTE_DESKTOP_DEFAULT_DESKTOP_SIZES=1600x1200,3840x2560" \ >> ~/.profile
Starten Sie den Dienst neu:
sudo systemctl restart chrome-remote-desktop@$USER
Erweiterten Video-Codec aktivieren:
Der AV1-Codec mit hochwertiger Farbe verbessert die Bildqualität und ermöglicht eine bessere Codierung reiner Farbinformationen wie Text:
- Öffnen Sie den Bereich Sitzungsoptionen über die Schaltfläche chevron_left, die angezeigt wird, wenn Sie die Maus zur Seite des Fensters bewegen.
- Wählen Sie im Feld Video-Codec die Option AV1 aus.
- Das Feld Hochwertige Farbe muss aktiviert sein.
Andere Desktopumgebung auswählen
Im vorherigen Abschnitt haben Sie eine Standard-Desktopumgebung in der globalen Konfigurationsdatei /etc/chrome-remote-desktop-session
festgelegt. Sie können auch eine andere Desktopumgebung auswählen, wenn sie installiert ist. Hierzu geben Sie diese in der Konfigurationsdatei .chrome-remote-desktop-session
in Ihrem Basisverzeichnis an:
Xfce
echo "exec /etc/X11/Xsession /usr/bin/xfce4-session" > ~/.chrome-remote-desktop-session
Cinnamon
echo "exec /etc/X11/Xsession /usr/bin/cinnamon-session-cinnamon2d" > ~/.chrome-remote-desktop-session
Gnom
echo "exec /etc/X11/Xsession /usr/bin/gnome-session" > ~/.chrome-remote-desktop-session
Gnome-Classic
echo "exec /etc/X11/Xsession /usr/bin/gnome-session-classic" > ~/.chrome-remote-desktop-session
KDE Plasma
echo "exec /etc/X11/Xsession /usr/bin/startplasma-x11" > ~/.chrome-remote-desktop-session
Nach dieser Änderung starten Sie den Dienst neu, damit sie wirksam wird:
sudo systemctl restart chrome-remote-desktop@$USER
Wie bereits erwähnt, unterstützt Chrome Remote Desktop keine 3D-Grafikbeschleunigung. Daher müssen Sie für Desktopumgebungen, die diese Features verwenden, 3D-Grafiken deaktivieren. Anderenfalls wird die Sitzung nicht gestartet.
Installationsprozess automatisieren
Wenn Sie mit Chrome Remote Desktop mehrere Maschinen einrichten müssen, können sich die manuellen Installationsschritte wiederholen. Sie können diesen Prozess über ein benutzerdefiniertes Startskript folgendermaßen automatisieren.
In dieser Anleitung wird der Standardmaschinentyp mit einem Debian Linux-Bootlaufwerk verwendet. Wenn Sie diesen für Ihre eigene Umgebung verwenden, müssen Sie möglicherweise den Maschinentyp, den Namen, die Region, die Größe des Bootlaufwerks oder andere Einstellungen anpassen.
Rufen Sie in der Google Cloud Console die Seite VM-Instanzen auf:
Klicken Sie auf Instanz erstellen.
Legen Sie als Instanznamen
crdhost-autoinstall
fest.Scrollen Sie zum Abschnitt Erweiterte Optionen und maximieren Sie ihn.
Maximieren Sie den Bereich Verwaltung.
Kopieren Sie das folgende Shell-Skript und fügen Sie es in das Feld Automatisierung/Startskript ein:
#!/bin/bash -x # # Startup script to install Chrome remote desktop and a desktop environment. # # See environmental variables at then end of the script for configuration # function install_desktop_env { PACKAGES="desktop-base xscreensaver dbus-x11" if [[ "$INSTALL_XFCE" != "yes" && "$INSTALL_CINNAMON" != "yes" ]] ; then # neither XFCE nor cinnamon specified; install both INSTALL_XFCE=yes INSTALL_CINNAMON=yes fi if [[ "$INSTALL_XFCE" = "yes" ]] ; then PACKAGES="$PACKAGES xfce4" echo "exec xfce4-session" > /etc/chrome-remote-desktop-session [[ "$INSTALL_FULL_DESKTOP" = "yes" ]] && \ PACKAGES="$PACKAGES task-xfce-desktop" fi if [[ "$INSTALL_CINNAMON" = "yes" ]] ; then PACKAGES="$PACKAGES cinnamon-core" echo "exec cinnamon-session-cinnamon2d" > /etc/chrome-remote-desktop-session [[ "$INSTALL_FULL_DESKTOP" = "yes" ]] && \ PACKAGES="$PACKAGES task-cinnamon-desktop" fi DEBIAN_FRONTEND=noninteractive \ apt-get install --assume-yes $PACKAGES $EXTRA_PACKAGES systemctl disable lightdm.service } function download_and_install { # args URL FILENAME if [[ -e "$2" ]] ; then echo "cannot download $1 to $2 - file exists" return 1; fi curl -L -o "$2" "$1" && \ apt-get install --assume-yes --fix-broken "$2" && \ rm "$2" } function is_installed { # args PACKAGE_NAME dpkg-query --list "$1" | grep -q "^ii" 2>/dev/null return $? } # Configure the following environmental variables as required: INSTALL_XFCE=yes INSTALL_CINNAMON=yes INSTALL_CHROME=yes INSTALL_FULL_DESKTOP=yes # Any additional packages that should be installed on startup can be added here EXTRA_PACKAGES="less bzip2 zip unzip tasksel wget" apt-get update if ! is_installed chrome-remote-desktop; then if [[ ! -e /etc/apt/sources.list.d/chrome-remote-desktop.list ]]; then echo "deb [arch=amd64] https://dl.google.com/linux/chrome-remote-desktop/deb stable main" \ | tee -a /etc/apt/sources.list.d/chrome-remote-desktop.list fi apt-get update DEBIAN_FRONTEND=noninteractive \ apt-get install --assume-yes chrome-remote-desktop fi install_desktop_env [[ "$INSTALL_CHROME" = "yes" ]] && ! is_installed google-chrome-stable && \ download_and_install \ https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb \ /tmp/google-chrome-stable_current_amd64.deb echo "Chrome remote desktop installation completed"
Dieses Skript führt bei jedem Neustart der Maschine folgende Aufgaben aus:
- Wenn das Chrome Remote Desktop-Paket nicht installiert ist:
- Fügt das Paket-Repository für Chrome Remote Desktop Debian hinzu
- Installiert das Chrome Remote Desktop-Paket und die zugehörigen Abhängigkeiten.
- Die Xfce- bzw. Cinnamon-Desktopumgebungen werden installiert (abhängig von den Skripteinstellungen).
- Wenn die Option für die vollständige Desktopumgebung aktiviert ist, werden die erforderlichen Pakete installiert.
- Wenn die Chrome-Option aktiviert und nicht installiert ist:
- Das Google Chrome-Paket wird heruntergeladen.
- Installiert Google Chrome und die abhängigen Pakete.
- Wenn das Chrome Remote Desktop-Paket nicht installiert ist:
Klicken Sie auf Erstellen.
Das Erstellen der Instanz dauert einen Moment. Wenn Sie das Skript zum ersten Mal ausführen und alle Optionen aktiviert sind, kann es bis zu 10 Minuten dauern, bis die Installation abgeschlossen ist.
Stellen Sie zur Überwachung des Fortschritts mit SSH eine Verbindung zur VM-Instanz her und führen Sie im Terminal der Instanz folgenden Befehl aus:
sudo journalctl -o cat -f _SYSTEMD_UNIT=google-startup-scripts.service
Dieser Befehl zeigt die Ausgabe des Startskripts an. Wenn das Skript beendet ist, sehen Sie Folgendes:
INFO startup-script: Chrome remote desktop installation completed INFO startup-script: Return code 0. INFO Finished running startup scripts.
Dieses Skript installiert nur die erforderlichen Pakete. Sie müssen noch den Remote Desktop-Dienst wie zuvor beschrieben für Ihren Nutzer konfigurieren.
Es gibt verschiedene Möglichkeiten, ein Startskript beim Erstellen einer neuen VM-Instanz anzugeben:
- In die Google Cloud Console einfügen (wie zuvor gezeigt)
- Als Datei auf einer lokalen Maschine speichern und das Flag
--metadata-from-file
beim Erstellen einer Instanz über das Google Cloud CLI verwenden - In einem Cloud Storage-Bucket speichern und die URL zum Objekt angeben (entweder in der Console oder in der gcloud CLI)
Weitere Informationen über andere Verfahren zur Konfiguration des Startskripts finden Sie in der Compute Engine-Dokumentation unter Startskripts ausführen.
Fehlerbehebung
Dieser Abschnitt enthält Tipps zur Fehlerbehebung für diesen Leitfaden.
Status von Chrome Remote Desktop prüfen
Sollte der Dienst Chrome Remote Desktop einmal nicht reagieren, können Sie seinen Status prüfen. Stellen Sie dazu mit SSH eine Verbindung zur Instanz her und führen Sie den folgenden Befehl aus:
sudo systemctl status chrome-remote-desktop@$USER
Ist der Dienst aktiv, sehen Sie in der Ausgabe den Status active
:
chrome-remote-desktop.service - LSB: Chrome Remote Desktop service Loaded: loaded (/lib/systemd/system/chrome-remote-desktop@USER.service; enabled; vendor preset: enabled) Active: active (running) since DATE_TIME; ELAPSED_TIME
Mit dem folgenden Befehl im SSH-Fenster können Sie den Dienst neu starten:
sudo systemctl restart chrome-remote-desktop@$USER
Log- und Fehlerinformationen abrufen
Chrome Remote Desktop schreibt Loginformationen in das Systemjournal:
journalctl SYSLOG_IDENTIFIER=chrome-remote-desktop # All logs
journalctl SYSLOG_IDENTIFIER=chrome-remote-desktop -e # Most recent logs
journalctl SYSLOG_IDENTIFIER=chrome-remote-desktop -b # Logs since reboot
Prüfen Sie diese Logdateien auf Fehlermeldungen.
Dienst neu aktivieren
Wenn Sie die Verbindungen zur Remoteinstanz in der Client-Anwendung versehentlich deaktiviert haben, können Sie den Dienst neu konfigurieren und aktivieren. Anleitungen dazu finden Sie unter Chrome Remote Desktop konfigurieren und starten.
Globale und nutzerspezifische Sitzungskonfigurationsdateien prüfen
Prüfen Sie den Inhalt der globalen /etc/chrome-remote-desktop-session
-Konfigurationsdatei und der nutzerspezifischen ~/.chrome-remote-desktop-session
-Konfigurationsdatei und bestätigen Sie, dass die angegebenen Desktopumgebungen installiert wurden.
Bereinigen
Damit Ihrem Google Cloud-Konto die in dieser Anleitung verwendeten Ressourcen nicht in Rechnung gestellt werden, löschen Sie entweder das Projekt, das die Ressourcen enthält, oder Sie behalten das Projekt und löschen die einzelnen Ressourcen.
Projekt löschen
Am einfachsten vermeiden Sie weitere Kosten durch Löschen des für die Anleitung erstellten Projekts.
So löschen Sie das Projekt:
- In the Google Cloud console, go to the Manage resources page.
- In the project list, select the project that you want to delete, and then click Delete.
- In the dialog, type the project ID, and then click Shut down to delete the project.
Compute Engine-Instanz löschen
Als Alternative können Sie statt dem gesamten Projekt nur die VM-Instanz löschen, die Sie für diese Anleitung erstellt haben:
Rufen Sie in der Google Cloud Console die Seite VM-Instanzen auf.
Klicken Sie das Kästchen neben dem zuvor erstellten Instanznamen (
crdhost
) an.Klicken Sie oben auf der Seite auf Löschen:
Es dauert einen Moment, bis die Instanz gelöscht ist.
Autorisierung von Chrome Remote Desktop für die Instanz aufheben
Wenn Sie zukünftig keine Verbindung mehr zur VM-Instanz herstellen möchten, können Sie diese deaktivieren und aus der Liste Remote-Geräte entfernen:
- Rufen Sie auf Ihrem lokalen Computer die Website für den Chrome Remote Desktop mit der Liste für Remote-Geräte auf.
- Klicken Sie neben dem Instanznamen
crdhost
auf . - Klicken Sie auf OK, um zu bestätigen, dass die Remote-Geräteverbindung deaktiviert werden soll.
Nächste Schritte
- Informationen zum Einrichten von Chrome Remote Desktop auf einer Windows-VM
- Weitere Informationen zum Erstellen einer virtuellen Workstation
- Referenzarchitekturen, Diagramme und Best Practices zu Google Cloud kennenlernen. Weitere Informationen zu Cloud Architecture Center