Linux Virtual Delivery Agent

Schnelle Installation mit Easy Install (empfohlen)

Wichtig:

Bei Neuinstallationen wird dieser Artikel für eine schnelle Installation empfohlen. Der Artikel beschreibt die einzelnen Schritte zum Installieren und Konfigurieren des Linux VDA mit Easy Install. Easy Install spart Zeit und Arbeitskraft und ist weniger fehleranfällig als eine manuelle Installation. Sie können hiermit eine Umgebung zum Ausführen des Linux VDA einrichten, wobei die erforderlichen Pakete automatisch installiert und die Konfigurationsdateien automatisch angepasst werden.

Schritt 1: Vorbereiten der Konfigurationsinformationen und der Linux-Maschine

Halten Sie die folgenden Konfigurationsinformationen für Easy Install bereit:

  • Hostname: Hostname der Maschine, auf der der Linux VDA installiert werden soll
  • IP-Adresse des Domänennamenservers
  • IP-Adresse oder Zeichenfolgenname des NTP-Servers
  • Domänenname: Der kurze NetBIOS-Name der Active Directory-Domäne
  • Bereichsname: Der Kerberos-Bereichsname
  • FQDN der Active Directory-Domäne: Vollqualifizierter Domänenname

Wichtig :

  • Für die Installation des Linux VDA muss sichergestellt sein, dass die Repositorys der Linux-Maschine richtig hinzugefügt wurden.
  • Zum Starten einer Sitzung muss sichergestellt sein, dass das X Window System und die Desktopumgebungen installiert sind.

Überlegungen

  • Der Arbeitsgruppenname ist standardmäßig der Domänenname. Mit folgenden Schritten passen Sie die Arbeitsgruppe in Ihrer Umgebung an:

    a. Erstellen Sie die Datei /tmp/ctxinstall.conf auf der Linux VDA-Maschine.
    b. Fügen Sie der Datei die Zeile “workgroup=<your workgroup>” hinzu und speichern Sie die Änderung.

  • Centrify unterstützt keine reine IPv6-DNS-Konfiguration. Es ist mindestens ein DNS-Server mit IPv4 in /etc/resolv.conf für adclient erforderlich, damit die AD-Dienste ordnungsgemäß gefunden werden.

    Protokoll:

     ADSITE   : Check that this machine's subnet is in a site known by AD   : Failed
              : This machine's subnet is not known by AD.
              : We guess you should be in the site Site1.
     <!--NeedCopy-->
    

    Das Problem tritt nur bei Centrify und dessen Konfiguration auf. Führen Sie folgende Schritte aus, um das Problem zu beheben:

    a. Öffnen Sie Verwaltungstools auf dem Domänencontroller.
    b. Wählen Sie Active Directory-Standorte und -Dienste aus.
    c. Geben Sie in Subnetze eine richtige Subnetzadresse ein.

  • Gehen Sie folgendermaßen vor, um den VDA einer Organisationseinheit anzufügen:

    1. Stellen Sie sicher, dass die OU auf dem Domänencontroller vorhanden ist.

      Ein OU-Beispiel sehen Sie im folgenden Screenshot.

      Abbildung einer Beispiel-OU

    2. Erstellen Sie die Datei /tmp/ctxinstall.conf auf dem VDA.
    3. Fügen Sie der Datei /tmp/ctxinstall.conf die Zeile ou=<your ou> hinzu.

      OU-Werte variieren je nach AD-Methode. Weitere Informationen bietet die folgende Tabelle.

      OS Winbind SSSD Centrify PBIS
      Amazon Linux 2 ou=”Linux/amazon” ou=”Linux/amazon” ou=”XD.LOCAL/Linux/amazon” ou=”Linux/amazon”
      Debian ou=”Linux/debian” ou=”Linux/debian” ou=”XD.LOCAL/Linux/debian” ou=”Linux/debian”
      RHEL 8 ou=”OU=redhat,OU=Linux” ou=”OU=redhat,OU=Linux” ou=”XD.LOCAL/Linux/redhat” ou=”Linux/redhat”
      RHEL 7 ou=”Linux/redhat” ou=”Linux/redhat” ou=”XD.LOCAL/Linux/redhat” ou=”Linux/redhat”
      SUSE ou=”Linux/suse” ou=”Linux/suse” ou=”XD.LOCAL/Linux/suse” ou=”Linux/suse”
      Ubuntu ou=”Linux/ubuntu” ou=”Linux/ubuntu” ou=”XD.LOCAL/Linux/ubuntu” ou=”Linux/ubuntu”
  • Easy Install unterstützt reines IPv6 ab Linux VDA 7.16. Es gelten folgende Voraussetzungen und Einschränkungen:

    • Ihr Linux-Repository muss so konfiguriert sein, dass die erforderlichen Pakete über reine IPv6-Netzwerke heruntergeladen werden können.
    • Centrify wird in reinen IPv6-Netzwerken nicht unterstützt.

    Hinweis:

    Wenn Sie ein reines IPv6-Netzwerk haben und alle Eingaben im richtigen IPv6-Format sind, registriert sich der VDA beim Delivery Controller über IPv6. Bei einem Hybridstack mit IPv4 und IPv6 bestimmt der Typ der ersten DNS-IP-Adresse, ob für die Registrierung IPv4 oder IPv6 verwendet wird.

  • Wenn Sie Centrify als Methode zum Domänenbeitritt wählen, benötigt das Skript ctxinstall.sh das Centrify-Paket. Es gibt zwei Möglichkeiten für ctxinstall.sh, das Centrify-Paket abzurufen:

  • Wenn Sie PBIS als Methode zum Domänenbeitritt wählen, benötigt das Skript ctxinstall.sh das PBIS-Paket. Es gibt zwei Möglichkeiten für ctxinstall.sh, das PBIS-Paket abzurufen:

    • Mit Easy Install wird das PBIS-Paket automatisch über das Internet heruntergeladen. Dies sind die URLs für die Distributionen:

      CentOS 7, RHEL 7, SUSE 12.5: wget https://github.com/BeyondTrust/pbis-open/releases/download/8.8.0/pbis-open-8.8.0.506.linux.x86_64.rpm.sh

      Amazon Linux 2, CentOS 8, RHEL 8, SUSE 15.3, SUSE 15.2: wget https://github.com/BeyondTrust/pbis-open/releases/download/9.1.0/pbis-open-9.1.0.551.linux.x86_64.rpm.sh

      Debian, Ubuntu: wget https://github.com/BeyondTrust/pbis-open/releases/download/8.8.0/pbis-open-8.8.0.506.linux.x86_64.deb.sh

    • Rufen Sie eine bestimmte Version des PBIS-Pakets im Internet ab. Dazu ändern Sie in der Datei /opt/Citrix/VDA/sbin/ctxinstall.sh die Zeile “pbisDownloadPath”, um die URL des PBIS-Pakets anzugeben.

      Ein Beispiel sehen Sie im folgenden Screenshot:

      Abrufen einer bestimmten Version des PBIS-Pakets

