Linux Virtual Delivery Agent

USB-Umleitung konfigurieren

USB-Geräte werden zwischen der Citrix Workspace™-App und dem Linux VDA-Desktop gemeinsam genutzt. Wenn ein USB-Gerät auf den Desktop umgeleitet wird, können Sie das USB-Gerät so verwenden, als wäre es lokal verbunden.

Tipp: | > | | | Wir empfehlen die Verwendung der USB-Umleitung, wenn die Netzwerklatenz weniger als 100 Millisekunden beträgt. Verwenden Sie die USB-Umleitung nicht, wenn die Netzwerklatenz höher als 200 Millisekunden ist.

  • Die USB-Umleitung umfasst drei Hauptfunktionsbereiche:

  • Open-Source-Projektimplementierung (VHCI)
  • VHCI-Dienst
  • USB-Dienst

Open-Source-VHCI:

Dieser Teil der USB-Umleitungsfunktion entwickelt ein allgemeines USB-Gerätefreigabesystem über ein IP-Netzwerk. Es besteht aus einem Linux-Kernel-Treiber und einigen Benutzermodus-Bibliotheken, die die Kommunikation mit dem Kernel-Treiber ermöglichen, um alle USB-Daten zu erhalten. In der Linux VDA-Implementierung verwendet Citrix den Kernel-Treiber von VHCI wieder. Alle USB-Datenübertragungen zwischen dem Linux VDA und der Citrix Workspace-App werden jedoch im Citrix ICA®-Protokollpaket gekapselt.

VHCI-Dienst:

Der VHCI-Dienst ist ein von Citrix bereitgestellter Open-Source-Dienst zur Kommunikation mit dem VHCI-Kernelmodul. Dieser Dienst fungiert als Gateway zwischen VHCI und dem Citrix USB-Dienst.

USB-Dienst:

Der USB-Dienst fungiert als Citrix-Modul, das die gesamte Virtualisierung und Datenübertragung auf dem USB-Gerät verwaltet.

Funktionsweise der USB-Umleitung

Normalerweise werden, wenn ein USB-Gerät erfolgreich an den Linux VDA umgeleitet wird, ein oder mehrere Geräteknoten im Systempfad /dev erstellt. Manchmal ist das umgeleitete Gerät jedoch für eine aktive Linux VDA-Sitzung nicht nutzbar. USB-Geräte sind auf Treiber angewiesen, um ordnungsgemäß zu funktionieren, und einige Geräte erfordern spezielle Treiber. Wenn keine Treiber bereitgestellt werden, sind die umgeleiteten USB-Geräte für die aktive Linux VDA-Sitzung nicht zugänglich. Um die Konnektivität von USB-Geräten sicherzustellen, installieren Sie die Treiber und konfigurieren Sie das System ordnungsgemäß.

Der Linux VDA unterstützt eine Liste von USB-Geräten, die erfolgreich zum und vom Client umgeleitet werden.

Unterstützte USB-Geräte

Die folgenden Geräte wurden für die Unterstützung dieser Version des Linux VDA verifiziert. Andere Geräte können frei verwendet werden, jedoch mit unerwarteten Ergebnissen:

| >**Hinweis:** | | |

-

Der Linux VDA unterstützt nur USB 2.0-Protokolle.

 
| | | | |    
USB-Massenspeichergerät VID:PID Dateisystem
Netac Technology Co., Ltd 0dd8:173c FAT32
Kingston Datatraveler 101 II 0951:1625 FAT32
Kingston Datatraveler GT101 G2 1567:8902 FAT32
SanDisk SDCZ80 flash drive 0781:5580 FAT32
WD HDD 1058:10B8 FAT32
USB-3D-Maus VID:PID  
3DConnexion SpaceMouse Pro 046d: c62b  
USB-Scanner VID:PID  
Epson Perfection V330 photo 04B8: 0142  

USB-Umleitung konfigurieren

Eine Citrix-Richtlinie steuert, ob die USB-Geräteumleitung aktiviert oder deaktiviert ist. Der Gerätetyp kann auch über eine Delivery Controller™-Richtlinie angegeben werden. Beim Konfigurieren der USB-Umleitung für den Linux VDA konfigurieren Sie die folgenden Richtlinien und Regeln:

-  Client-USB-Geräteumleitungsrichtlinie
  • Client-USB-Geräteumleitungsregeln

USB-Umleitung aktivieren

Aktivieren (oder deaktivieren) Sie in Citrix Studio die USB-Geräteumleitung zum und vom Client (nur für Workstation-Hosts).

