Chrome Remote Desktop für Linux in Compute Engine einrichten

Last reviewed 2022-11-16 UTC

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

  1. 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.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Die Abrechnung für das Google Cloud-Projekt muss aktiviert sein.

  4. Enable the Compute Engine API.

    Enable the API

  5. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  6. Die Abrechnung für das Google Cloud-Projekt muss aktiviert sein.

  7. Enable the Compute Engine API.

    Enable the API

  8. 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.

  9. Make sure that you have the following role or roles on the project: roles/compute.admin

    Check for the roles

    1. In the Google Cloud console, go to the IAM page.

      Go to IAM
    2. Select the project.
    3. 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.

    4. 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

    1. In the Google Cloud console, go to the IAM page.

      Zu IAM
    2. Wählen Sie das Projekt aus.
    3. Klicken Sie auf Zugriff erlauben.
    4. Geben Sie im Feld Neue Hauptkonten Ihre Nutzer-ID ein. Dies ist in der Regel die E-Mail-Adresse eines Google-Kontos.

    5. Wählen Sie in der Liste Rolle auswählen eine Rolle aus.
    6. Wenn Sie weitere Rollen hinzufügen möchten, klicken Sie auf Weitere Rolle hinzufügen und fügen Sie weitere Rollen hinzu.
    7. Klicken Sie auf Speichern.
    8. Sie verwenden den Browser Google Chrome auf Ihrem lokalen Computer.

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.

  1. Rufen Sie in der Google Cloud Console die Seite VM-Instanzen auf.

    Zur Seite „VM-Instanzen“

  2. Klicken Sie auf Erstellen.

  3. Legen Sie als Instanznamen crdhost fest.

  4. Klicken Sie auf Erstellen.

    Das Erstellen der Instanz dauert einen Moment.

  5. Stellen Sie eine Verbindung zur neuen Instanz her, sobald die Instanz erstellt wurde. Klicken Sie dafür in der Instanzliste auf SSH:

    Screenshot: SSH-Verbindung zur VM-Instanz erstellen

Chrome Remote Desktop auf der VM-Instanz installieren

  1. 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 Paket chrome-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

  1. 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).

  2. 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'
    
  3. Da mit Ihrer Instanz kein Display verbunden ist, deaktivieren Sie den Displaymanager in Ihrer Instanz:

    sudo systemctl disable lightdm.service
    
  4. 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
    
  5. 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

  1. 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
    
  2. 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'
    
  3. 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
    
  4. 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

  1. 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
    
  2. 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'
    
  3. 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.

  4. Stellen Sie die Verbindung über SSH wieder her, bevor Sie fortfahren.

  5. 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

  1. 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.

  2. 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'
    
  3. 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.

  4. Stellen Sie die Verbindung über SSH wieder her, bevor Sie fortfahren.

  5. 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

  1. 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.

  2. 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'
    
  3. 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.

  1. Rufen Sie in der Google Cloud Console die Seite VM-Instanzen auf:

    Die Seite VM-Instanzen aufrufen

  2. Stellen Sie eine Verbindung zur Instanz her. Klicken Sie dazu auf SSH.

  3. Wechseln Sie auf Ihrem lokalen Computer mit Google Chrome zur Seite für die Befehlszeilen-Konfiguration von Chrome Remote Desktop:

    https://remotedesktop.google.com/headless

  4. Wenn Sie noch nicht angemeldet sind, melden Sie sich mit einem Google-Konto an. Dieses Konto dient zur Autorisierung des Remotezugriffs.

  5. Klicken Sie auf der Seite Weiteren Computer einrichten auf Starten.

  6. 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.

  7. Kopieren Sie den Befehl in das mit Ihrer Instanz verbundene SSH-Fenster und führen Sie ihn dann aus.

  8. 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 oder Failed to read angezeigt. Sie können diese Fehler ignorieren.

  9. 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:

  1. Rufen Sie auf Ihrem lokalen Computer die Chrome Remote Desktop-Website auf.

  2. Klicken Sie auf Auf meinen Computer zugreifen.

  3. 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.

  4. Klicken Sie auf den Namen der Remote Desktop-Instanz.

  5. 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.

  6. 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.

  7. 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.