Schritt 2: Vorbereiten des Hypervisors

Wenn Sie den Linux VDA als virtuelle Maschine auf einem unterstützten Hypervisor ausführen, sind einige Änderungen erforderlich. Nehmen Sie entsprechend der verwendeten Hypervisorplattform die folgenden Änderungen vor. Wenn Sie die Linux-Maschine auf Bare-Metal-Hardware ausführen, sind keine Änderungen erforderlich.

Festlegen der Zeitsynchronisierung auf Citrix Hypervisor

Wenn das Zeitsynchronisierungsfeature auf Citrix Hypervisor aktiviert ist, treten auf den paravirtualisierten Linux-VMs Probleme auf, da NTP und Citrix Hypervisor gleichzeitig versuchen, die Systemuhr zu verwalten. Damit es nicht zu Zeitabweichungen zwischen der Uhr und den anderen Servern kommt, muss die Systemuhr aller Linux-Gäste mit dem NTP synchronisiert werden. In diesem Fall muss die Hostzeitsynchronisierung deaktiviert werden. Im HVM-Modus sind keine Änderungen erforderlich.

Auf einigen Linux-Distributionen, auf denen ein paravirtualisierter Linux-Kernel mit installierten Citrix VM Tools ausgeführt wird, können Sie direkt in der Linux-VM prüfen, ob das Citrix Hypervisor- Zeitsynchronisierungsfeature vorhanden und aktiviert ist:

su -

cat /proc/sys/xen/independent_wallclock
<!--NeedCopy-->

Dieser Befehl gibt 0 oder 1 zurück:

  • 0: Das Zeitsynchronisierungsfeature ist aktiviert und muss deaktiviert werden.
  • 1: Das Zeitsynchronisierungsfeature ist deaktiviert und keine weitere Aktion ist erforderlich.

Wenn die Datei /proc/sys/xen/independent_wallclock nicht vorhanden ist, sind die folgenden Schritte nicht erforderlich.

Wenn das Zeitsynchronisierungsfeature aktiviert ist, deaktivieren Sie es, indem Sie 1 in die Datei eingeben:

sudo echo 1 > /proc/sys/xen/independent_wallclock
<!--NeedCopy-->

Damit die Änderung permanent wird und nach dem Neustart erhalten bleibt, fügen Sie in der Datei /etc/sysctl.conf die folgende Zeile hinzu:

xen.independent_wallclock = 1

Starten Sie das System neu, um die Änderungen zu überprüfen:

su -

cat /proc/sys/xen/independent_wallclock
<!--NeedCopy-->

Dieser Befehl gibt den Wert 1 zurück.

Festlegen der Zeitsynchronisierung auf Microsoft Hyper-V

Linux-VMs, auf denen Hyper-V Linux-Integrationsdienste installiert sind, können mit dem Hyper-V-Zeitsynchronisierungsfeature die Systemzeit des Hostbetriebssystems verwenden. Um sicherzustellen, dass die Betriebssystemzeit korrekt ist, müssen Sie das Feature zusätzlich zu den NTP-Diensten aktivieren.

Auf dem verwaltenden Betriebssystem:

  1. Öffnen Sie die Hyper-V-Manager-Konsole.
  2. Wählen Sie für die Einstellungen einer Linux-VM Integration Services aus.
  3. Stellen Sie sicher, dass Time synchronization ausgewählt ist.

Hinweis:

Diese Methode unterscheidet sich von VMware und Citrix Hypervisor, wo die Hostzeitsynchronisierung deaktiviert ist, um Konflikte mit dem NTP zu vermeiden. Hyper-V-Zeitsynchronisierung kann gleichzeitig mit der NTP-Zeitsynchronisierung bestehen und sie ergänzen.