Im Dialogfeld Einstellung bearbeiten:

  1. Wählen Sie Zulässig aus.
  2. Klicken Sie auf OK.

USB-Umleitung aktivieren

USB-Umleitungsregeln festlegen

Nachdem Sie die USB-Umleitungsrichtlinie aktiviert haben, legen Sie die Umleitungsregeln in Citrix Studio fest, indem Sie angeben, welche Geräte auf dem Linux VDA zugelassen (oder verweigert) werden.

Im Dialogfeld Client-USB-Geräteumleitungsregeln:

-  1.  Klicken Sie auf **Neu**, um eine Umleitungsregel hinzuzufügen, oder klicken Sie auf **Bearbeiten**, um eine vorhandene Regel zu überprüfen.
  1. Nachdem Sie eine Regel erstellt (oder bearbeitet) haben, klicken Sie auf OK.

Die Einstellung der Client-USB-Umleitungsregel

VHCI-Kernelmodul erstellen

-  Die USB-Umleitung hängt von den VHCI-Kernelmodulen (`usb-vhci-hcd.ko` und `usb-vhci-iocif.ko`) ab. Diese Module sind Teil der Linux VDA-Distribution (als Teil des RPM-Pakets). Sie werden basierend auf den offiziellen Linux-Distributions-Kerneln kompiliert und sind in der folgenden Tabelle aufgeführt:
Unterstützte Linux-Distribution Kernel-Version
RHEL 8.x, Rocky Linux 8 4.18.0-240
RHEL 7.9, CentOS 7.9 3.10.0-1160
RHEL 7.8, CentOS 7.8 3.10.0-1160
SUSE 12.5 4.12.14
Ubuntu 20.04 5.4.0-81
Ubuntu 18.04 4.15.0-154
Debian 10 4.19.0-17
  • Wichtig:

  • Wenn der Kernel Ihres Computers nicht mit dem für den Linux VDA erstellten Treiber kompatibel ist, kann der USB-Dienst möglicherweise nicht gestartet werden. In diesem Fall können Sie die USB-Umleitungsfunktion nur verwenden, wenn Sie Ihre eigenen VHCI-Kernelmodule erstellen.

Überprüfen, ob Ihr Kernel mit den von Citrix erstellten Modulen konsistent ist

Führen Sie in der Befehlszeile den folgenden Befehl aus, um zu überprüfen, ob der Kernel konsistent ist:

-  insmod /opt/Citrix/VDA/lib64/usb-vhci-hcd.ko
<!--NeedCopy-->

Wenn der Befehl erfolgreich ausgeführt wird, wurde das Kernelmodul erfolgreich geladen und die Version ist mit der von Citrix installierten konsistent.

Wenn der Befehl Fehler aufweist, ist der Kernel nicht mit dem Citrix-Modul konsistent und muss neu erstellt werden.

VHCI-Kernelmodul neu erstellen

Wenn Ihr Kernelmodul nicht mit der Citrix-Version konsistent ist, gehen Sie wie folgt vor:

  1. Laden Sie den LVDA-Quellcode von der Citrix-Downloadseite herunter. Wählen Sie die Datei im Abschnitt “Linux Virtual Delivery Agent (Quellen)” aus.

  2. Extrahieren Sie die Datei citrix-linux-vda-sources.zip. Navigieren Sie zu linux-vda-sources/vhci-hcd-1.15.zip und extrahieren Sie die VHCI-Quelldateien mit dem Befehl unzip vhci-hcd-1.15.zip.

  3. Stellen Sie sicher, dass das Linux VDA-Paket installiert ist, und führen Sie dann einen der folgenden Befehle aus:

    • sudo bash ctxusbcfg.sh dkms

      Mit diesem Befehl können Sie das DKMS-Programm (Dynamic Kernel Module Support) verwenden, um Ihre VHCI-Kernelmodule zu verwalten. DKMS ist für SUSE nicht verfügbar.

      Hinweis:

      Der Befehl sudo bash ctxusbcfg.sh dkms installiert die Programme kernel-devel und DKMS auf Ihrem VDA. Bei der Installation der Programme auf RHEL und CentOS installiert und aktiviert der Befehl das EPEL-Repository (Extra Packages for Enterprise Linux) auf Ihrem VDA.

      DKMS kann beim Durchführen eines größeren Kernel-Upgrades, z. B. von Version 4.x.y auf Version 5.x.y, die VHCI-Kernelmodule (usb-vhci-hcd.ko und usb-vhci-iocif.ko) möglicherweise nicht erstellen. Wenn DKMS fehlschlägt, führen Sie sudo bash ctxusbcfg.sh dkms erneut aus.

    • sudo bash ctxusbcfg.sh build

      Dieser Befehl erstellt und installiert die VHCI-Kernelmodule ohne die DKMS-Option.