Screenshot: Xfce-Desktop mit Taskleiste und Schnellstartleiste

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:

  1. Öffnen Sie den Bereich Sitzungsoptionen über die Schaltfläche , die angezeigt wird, wenn Sie die Maus zur Seite des Fensters bewegen.
  2. Klicken Sie im Abschnitt App installieren auf Starten.
  3. 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 .

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:

  1. Wählen Sie auf dem Cinnamon-Desktop die Optionen Menu > Preferences > Effects.

    Screenshot: Desktopvoreinstellungen in Cinnamon festlegen

  2. Deaktivieren Sie die betreffenden Effekte:

    Screenshot: Animationseffekte in Cinnamon deaktivieren

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:

  1. Stellen Sie über SSH eine Verbindung zur Instanz her. Gehen Sie dabei so vor wie beim ersten Einrichten der Instanz.
  2. 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

  1. Wählen Sie im Menü Applications die Optionen Settings>Screensaver.
  2. Stellen Sie Mode (Modus) auf Disable Screen Saver (Bildschirmschoner deaktivieren) ein.

Cinnamon

  1. Wählen Sie auf dem Desktop die Optionen Menu (Menü)>Preferences (Voreinstellungen)>Screensaver (Bildschirmschoner).
  2. 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

  1. Klicken Sie auf dem Desktop auf Aktivitäten und geben Sie Settings ein.
  2. Wählen Sie die Anwendung Einstellungen aus.
  3. Wählen Sie in der Anwendung Einstellungen die Option Datenschutz > Bildschirmsperre aus.
  4. Deaktivieren Sie Automatische Bildschirmsperre und schließen Sie das Dialogfeld.
  5. Wählen Sie Geräte > Tastatur aus.
  6. Wechseln Sie in der Liste der Tastenkombinationen nach unten zum Abschnitt System und klicken Sie dann auf Bildschirm sperren.
  7. Drücken Sie die Taste Backspace, um die Verknüpfung zu deaktivieren, und klicken Sie dann auf Festlegen.
  8. Wählen Sie Stromversorgung aus und setzen Sie Leerer Bildschirm auf Nie.

Gnome-Classic

  1. Klicken Sie auf dem Desktop auf Anwendungen > Systemtools > Einstellungen.
  2. Wählen Sie in der Anwendung Einstellungen die Option Datenschutz > Bildschirmsperre aus.
  3. Deaktivieren Sie Automatische Bildschirmsperre und schließen Sie das Dialogfeld.
  4. Wählen Sie Geräte > Tastatur aus.
  5. Wechseln Sie in der Liste der Tastenkombinationen zum Abschnitt System und klicken Sie auf Bildschirm sperren.
  6. Drücken Sie die Taste Backspace, um die Verknüpfung zu deaktivieren, und klicken Sie dann auf Festlegen.
  7. Wählen Sie Stromversorgung aus und setzen Sie Leerer Bildschirm auf Nie.

KDE Plasma

  1. Klicken Sie auf dem Computer auf die KDE-Menüschaltfläche und geben Sie Screen Locking ein.
  2. Wählen Sie die Bildschirmsperre aus.
  3. 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.
  4. 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.

  1. Stellen Sie mit SSH eine Verbindung zur Instanz her.
  2. 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
    
  3. 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:

  1. Öffnen Sie den Bereich Sitzungsoptionen über die Schaltfläche , die angezeigt wird, wenn Sie die Maus zur Seite des Fensters bewegen.
  2. Wählen Sie im Feld Video-Codec die Option AV1 aus.
  3. 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.

  1. Rufen Sie in der Google Cloud Console die Seite VM-Instanzen auf:

    Die Seite VM-Instanzen aufrufen

  2. Klicken Sie auf Instanz erstellen.

  3. Legen Sie als Instanznamen crdhost-autoinstall fest.

  4. Scrollen Sie zum Abschnitt Erweiterte Optionen und maximieren Sie ihn.

  5. Maximieren Sie den Bereich Verwaltung.

  6. 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.
  7. 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.

  8. 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:

  1. In the Google Cloud console, go to the Manage resources page.

    Go to Manage resources

  2. In the project list, select the project that you want to delete, and then click Delete.
  3. 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:

  1. Rufen Sie in der Google Cloud Console die Seite VM-Instanzen auf.

    Die Seite VM-Instanzen aufrufen

  2. Klicken Sie das Kästchen neben dem zuvor erstellten Instanznamen (crdhost) an.

  3. Klicken Sie oben auf der Seite auf Löschen:

    Screenshot: VM-Instanz 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:

  1. Rufen Sie auf Ihrem lokalen Computer die Website für den Chrome Remote Desktop mit der Liste für Remote-Geräte auf.
  2. Klicken Sie neben dem Instanznamen crdhost auf .
  3. Klicken Sie auf OK, um zu bestätigen, dass die Remote-Geräteverbindung deaktiviert werden soll.

Nächste Schritte