Festlegen der Zeitsynchronisierung auf ESX und ESXi

Wenn das VMware-Zeitsynchronisierungsfeature aktiviert ist, treten auf den paravirtualisierten Linux-VMs Probleme auf, da NTP und der Hypervisor gleichzeitig versuchen, die Systemuhr zu synchronisieren. Damit es nicht zu Zeitabweichungen zwischen der Uhr und den anderen Servern kommt, muss die Systemuhr aller Linux-Gäste mit dem NTP synchronisiert werden. In diesem Fall muss die Hostzeitsynchronisierung deaktiviert werden.

Wenn Sie einen paravirtualisierten Linux-Kernel ausführen und VMware-Tools installiert sind:

  1. Öffnen Sie den vSphere-Client.
  2. Bearbeiten Sie die Einstellungen für die Linux-VM.
  3. Öffnen Sie im Dialogfeld Virtual Machine Properties die Registerkarte Options.
  4. Wählen Sie VMware Tools.
  5. Deaktivieren Sie im Feld Advanced das Kontrollkästchen Synchronize guest time with host.

Schritt 3: (nur Ubuntu 16.04) Installieren von OpenJDK 11

Installieren Sie unter Ubuntu 16.04 OpenJDK 11, indem Sie die folgenden Schritte ausführen:

  1. Laden Sie OpenJDK 11 von https://jdk.java.net/archive/ herunter.
  2. Führen Sie den Befehl tar zxf openjdk-11.0.2_linux-x64_bin.tar.gz zum Entpacken des heruntergeladenen Pakets aus
  3. (Optional) Führen Sie den Befehl mv jdk-11.0.2/ <target directory> aus, um OpenJDK in einem Zielverzeichnis zu speichern.
  4. Führen Sie den Befehl update-alternatives --install /usr/bin/java java <custom directory>/bin/java 2000 zum Einrichten der Java-Laufzeit aus.
  5. Führen Sie den Befehl java -version aus, um die Java-Version zu überprüfen.

Schritt 4: Installieren von .NET Core Runtime 3.1 als Voraussetzung

Installieren Sie vor der Installation des Linux VDA .NET Core Runtime 3.1 gemäß den Anweisungen unter https://docs.microsoft.com/en-us/dotnet/core/install/linux-package-managers.

Führen Sie nach der Installation von .NET Core Runtime 3.1 den Befehl which dotnet aus, um Ihren Laufzeitpfad zu finden.

Legen Sie basierend auf der Ausgabe des Befehls den Binärpfad für die .NET Core-Laufzeitumgebung fest. Wenn die Befehlsausgabe beispielsweise /aa/bb/dotnet ist, verwenden Sie /aa/bb als .NET-Binärpfad.

Schritt 5: Herunterladen des Linux VDA-Pakets

Gehen Sie zur Citrix Virtual Apps and Desktops-Downloadseite. Erweitern Sie die passende Version von Citrix Virtual Apps and Desktops und klicken Sie auf Components, um das für Ihre Linux-Distribution geeignete Linux VDA-Paket herunterzuladen.

Schritt 6: Installieren des Linux VDA-Pakets

Führen Sie die folgenden Befehle aus, um die Umgebung für den Linux VDA einzurichten.

RHEL- und CentOS-Distributionen:

sudo yum  -y localinstall   <PATH>/<Linux VDA RPM>
<!--NeedCopy-->

Für Ubuntu/Debian-Distributionen:

sudo dpkg -i <PATH>/<Linux VDA deb>
sudo apt-get install -f
<!--NeedCopy-->

Hinweis:

Um die notwendigen Abhängigkeiten für eine Debian-Distribution zu installieren, fügen Sie die Zeile deb http://deb.debian.org/debian/ oldstable main in der Datei /etc/apt/sources.list hinzu.

SUSE-Distributionen:

zypper -i install <PATH>/<Linux VDA RPM>
<!--NeedCopy-->

Schritt 7: Einrichten der Laufzeitumgebung für die Linux VDA-Installation

Hinweis:

Stellen Sie vor dem Einrichten der Laufzeitumgebung sicher, dass das Gebietsschema en_US.UTF-8 in Ihrem Betriebssystem installiert ist. Wenn das Gebietsschema in Ihrem Betriebssystem nicht verfügbar ist, führen Sie den Befehl sudo locale-gen en_US.UTF-8 aus. Für Debian bearbeiten Sie die Datei /etc/locale.gen durch Auskommentierung der Zeile # en_US.UTF-8 UTF-8. Führen Sie dann den Befehl sudo locale-gen aus.

Nach der Installation des Linux VDA-Pakets müssen Sie die Laufzeitumgebung konfigurieren, indem Sie das Skript ctxsetup.sh ausführen. Sie können das Skript im interaktiven Modus oder im automatischen Modus ausführen.

Hinweis:

Easy Install scheint nicht zu reagieren, während .NET Core Runtime heruntergeladen wird. Es ist über 27 MB groß. Überprüfen Sie den Downloadfortschritt in /var/log/ctxinstall.log.

Interaktiver Modus:

Führen Sie für eine manuelle Konfiguration den folgenden Befehl aus und geben Sie die entsprechenden Parameter an jeder Eingabeaufforderung ein.