Beheben von Problemen mit der USB-Umleitung

Verwenden Sie die Informationen in diesem Abschnitt, um verschiedene Probleme zu beheben, die bei der Verwendung des Linux VDA auftreten können.

Umgeleitete USB-Festplatte kann nicht ausgeworfen werden

Der Linux VDA verwaltet alle von der Citrix Workspace-App umgeleiteten USB-Festplatten unter Administratorrechten, um sicherzustellen, dass nur der Eigentümer auf das umgeleitete Gerät zugreifen kann. Daher können Sie das Gerät nur mit Administratorrechten auswerfen.

Gerät kann nicht ausgeworfen werden

Datei geht verloren, wenn Sie die Umleitung einer USB-Festplatte beenden

Wenn Sie die Umleitung einer USB-Festplatte sofort über die Symbolleiste der Citrix Workspace-App beenden, können die auf der Festplatte geänderten oder erstellten Dateien verloren gehen. Dieses Problem tritt auf, weil das System beim Schreiben von Daten in ein Dateisystem den Speicher-Cache im Dateisystem einbindet. Die Daten werden nicht direkt auf die Festplatte geschrieben. Wenn Sie die Umleitung über die Symbolleiste der Citrix Workspace-App beenden, bleibt keine Zeit mehr, um die Daten auf die Festplatte zu schreiben, was zu Datenverlust führt. Um dieses Problem zu beheben, verwenden Sie den Befehl sync in einem Terminal, um die Daten auf die Festplatte zu schreiben, bevor Sie die USB-Umleitung beenden.

Datei geht verloren, wenn Sie die Umleitung einer USB-Festplatte beenden

Keine Geräte in der Symbolleiste der Citrix Workspace-App

Manchmal werden in der Symbolleiste der Citrix Workspace-App keine Geräte angezeigt, was darauf hindeutet, dass keine USB-Umleitung stattfindet. Wenn dieses Problem auftritt, überprüfen Sie Folgendes:

  • Die Richtlinie ist so konfiguriert, dass die USB-Umleitung zugelassen wird
  • Das Kernelmodul ist mit Ihrem Kernel kompatibel

Die Registerkarte "Geräte" in der Symbolleiste der Workspace-App

Hinweis:

Die Registerkarte Geräte ist in der Citrix Workspace-App für Linux nicht verfügbar.

Fehlgeschlagene Umleitung, wenn USB-Geräte in der Symbolleiste der Citrix Workspace-App sichtbar sind, aber als richtlinienbeschränkt gekennzeichnet sind

Wenn das Problem auftritt, gehen Sie wie folgt vor:

  • Konfigurieren Sie die Linux VDA-Richtlinie, um die Umleitung zu aktivieren.
  • Überprüfen Sie, ob zusätzliche Richtlinieneinschränkungen in der Registrierung der Citrix Workspace-App konfiguriert sind. Überprüfen Sie DeviceRules im Registrierungspfad, um sicherzustellen, dass der Zugriff auf das Gerät durch diese Einstellung nicht verweigert wird:

    HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Citrix\ICA Client\GenericUSB

Ein USB-Gerät wird erfolgreich umgeleitet, aber ich kann es in meiner Sitzung nicht verwenden

Typischerweise können nur unterstützte USB-Geräte umgeleitet werden. Andere Geräte können ebenfalls an eine aktive Linux VDA-Sitzung umgeleitet werden. Für jedes umgeleitete Gerät wird ein dem Benutzer gehörender Knoten im Systempfad /dev erstellt. Es sind jedoch die Treiber und die Konfiguration, die bestimmen, ob der Benutzer das Gerät erfolgreich verwenden kann. Wenn Sie ein Gerät finden, das zwar angeschlossen, aber nicht zugänglich ist, fügen Sie das Gerät einer uneingeschränkten Richtlinie hinzu.

Hinweis:

Bei USB-Laufwerken konfiguriert und mountet der Linux VDA die Festplatte. Der Benutzer (und nur der Eigentümer, der sie installiert hat) kann ohne zusätzliche Konfiguration auf die Festplatte zugreifen. Dies trifft möglicherweise nicht auf Geräte zu, die nicht in der Liste der unterstützten Geräte aufgeführt sind.