sudo /opt/Citrix/VDA/sbin/ctxinstall.sh
<!--NeedCopy-->

Automatischer Modus:

Um Easy Install im automatischen Modus zu verwenden, müssen Sie die folgenden Umgebungsvariablen vor dem Ausführen von “ctxinstall” festgelegt.

  • CTX_EASYINSTALL_HOSTNAME=host-name – Der Hostname des Linux VDA-Servers.
  • CTX_EASYINSTALL_DNS=ip-address-of-dns – IP-Adresse des DNS.
  • CTX_EASYINSTALL_NTPS=address-of-ntps – IP-Adresse oder Zeichenfolgenname des NTP-Servers.
  • CTX_EASYINSTALL_DOMAIN=domain-name – Der NetBIOS-Name der Domäne.
  • CTX_EASYINSTALL_REALM=realm-name – Der Kerberos-Bereichsname.
  • CTX_EASYINSTALL_FQDN=ad-fqdn-name
  • CTX_EASYINSTALL_ADINTEGRATIONWAY=winbind | sssd | centrify | pbis – Die Active Directory-Integrationsmethode.
  • CTX_EASYINSTALL_USERNAME=domain-user-name – Der Name des Domänenbenutzers; wird zum Domänenbeitritt verwendet.
  • CTX_EASYINSTALL_PASSWORD=password – Das Kennwort des Domänenbenutzers; wird zum Domänenbeitritt verwendet.

ctxsetup.sh verwendet die folgenden Variablen:

  • CTX_XDL_SUPPORT_DDC_AS_CNAME = Y | N – Der Linux VDA unterstützt die Angabe des Namens eines Delivery Controllers mit einem DNS CNAME-Datensatz.
  • CTX_XDL_DDC_LIST=’list-ddc-fqdns’ – Der Linux VDA erfordert eine durch Leerzeichen getrennte Liste vollqualifizierter Domänennamen (FQDNs) für die Registrierung bei einem Delivery Controller. Mindestens ein FQDN oder CNAME muss angegeben werden.
  • CTX_XDL_VDA_PORT=port-number – Der Linux VDA kommuniziert mit Delivery Controllern über einen TCP/IP-Port.
  • CTX_XDL_REGISTER_SERVICE = Y | N – Die Linux Virtual Desktop-Dienste werden nach dem Systemstart gestartet.
  • CTX_XDL_ADD_FIREWALL_RULES=Y | N – Für die Linux Virtual Desktop-Dienste muss die Systemfirewall eingehende Netzwerkverbindungen zulassen. Sie können die erforderlichen Ports (standardmäßig Port 80 und 1494) in der Systemfirewall automatisch für Linux Virtual Desktop öffnen.
  • CTX_XDL_HDX_3D_PRO=Y | N – Linux Virtual Desktop unterstützt HDX 3D Pro – Grafikbeschleunigungstechnologien zum Optimieren der Virtualisierung reichhaltiger Grafikanwendungen. Für HDX 3D Pro muss eine kompatible NVIDIA GRID-Grafikkarte installiert sein. Bei aktiviertem HDX 3D Pro wird der VDA für VDI-Desktopmodus (Einzelsitzungen) konfiguriert (d. h. CTX_XDL_VDI_MODE=Y).
  • CTX_XDL_VDI_MODE=Y | N – Ermöglicht die Konfiguration der Maschine als dediziertes Desktopbereitstellungsmodell (VDI) oder als gehostetes, freigegebenes Desktopbereitstellungsmodell. Legen Sie den Wert bei Umgebungen mit HDX 3D Pro auf “Y” fest.
  • CTX_XDL_SITE_NAME=dns-name – Der Linux VDA ermittelt LDAP-Server über DNS. Geben Sie einen DNS-Sitenamen an, wenn Sie die Suchergebnisse auf eine lokale Site beschränken möchten. Wenn dies unnötig ist, legen Sie <none> fest.
  • CTX_XDL_LDAP_LIST=’list-ldap-servers’ – Der Linux VDA fragt DNS zur Erkennung von LDAP-Servern ab. Falls DNS keine LDAP-Diensteinträge bereitstellen kann, können Sie eine durch Leerzeichen getrennte Liste der FQDNs mit LDAP-Port angeben. Beispiel: ad1.mycompany.com:389. Wenn dies unnötig ist, legen Sie <none> fest.
  • CTX_XDL_SEARCH_BASE=search-base-set – Die Suchbasis bei LDAP-Abfragen des Linux VDA ist das Stammverzeichnis der Active Directory-Domäne (z. B. DC=mycompany,DC=com). Zur Verbesserung der Suchleistung können Sie eine Suchbasis angeben (z. B. OU=VDI,DC=mycompany,DC=com). Wenn dies unnötig ist, legen Sie <none> fest.
  • CTX_XDL_FAS_LIST=’list-fas-servers’ – Die Server für den Verbundauthentifizierungsdienst (FAS) werden über die AD-Gruppenrichtlinie konfiguriert. Der Linux VDA unterstützt die AD-Gruppenrichtlinie nicht, Sie können jedoch stattdessen eine durch Semikolons getrennte Liste mit FAS-Servern angeben. Die Reihenfolge muss mit der Reihenfolge in der AD-Gruppenrichtlinie übereinstimmen. Wenn eine Serveradresse entfernt wird, füllen Sie die leere Stelle mit der Textzeichenfolge <none> auf und ändern nicht die Reihenfolge der Serveradressen.
  • CTX_XDL_DOTNET_ RUNTIME_PATH=path-to-install-dotnet-runtime – Der Pfad für die Installation von .NET Core Runtime 3.1 zur Unterstützung des neuen Brokeragentdiensts (ctxvda). Der Standardpfad ist /usr/bin.
  • CTX_XDL_DESKTOP _ENVIRONMENT=gnome/mate: Legt die GNOME- oder MATE-Desktopumgebung zur Verwendung in Sitzungen fest. Wenn Sie die Variable nicht spezifizieren, wird der aktuell auf dem VDA installierte Desktop verwendet. Ist der aktuell installierte Desktop MATE, müssen Sie allerdings die Variable auf mate festlegen.

    Hinweis:

    Sie können die Desktopumgebung für Sitzungsbenutzer auch über die folgenden Schritte ändern:

    1. Erstellen Sie die Datei .xsession auf dem VDA im Verzeichnis $HOME/<username>.
    2. Geben Sie in der Datei .xsession eine auf Distributionen basierende Desktopumgebung an.

      For MATE desktop on CentOS, Ubuntu, and Debian

      MSESSION=”$(type -p mate-session)”
      if [ -n “$MSESSION” ]; then
      exec mate-session
      fi

      GNOME-Desktop unter CentOS

      GSESSION=”$(type -p gnome-session)”
      if [ -n “$GSESSION” ]; then

         export GNOME_SHELL_SESSION_MODE=classic  
         exec gnome-session --session=gnome-classic      fi   **For GNOME desktop on Ubuntu and Debian**
      

      GSESSION=”$(type -p gnome-session)”
      if [ -n “$GSESSION” ]; then

         exec gnome-session      fi  
      
    3. Teilen Sie die Dateiberechtigung 700 mit dem Benutzer der Zielsitzung.
  • CTX_XDL_START_SERVICE=Y | N – Legt fest, ob die Linux VDA-Dienste gestartet werden, wenn die Konfiguration abgeschlossen ist.
  • CTX_XDL_TELEMETRY_SOCKET_PORT: Der Socketport zur Überwachung auf Citrix Scout. Der Standardport ist 7503.
  • CTX_XDL_TELEMETRY_PORT: Der Port für die Kommunikation mit Citrix Scout. Der Standardport ist 7502.

Wenn ein Parameter nicht festgelegt ist, wird die Installation in den interaktiven Modus versetzt und eine Benutzereingabe ist erforderlich. Selbst wenn alle Parameter bereits über die Umgebungsvariablen festgelegt sind, fordert das Skript ctxinstall.sh zur Eingabe des Pfads zur Installation von .NET Core Runtime 3.1 auf.

Im automatischen Modus müssen Sie erst die folgenden Befehle ausführen, um die Umgebungsvariablen einzurichten. Führen Sie dann das Skript ctxinstall.sh aus.

export CTX_EASYINSTALL_HOSTNAME=host-name

export CTX_EASYINSTALL_DNS=ip-address-of-dns

export CTX_EASYINSTALL_NTPS=address-of-ntps

export CTX_EASYINSTALL_DOMAIN=domain-name

export CTX_EASYINSTALL_REALM=realm-name

export CTX_EASYINSTALL_FQDN=ad-fqdn-name

export CTX_EASYINSTALL_ADINTEGRATIONWAY=winbind | sssd | centrify | pbis

export CTX_EASYINSTALL_USERNAME=domain-user-name

export CTX_EASYINSTALL_PASSWORD=password

export CTX_XDL_SUPPORT_DDC_AS_CNAME=Y | N

export CTX_XDL_DDC_LIST=‘list-ddc-fqdns’

export CTX_XDL_VDA_PORT=port-number

export CTX_XDL_REGISTER_SERVICE=Y | N

export CTX_XDL_ADD_FIREWALL_RULES=Y | N

export CTX_XDL_HDX_3D_PRO=Y | N

export CTX_XDL_VDI_MODE=Y | N

export CTX_XDL_SITE_NAME=dns-site-name | '<none>'

export CTX_XDL_LDAP_LIST=‘list-ldap-servers’ | '<none>'

export CTX_XDL_SEARCH_BASE=search-base-set | '<none>'

export CTX_XDL_FAS_LIST=‘list-fas-servers’ | '<none>'

export CTX_XDL_DOTNET_RUNTIME_PATH=path-to-install-dotnet-runtime

export CTX_XDL_DESKTOP_ENVIRONMENT= gnome | mate | '<none>'

export CTX_XDL_TELEMETRY_SOCKET_PORT=port-number

export CTX_XDL_TELEMETRY_PORT=port-number

export CTX_XDL_START_SERVICE=Y | N

sudo -E /opt/Citrix/VDA/sbin/ctxinstall.sh
<!--NeedCopy-->

Sie müssen die Option -E mit dem Befehl “sudo” angeben, damit die vorhandenen Umgebungsvariablen an die neu erstellte Shell weitergegeben werden. Wir empfehlen, dass Sie mit den oben aufgeführten Befehlen eine Shellskriptdatei erstellen, deren erste Zeile #!/bin/bash enthält.

Alternativ können Sie alle Parameter mit einem einzigen Befehl festlegen:

sudo CTX_XDL_SUPPORT_DDC_AS_CNAME=Y|N \

CTX_XDL_DDC_LIST=‘list-ddc-fqdns’ \

CTX_XDL_VDA_PORT=port-number \

CTX_XDL_REGISTER_SERVICE=Y|N \

CTX_XDL_ADD_FIREWALL_RULES=Y|N \

CTX_XDL_AD_INTEGRATION=1|2|3|4 \

CTX_XDL_HDX_3D_PRO=Y|N \

CTX_XDL_VDI_MODE=Y|N \

CTX_XDL_SITE_NAME=dns-name \

CTX_XDL_LDAP_LIST=‘list-ldap-servers’ \

CTX_XDL_SEARCH_BASE=search-base-set \

CTX_XDL_FAS_LIST=‘list-fas-servers’ \

CTX_XDL_DOTNET_RUNTIME_PATH=path-to-install-dotnet-runtime \

CTX_XDL_DESKTOP_ENVIRONMENT=gnome | mate \

CTX_XDL_TELEMETRY_SOCKET_PORT=port-number \

CTX_XDL_TELEMETRY_PORT=port-number \

CTX_XDL_START_SERVICE=Y|N \

/opt/Citrix/VDA/sbin/ctxsetup.sh
<!--NeedCopy-->

Schritt 8: Ausführen von XDPing

Mit sudo /opt/Citrix/VDA/bin/xdping können Sie Linux VDA-Umgebungen auf häufige Konfigurationsprobleme überprüfen. Weitere Informationen finden Sie unter XDPing.

Schritt 9: Ausführen des Linux VDA

Starten Sie den Linux VDA:

Starten der Linux VDA-Dienste:

sudo /sbin/service ctxhdx start

sudo /sbin/service ctxvda start
<!--NeedCopy-->

Halten Sie den Linux VDA an:

Anhalten der Linux VDA-Dienste:

sudo /sbin/service ctxvda stop

sudo /sbin/service ctxhdx stop
<!--NeedCopy-->

Hinweis:

Beenden Sie erst den Monitor Service Daemon mit dem Befehl service ctxmonitorservice stop, bevor Sie die Dienste ctxvda und ctxhdx anhalten. Andernfalls startet der Monitor Service Daemon die angehaltenen Dienste neu.

Starten Sie den Linux VDA neu:

Neustarten der Linux VDA-Dienste:

sudo /sbin/service ctxvda stop

sudo /sbin/service ctxhdx restart

sudo /sbin/service ctxvda start
<!--NeedCopy-->

Überprüfen Sie den Linux VDA-Status:

Überprüfen des Ausführungsstatus der Linux VDA-Dienste:

sudo /sbin/service ctxvda status

sudo /sbin/service ctxhdx status
<!--NeedCopy-->

Schritt 10: Erstellen des Maschinenkatalogs in Citrix Virtual Apps oder Citrix Virtual Desktops

Der Prozess zum Erstellen von Maschinenkatalogen und Hinzufügen von Linux VDA-Maschinen ähnelt der traditionellen Windows VDA-Methode. Umfassendere Informationen zu diesen Prozessen finden Sie unter Erstellen von Maschinenkatalogen und Verwalten von Maschinenkatalogen.

Beim Erstellen von Maschinenkatalogen mit Linux VDA-Maschinen gibt es einige Einschränkungen, durch die sich der Prozess von der Maschinenkatalogerstellung für Windows VDA-Maschinen unterscheidet:

  • Auswahl des Betriebssystems:
    • Die Option Betriebssystem für mehrere Sitzungen für ein gehostetes, freigegebenes Desktopbereitstellungsmodell.
    • Die Option Betriebssystem für Einzelsitzungen für ein VDI-dediziertes Desktopbereitstellungsmodell.
  • In einem Maschinenkatalog darf sich keine Mischung aus Linux und Windows VDA-Maschinen befinden.

Hinweis:

In früheren Citrix Studio-Versionen wurde Linux als Betriebssystem nicht unterstützt. Durch die Auswahl von Windows-Serverbetriebssystem oder Serverbetriebssystem wird jedoch ein äquivalentes gehostetes, freigegebenes Desktopbereitstellungsmodell bereitgestellt. Durch die Auswahl von Windows-Desktopbetriebssystem oder Desktopbetriebssystem wird ein Bereitstellungsmodell für Einzelbenutzermaschinen bereitgestellt.

Tipp:

Wenn Sie eine Maschine aus einer Active Directory-Domäne entfernen und sie ihr dann wieder hinzufügen, muss die Maschine auch aus dem Maschinenkatalog entfernt und ihm dann erneut hinzugefügt werden.

Schritt 11: Erstellen der Bereitstellungsgruppe in Citrix Virtual Apps oder Citrix Virtual Desktops

Die Prozesse zum Erstellen einer Bereitstellungsgruppe und zum Hinzufügen von Maschinenkatalogen mit Linux VDA- bzw. Windows VDA-Maschinen sind fast identisch. Umfassendere Informationen zu diesen Prozessen finden Sie unter Erstellen von Bereitstellungsgruppen.

Beim Erstellen von Bereitstellungsgruppen mit Linux VDA-Maschinenkatalogen gelten die folgenden Einschränkungen:

  • Stellen Sie sicher, dass die ausgewählten Active Directory-Benutzer und -Gruppen für die Anmeldung an Linux VDA-Maschinen richtig konfiguriert wurden.
  • Lassen Sie nicht die Anmeldung nicht authentifizierter (anonymer) Benutzer zu.
  • Die Bereitstellungsgruppe darf keine Maschinenkataloge mit Windows Maschinen enthalten.

Wichtig : Die Veröffentlichung von Anwendungen wird unter Linux VDA-Version 1.4 und höher unterstützt. Der Linux VDA unterstützt jedoch keine Bereitstellung von Desktops und Anwendungen für dieselbe Maschine.

Informationen zum Erstellen von Maschinenkatalogen und Bereitstellungsgruppen finden Sie unter Citrix Virtual Apps and Desktops 7 2112.

Problembehandlung

Verwenden Sie die Informationen in diesem Abschnitt, um Probleme zu beheben, die sich aus der Verwendung von Easy Install ergeben können.

Fehler beim Beitreten zu einer Domäne mit SSSD

Beim Versuch, einer Domäne beizutreten, kann ein Fehler auftreten, wobei die Ausgabe ähnlich wie das folgende Ergebnis aussieht (siehe Protokolle):

Step 6: join Domain!Enter ctxadmin's password:Failed to join domain: failed to lookup DC info for domain 'CITRIXLAB.LOCAL' over rpc: The network name cannot be found

/var/log/xdl/vda.log:

2016-11-04 02:11:52.317 [INFO ] - The Citrix Desktop Service successfully obtained the following list of 1 delivery controller(s) with which to register: 'CTXDDC.citrixlab.local (10.158.139.214)'.
2016-11-04 02:11:52.362 [ERROR] - RegistrationManager.AttemptRegistrationWithSingleDdc: Failed to register with http://CTXDDC.citrixlab.local:80/Citrix/CdsController/IRegistrar. Error: General security error (An error occurred in trying to obtain a TGT: Client not found in Kerberos database (6))
2016-11-04 02:11:52.362 [ERROR] - The Citrix Desktop Service cannot connect to the delivery controller 'http://CTXDDC.citrixlab.local:80/Citrix/CdsController/IRegistrar' (IP Address '10.158.139.214')
Check the following:- The system clock is in sync between this machine and the delivery controller.
-  The Active Directory provider (e.g. winbind daemon) service is running and correctly configured.
-  Kerberos is correctly configured on this machine.
If the problem persists, please refer to Citrix Knowledge Base article CTX117248 for further information.
Error Details:
Exception 'General security error (An error occurred in trying to obtain a TGT: Client not found in Kerberos database (6))' of type 'class javax.xml.ws.soap.SOAPFaultException'.
2016-11-04 02:11:52.362 [INFO ] - RegistrationManager.AttemptRegistrationWithSingleDdc: The current time for this VDA is Fri Nov 04 02:11:52 EDT 2016.
Ensure that the system clock is in sync between this machine and the delivery controller.
Verify the NTP daemon is running on this machine and is correctly configured.
2016-11-04 02:11:52.364 [ERROR] - Could not register with any controllers. Waiting to try again in 120000 ms. Multi-forest - false
2016-11-04 02:11:52.365 [INFO ] - The Citrix Desktop Service failed to register with any controllers in the last 470 minutes.
<!--NeedCopy-->

/var/log/messages:

Nov 4 02:15:27 RH-WS-68 [sssd[ldap_child[14867]]]: Failed to initialize credentials using keytab [MEMORY:/etc/krb5.keytab]: Client 'RH-WS-68$@CITRIXLAB.LOCAL' not found in Kerberos database. Unable to create GSSAPI-encrypted LDAP connection.Nov 4 02:15:27 RH-WS-68 [sssd[ldap_child[14867]]]: Client 'RH-WS-68$@CITRIXLAB.LOCAL' not found in Kerberos database

Lösen des Problems:

  1. Führen Sie den Befehl rm -f /etc/krb5.keytab aus.
  2. Führen Sie den Befehl net ads leave $REALM -U $domain-administrator aus.
  3. Entfernen Sie den Maschinenkatalog und die Bereitstellungsgruppe vom Delivery Controller.
  4. Führen Sie /opt/Citrix/VDA/sbin/ctxinstall.sh aus.
  5. Erstellen Sie den Maschinenkatalog und die Bereitstellungsgruppe auf dem Delivery Controller.

Grauer Bildschirm bei Ubuntu Desktopsitzungen

Dieses Problem tritt auf, wenn Sie eine Sitzung starten, die dann in einem leeren Desktop blockiert wird. Darüber hinaus zeigt die Konsole der Maschine bei der Anmeldung mit einem lokalen Benutzerkonto einen grauen Bildschirm an.

Lösen des Problems:

  1. Führen Sie den Befehl sudo apt-get update aus.
  2. Führen Sie den Befehl sudo apt-get install unity lightdm aus.
  3. Fügen Sie folgende Zeile zu hinzu /etc/lightdm/lightdm.conf:
    greeter-show-manual-login=true

Ubuntu Desktop-Sitzungen können aufgrund des fehlenden Homeverzeichnisses nicht gestartet werden

/var/log/xdl/hdx.log:

2016-11-02 13:21:19.015 <P22492:S1> citrix-ctxlogin: StartUserSession: failed to change to directory(/home/CITRIXLAB/ctxadmin) errno(2)

2016-11-02 13:21:19.017 <P22227> citrix-ctxhdx: logSessionEvent: Session started for user ctxadmin.

2016-11-02 13:21:19.023 <P22492:S1> citrix-ctxlogin: ChildPipeCallback: Login Process died: normal.

2016-11-02 13:21:59.217 <P22449:S1> citrix-ctxgfx: main: Exiting normally.
<!--NeedCopy-->

Tipp:

Die Ursache dieses Problems ist, dass das Homeverzeichnis nicht für den Domänenadministrator erstellt wurde.

Lösen des Problems:

  1. Geben Sie an einer Befehlszeile pam-auth-update ein.

  2. Überprüfen Sie im angezeigten Dialogfeld, ob Create home directory login ausgewählt ist.

    Abbildung "Ubuntu kann keine Sitzung starten"

Sitzung wird nicht gestartet oder wird mit dbus-Fehler schnell beendet

/var/log/messages (für RHEL oder CentOS):

Oct 27 04:17:16 CentOS7 citrix-ctxhdx[8978]: Session started for user CITRIXLAB\ctxadmin.

Oct 27 04:17:18 CentOS7 kernel: traps: gnome-session[19146] trap int3 ip:7f89b3bde8d3 sp:7fff8c3409d0 error:0

Oct 27 04:17:18 CentOS7 gnome-session[19146]: ERROR: Failed to connect to system bus: Exhausted all available authentication mechanisms (tried: EXTERNAL, DBUS_COOKIE_SHA1, ANONYMOUS) (available: EXTERNAL, DBUS_COOKIE_SHA1, ANONYMOUS)#012aborting...

Oct 27 04:17:18 CentOS7 gnome-session: gnome-session[19146]: ERROR: Failed to connect to system bus: Exhausted all available authentication mechanisms (tried: EXTERNAL, DBUS_COOKIE_SHA1, ANONYMOUS) (available: EXTERNAL, DBUS_COOKIE_SHA1, ANONYMOUS)

Oct 27 04:17:18 CentOS7 gnome-session: aborting...

Oct 27 04:17:18 CentOS7 citrix-ctxgfx[18981]: Exiting normally.

Oct 27 04:17:18 CentOS7 citrix-ctxhdx[8978]: Session stopped for user CITRIXLAB\ctxadmin.
<!--NeedCopy-->

Für Ubuntu-Distributionen können Sie auch das Protokoll /var/log/syslog verwenden:

Nov  3 11:03:52 user01-HVM-domU pulseaudio[25326]: [pulseaudio] pid.c: Stale PID file, overwriting.

Nov  3 11:03:52 user01-HVM-domU pulseaudio[25326]: [pulseaudio] bluez5-util.c: Failed to get D-Bus connection: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.

Nov  3 11:03:52 user01-HVM-domU pulseaudio[25326]: [pulseaudio] hashmap.c: Assertion 'h' failed at pulsecore/hashmap.c:116, function pa_hashmap_free(). Aborting.

Nov  3 11:03:52 user01-HVM-domU pulseaudio[25352]: [pulseaudio] core-util.c: Failed to connect to system bus: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.

Nov  3 11:03:52 user01-HVM-domU pulseaudio[25352]: message repeated 10 times: [ [pulseaudio] core-util.c: Failed to connect to system bus: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.]

Nov  3 11:03:52 user01-HVM-domU pulseaudio[25352]: [pulseaudio] pid.c: Daemon already running.Nov  3 11:03:58 user01-HVM-domU citrix-ctxgfx[24693]: Exiting normally
<!--NeedCopy-->

Einige Gruppen oder Module werden erst nach einem Neustart wirksam. Wenn im Protokoll Fehlermeldungen zu dbus angezeigt werden, empfehlen wir, das System neu zu starten und den Vorgang zu wiederholen.

SELinux hindert SSHD am Zugriff auf das Homeverzeichnis

Der Benutzer kann eine Sitzung starten, er kann sich jedoch nicht anmelden.

/var/log/ctxinstall.log:

Jan 25 23:30:31 yz-rhel72-1 setroubleshoot[3945]: SELinux is preventing /usr/sbin/sshd from setattr access on the directory /root. For complete SELinux messages. run sealert -l 32f52c1f-8ff9-4566-a698-963a79f16b81

Jan 25 23:30:31 yz-rhel72-1 python[3945]: SELinux is preventing /usr/sbin/sshd from setattr access on the directory /root.

*****  Plugin catchall_boolean (89.3 confidence) suggests   ******************

If you want to allow polyinstantiation to enabled

   Then you must tell SELinux about this by enabling the 'polyinstantiation_enabled' boolean.

You can read 'None' man page for more details.

    Do

       setsebool -P polyinstantiation_enabled 1

*****  Plugin catchall (11.6 confidence) suggests   **************************

If you believe that sshd should be allowed setattr access on the root directory by default.

Then you should report this as a bug.

You can generate a local policy module to allow this access.

      Do

       allow this access for now by executing:

       # grep sshd /var/log/audit/audit.log | audit2allow -M mypol

# semodule -i mypol.pp
<!--NeedCopy-->

Lösen des Problems:

  1. Deaktivieren Sie SELinux, indem Sie die folgende Änderung an /etc/selinux/config vornehmen:

    SELINUX=disabled

  2. Starten Sie den VDA neu.