Um Horizon Agent for Linux zu installieren, müssen bestimmte Anforderungen für das Linux-Betriebssystem, die virtuelle Linux-Maschine, VMware Horizon 8-Systemkomponenten und die VMware vSphere-Plattform erfüllt werden.

Unterstützte Linux-Distributionen für Horizon Agent

In der folgenden Tabelle werden die getesteten Linux-Betriebssysteme aufgeführt, die für Horizon Agent unterstützt werden.

Tabelle 1. Unterstützte Linux-Betriebssysteme für Horizon Agent
Linux-Verteilung Architektur
Ubuntu 20.04 und 22.04 x64
Debian 10.13, 11.5, 11.6. und 11.7 x64
Red Hat Enterprise Linux (RHEL) Workstation 7.9, 8.6, 8.7, 8.8, 9.0, 9.1 und 9.2 x64
Red Hat Enterprise Linux (RHEL) Server 7.9, 8.6, 8.7, 8.8, 9.0, 9.1 und 9.2 x64
Rocky Linux 8.8 und 9.2 x64
CentOS 7.9 x64
SUSE Linux Enterprise Desktop (SLED) 15 SP3 und 15 SP4 x64
SUSE Linux Enterprise Server (SLES) 15 SP3 und 15 SP4 x64
Hinweis: Horizon Agent verfügt bei einigen Linux-Verteilungen über Abhängigkeitspakete. Weitere Informationen finden Sie unter Installieren von Abhängigkeitspaketen für Horizon Agent.

Einige Funktionen werden auf einer begrenzten Teilmenge von Linux-Betriebssystemen unterstützt. Weitere Informationen finden Sie im Abschnitt dieses Dokuments, in dem die spezifische Funktion behandelt wird.

Das Installationsskript install_viewagent.sh stellt einen Parameter vom Typ --force bereit, der die Installation von Horizon Agent auf Linux-Distributionen erzwingt, die nicht in der Testunterstützungsmatrix aufgeführt sind. Siehe Befehlszeilenoptionen für die Installation von Horizon Agent for Linux.

Erforderliche Plattform- und Softwareversionen

Um Horizon Agent for Linux installieren und anwenden zu können, muss Ihre Bereitstellung bestimmte Anforderungen für die vSphere-Plattform, Horizon Connection Server und die Horizon Client-Software erfüllen.

Tabelle 2. Erforderliche Plattform- und Softwareversionen für VMware Horizon
Plattform und Software Unterstützte Versionen
vSphere-Plattformversion
  • vSphere 8.0 oder höher
  • vSphere 7.0 oder höher
  • vSphere 6.7 oder höher
  • vSphere 6.5 U1 oder höher
VMware Horizon 8-Umgebung
  • Horizon Connection Server 2306
Horizon Client-Software
  • Horizon Client 2306 für Android
  • Horizon Client 2306 für Windows
  • Horizon Client 2306 für Linux
  • Horizon Client 2306 für Mac
  • Horizon Client 2306 für iOS
  • HTML Access 2306 auf Chrome und Firefox
  • Zero-Clients, die das VMware Blast-Protokoll unterstützen
    Hinweis: Teradici PCoIP Zero-Clients werden nicht unterstützt.

Von Linux-Desktops verwendete Ports

Um Verbindungssitzungen zu aktivieren, müssen Linux-Desktops eingehende TCP-Verbindungen von Horizon Client-Geräten, Unified Access Gateway und Horizon Connection Server unterstützen.

Bei Ubuntu- und Debian-Distributionen wird standardmäßig die iptables-Firewall mit der Eingaberichtlinie ACCEPT konfiguriert.

Bei RHEL-, Rocky Linux- und CentOS-Distributionen konfiguriert das Horizon Agent-Installationsskript die iptables-Firewall gegebenenfalls mit einer Eingaberichtlinie von ACCEPT. Um die Unterstützung eingehender Verbindungen sicherzustellen, stellen Sie sicher, dass iptables über eine Eingaberichtlinie von ACCEPT für neue Verbindungen über den Blast-Port 22443 verfügt.

Wenn BSG (Blast Secure Gateway) aktiviert ist, werden die Clientverbindungen von einem Horizon Client-Gerät über BSG oder Horizon Connection Server zum Linux-Desktop hergestellt. Ist der BSG nicht aktiviert, werden die Verbindungen zum Linux-Desktop direkt vom Horizon Client-Gerät hergestellt.

Weitere Informationen zu von Horizon Agent auf Linux-Desktops verwendeten Ports finden Sie im Dokument Horizon-Sicherheit und im Leitfaden Netzwerkports in VMware Horizon.

Überprüfen des von virtuellen Linux-Maschinen verwendeten Linux-Kontos

Die nachfolgende Tabelle enthält den von virtuellen Linux-Maschinen verwendeten Kontonamen und den Kontotyp.

Tabelle 3. Kontoname und Kontotyp
Kontoname Kontotyp Verwendet von
Stammordner Integriertes Linux-Betriebssystem Java Standalone Agent, mksvchanserver, Shell-Skripts
vmwblast Erstellt durch das Linux Agent-Installationsprogramm VMwareBlastServer
<Aktuell angemeldeter Benutzer> Integriertes Linux-Betriebssystem oder AD-Benutzer oder LDAP-Benutzer Python-Skript

Desktop-Umgebung

Horizon Agent for Linux unterstützt mehrere Desktop-Umgebungen auf unterschiedlichen Linux-Verteilungen. In der folgenden Tabelle sind die standardmäßigen Desktop-Umgebungen für die einzelnen Linux-Verteilungen und die anderen Desktop-Umgebungen aufgelistet, die von Horizon Agent for Linux unterstützt werden.
Tabelle 4. Unterstützte Desktop-Umgebungen
Linux-Verteilung Standard-Desktop-Umgebung Von Horizon Agent for Linux unterstützte Desktop-Umgebungen
Ubuntu Gnome Gnome Ubuntu, K Desktop Environment (KDE), MATE
Debian Gnome Gnome, KDE, MATE
RHEL und Rocky Linux 8.x/9.x Gnome Gnome
RHEL 7.9 Gnome Gnome, KDE, MATE
CentOS 7.9 Gnome Gnome, KDE
SLED/SLES Gnome Gnome
Hinweis: Wenn Sie RHEL/CentOS 7.x- und Ubuntu-Verteilungen verwenden, kann eine gesperrte KDE-Sitzung nicht durch SSO entsperrt werden. Sie müssen Ihr Kennwort manuell eingeben, um die gesperrte Sitzung zu entsperren.

Um die Standard-Desktop-Umgebung zu ändern, die auf einem der unterstützten Linux-Verteilungen verwendet wird, müssen Sie die folgenden für Ihren Linux-Desktop geeigneten Schritte und Befehle ausführen.

  1. Installieren Sie das unterstützte Betriebssystem der Linux-Verteilung mit der Einstellung für die Standard-Desktop-Umgebung.
  2. Führen Sie die entsprechenden in der folgenden Tabelle für Ihre spezifische Linux-Verteilung beschriebenen Befehle aus.
    Tabelle 5. Befehle zum Installieren von Desktop-Umgebungen
    Linux-Verteilung Neue Standard-Desktop-Umgebung Befehle zum Ändern der Standard-Desktop-Umgebung
    RHEL/CentOS 7.9 KDE
    yum groupinstall "KDE Plasma Workspaces"
    RHEL 7.9 MATE
    rpm -ivh https://dl.fedoraproject.org/pub/epel/7/x86_64/Packages/e/epel-release-7-14.noarch.rpm
    
    yum groupinstall -y "MATE Desktop"
    Ubuntu KDE
    apt install plasma-desktop
    Ubuntu MATE
    apt install ubuntu-mate-desktop
  3. Um die neue Standard-Desktop-Umgebung zu verwenden, starten Sie den Desktop neu.
Wenn Sie die SSO-Funktion auf einem Linux-Desktop aktivieren, auf der mehrere Desktop-Umgebungen installiert sind, beachten Sie die nachfolgend aufgeführten Hinweise zur Auswahl der Desktop-Umgebung.
  • Verwenden Sie für Ubuntu und RHEL/CentOS 7.x die Informationen in der folgenden Tabelle, um die Option SSODesktopType in der Datei /etc/vmware/viewagent-custom.conf festzulegen und die Desktopumgebung anzugeben, für die SSO verwendet werden soll.
    Tabelle 6. Option SSODesktopType
    Desktop-Typ Einstellung der Option SSODesktopType
    MATE SSODesktopType=UseMATE
    GnomeUbuntu SSODesktopType=UseGnomeUbuntu
    GnomeFlashback SSODesktopType=UseGnomeFlashback
    KDE SSODesktopType=UseKdePlasma
    GnomeClassic SSODesktopType=UseGnomeClassic
  • Damit die SSO-Anmeldungssitzung Gnome Classic für RHEL und Rocky Linux 9.x/8.x verwenden kann, entfernen Sie alle Desktop-Startdateien mit Ausnahme der Gnome Classic-Startdatei aus dem Verzeichnis /usr/share/xsession. Führen Sie beispielsweise den folgenden Befehlssatz als Root-Benutzer aus:
    cd /usr/share/xsessions
    mkdir backup
    mv *.desktop backup
    mv backup/gnome-classic.desktop ./
    Nach der ersten Einrichtung muss sich der Endbenutzer abmelden oder den Linux-Desktop neu starten, damit Gnome Classic in der nächsten SSO-Sitzung als Standard-Desktop verwendet wird.

Wenn Sie SSO auf einem Linux-Desktop deaktiviert haben, auf dem mehrere Desktop-Umgebungen installiert sind, müssen Sie keine der zuvor beschriebenen Schritte ausführen. Die Endbenutzer müssen ihre gewünschte Desktop-Umgebung auswählen, wenn sie sich mit diesem Linux-Desktop anmelden.

Netzwerkanforderungen

VMware Blast Extreme unterstützt sowohl das User Datagram Protocol (UDP) als auch das Transmission Control Protocol (TCP). Die Netzwerkbedingungen wirken sich auf die Leistungsfähigkeit von UDP und TCP aus. Wählen Sie für eine vielfältige Benutzererfahrung UDP oder TCP basierend auf der Netzwerkverbindung aus.
  • Wählen Sie TCP aus, wenn die Netzwerkverbindung gut ist, wie z. B. in einer Umgebung mit lokalem Netzwerk (LAN).
  • Wählen Sie UDP aus, wenn die Netzwerkverbindung schlecht ist, wie z. B. in einer WAN (Wide Area Network)-Umgebung, in der es zu Paketverlusten und einer zeitlichen Verzögerung kommt.
Ermitteln Sie mit einem Netzwerkanalysetool wie Wireshark, ob VMware Blast Extreme TCP oder UDP verwendet wird. Die im Folgenden aufgeführten Schritte mit Wireshark zeigen eine beispielhafte Verwendung.
  1. Laden Sie Wireshark herunter und installieren Sie es auf Ihrer Linux-VM.
    Für RHEL/CentOS und Rocky Linux:
    sudo yum install wireshark
    Für Ubuntu:
    sudo apt install tshark
  2. Stellen Sie mithilfe von VMware Horizon Client eine Verbindung mit dem Linux-Desktop her.
  3. Öffnen Sie ein Terminal-Fenster und führen Sie den im Folgenden aufgeführten Befehl aus. Dieser zeigt das TCP- oder UDP-Paket an, das von VMware Blast Extreme verwendet wird.
    sudo tshark -i any | grep 22443
Die Funktionen USB-Umleitung und Clientlaufwerksumleitung hängen von der Netzwerkverbindung ab. Wenn die Netzwerkverbindung schlecht ist, d. h. nur eine begrenzte Bandbreite mit Zeitverzögerung und Paketverlusten zur Verfügung steht, beeinträchtigt dies die Benutzererfahrung. In diesem Fall kann der Endbenutzer möglicherweise Folgendes feststellen:
  • Das Kopieren der Remote-Dateien kann lange dauern. Ist dies der Fall, übertragen Sie stattdessen kleinere Dateien.
  • Das USB-Gerät wird nicht auf dem Linux-Remote-Desktop angezeigt.
  • Die USB-Daten werden nicht vollständig übertragen. Wenn Sie beispielsweise eine große Datei kopieren, erhalten Sie möglicherweise eine Datei, die kleiner als die Originaldatei ist.

VHCI-Treiber für die USB-Umleitung

Hinweis: Verwenden Sie die folgenden Richtlinien, um die richtige Installationssequenz für den VHCI-Treiber zu ermitteln:
  • Wenn Sie Horizon Agent mithilfe des Tarball-Installationsprogramms .tar.gz installieren möchten, müssen Sie zuerst das Tarball-Installationsprogramm herunterladen und entpacken, dann den VHCI-Treiber installieren und anschließend Horizon Agent mit dem Installationsparameter für die Funktion „USB-Umleitung“ installieren.
  • Wenn Sie Horizon Agent mithilfe des RPM-Installationsprogramms .rpm RPM installieren möchten, müssen Sie zuerst Horizon Agent und dann den VHCI-Treiber installieren und anschließend die Funktion „USB-Umleitung“ zur Horizon Agent-Konfiguration hinzufügen.

Weitere Informationen finden Sie unter Installieren von Horizon Agent auf einer virtuellen Linux-Maschine.

Die USB-Weiterleitungsfunktion verfügt über eine Abhängigkeit vom Kerneltreiber des USB Virtual Host Controller Interface (VHCI). Zur Unterstützung der USB 3.0- und USB-Umleitungsfunktion müssen Sie den VHCI-Treiber installieren, indem Sie die folgenden Schritte durchführen:

  1. Laden Sie den USB-VHCI-Quellcode von https://sourceforge.net/projects/usb-vhci/files/linux%20kernel%20module/ herunter.
  2. Geben den vollständigen Pfad der VHCI-Patch-Datei je nach dem Format des Horizon Agent-Installationsprogramms an. Richtlinien finden Sie in den folgenden Beispielen.
    • (Tarball-Installationsprogramm) Wenn Sie das Tarball-Installationsprogramm VMware-horizonagent-linux-x86_64-YYMM-y.y.y-xxxxxxx.tar.gz herunterladen und im Verzeichnis /install_tmp/ entpacken, fungiert full-path_to_patch-file als /install_tmp/VMware-horizonagent-linux-x86_64-YYMM-y.y.y-xxxxxxx/resources/vhci/patch/vhci.patch.
    • (RPM-Installationsprogramm) Wenn Sie das RPM-Installationsprogramm VMware-horizonagent-linux-YYMM-y.y.y-xxxxxxx.el8.x86_64.rpm herunterladen und zum Installieren von Horizon Agent verwenden, fungiert full-path_to_patch-file als /usr/lib/vmware/viewagent/resources/vhci/patch/vhci.patch.
  3. Verwenden Sie zum Kompilieren des Quellcodes des VHCI-Treibers und zum Installieren der resultierenden Binärdatei auf Ihrem Linux-System die in der folgenden Tabelle aufgelisteten Befehle. Ersetzen Sie full-path_to_patch-file in den Befehlen durch den Dateipfad, den Sie im vorherigen Schritt angegeben haben.
    Wenn beispielsweise der Dateipfad /install_tmp/VMware-horizonagent-linux-x86_64-YYMM-y.y.y-xxxxxxx/resources/vhci/patch/vhci.patch verwendet wird, lautet der Befehl patch folgendermaßen:
    patch -p1 < /install_tmp/VMware-horizonagent-linux-x86_64-YYMM-y.y.y-xxxxxxxi/resources/vhci/patch/vhci.patch
Tabelle 7. Kompilieren und Installieren des USB-VHCI-Treibers
Linux-Verteilung Schritte zum Kompilieren und Installieren der VHCI-USB-Treiber
Ubuntu
  1. Installieren Sie die Abhängigkeitspakete.
    sudo apt-get install make
    sudo apt-get install gcc
    sudo apt-get install libelf-dev
  2. (Ubuntu 22.04) Installieren Sie die Kernel-Header-Dateien.
    sudo apt-get install linux-headers-$(uname -r)
  3. Kompilieren und installieren Sie den VHCI-Treiber.
    tar -xzvf vhci-hcd-1.15.tar.gz
    cd vhci-hcd-1.15
    patch -p1 < full-path_to_patch-file
    make clean && make && sudo make install
  4. Wenn Sie die Erweiterbare Firmware-Schnittstelle (EFI) und UEFI Secure Boot auf der virtuellen Maschine aktiviert haben, konfigurieren Sie die Signatureinstellungen für den VHCI-Treiber.
    1. Erstellen Sie ein SSL-Schlüsselpaar für den VHCI-Treiber.
      openssl req -new -x509 -newkey rsa:2048 -keyout MOK.priv -outform DER -out MOK.der -nodes -days 36500 -subj "/CN=Descriptive name/" -addext extendedKeyUsage=1.3.6.1.5.5.7.3.3
    2. Erstellen Sie eine Signatur für den VHCI-Treiber.
      sudo /usr/src/linux-headers-$(uname -r)/scripts/sign-file sha256 ./MOK.priv ./MOK.der /lib/modules/$(uname -r)/kernel/drivers/usb/host/usb-vhci-iocifc.ko
      
      sudo /usr/src/linux-headers-$(uname -r)/scripts/sign-file sha256 ./MOK.priv ./MOK.der /lib/modules/$(uname -r)/kernel/drivers/usb/host/usb-vhci-hcd.ko
    3. Registrieren Sie den Schlüssel für den sicheren UEFI-Startvorgang.
      sudo mokutil --import MOK.der
      Hinweis: Dieser Befehl gibt eine Anforderung zum Festlegen eines Kennworts für den Machine Owner Key (MOK) für den sicheren UEFI-Start aus.
    4. Um einen sicheren UEFI-Start in der vSphere-Konsole einzurichten, starten Sie das System neu. Weitere Informationen finden Sie unter https://sourceware.org/systemtap/wiki/SecureBoot.
Debian
  1. Installieren Sie die Abhängigkeitspakete.
    sudo  apt install -y  patch g++ make linux-headers-$(uname -r)
  2. Kompilieren und installieren Sie den VHCI-Treiber.
    tar -xzvf vhci-hcd-1.15.tar.gz
    cd vhci-hcd-1.15
    patch -p1 < full-path_to_patch-file
    mkdir -p linux/$(echo $(uname -r) | cut -d '-' -f 1)/drivers/usb/core
    cp /lib/modules/$(uname -r)/source/include/linux/usb/hcd.h linux/$(echo $(uname -r) | cut -d '-' -f 1)/drivers/usb/core
    
    make clean && make && sudo make install

RHEL/CentOS 7.x

RHEL 8.x/9.x

Rocky Linux 8.x/9.x

  1. Installieren Sie die Abhängigkeitspakete.
    sudo yum install gcc-c++
    sudo yum install kernel-devel-$(uname -r)
    sudo yum install kernel-headers-$(uname -r)
    sudo yum install patch
    sudo yum install elfutils-libelf-devel
  2. Kompilieren und installieren Sie den VHCI-Treiber.
    tar -xzvf vhci-hcd-1.15.tar.gz
    cd vhci-hcd-1.15
    patch -p1 < full-path_to_patch-file
    make clean && make && sudo make install
  3. (RHEL und Rocky Linux 9.x/8.x) Um sicherzustellen, dass der VHCI-Treiber mit der USB-Umleitung ordnungsgemäß funktioniert, konfigurieren Sie die Signatureinstellungen für den Treiber.
    1. Erstellen Sie ein SSL-Schlüsselpaar für den VHCI-Treiber.
      openssl req -new -x509 -newkey rsa:2048 -keyout MOK.priv -outform DER -out MOK.der -nodes -days 36500 -subj "/CN=Descriptive name/" -addext extendedKeyUsage=1.3.6.1.5.5.7.3.3
    2. Erstellen Sie eine Signatur für den VHCI-Treiber.
      sudo /usr/src/kernels/$(uname -r)/scripts/sign-file sha256 ./MOK.priv ./MOK.der /lib/modules/$(uname -r)/kernel/drivers/usb/host/usb-vhci-iocifc.ko
      sudo /usr/src/kernels/$(uname -r)/scripts/sign-file sha256 ./MOK.priv ./MOK.der /lib/modules/$(uname -r)/kernel/drivers/usb/host/usb-vhci-hcd.ko
    3. Registrieren Sie den Schlüssel für den sicheren UEFI-Startvorgang.
      sudo mokutil --import MOK.der
      Hinweis: Dieser Befehl gibt eine Anforderung zum Festlegen eines Kennworts für den Machine Owner Key (MOK) für den sicheren UEFI-Start aus.
    4. Um einen sicheren UEFI-Start in der vSphere-Konsole einzurichten, starten Sie das System neu. Weitere Informationen finden Sie unter https://sourceware.org/systemtap/wiki/SecureBoot.

SLED/SLES

  1. Suchen Sie die Version des aktuellen Kernelpakets.
    rpm -qa | grep kernel-default-$(echo $(uname -r) | cut -d '-' -f 1,2)

    Die Ausgabe besteht aus dem Namen des aktuell installierten Kernelpakets. Wenn der Name des Pakets z. B. kernel-default-3.0.101-63.1 lautet, ist die aktuelle Version des Kernelpakets 3.0.101-63.1.

  2. Installieren Sie die Pakete kernel-devel, kernel-default-devel, kernel-macros und patch.
    sudo zypper install --oldpackage kernel-devel-<kernel-package-version> \
    kernel-default-devel-<kernel-package-version> kernel-macros-<kernel-package-version> patch
    Beispiel:
    sudo zypper install --oldpackage kernel-devel-4.4.21-90.1 kernel-default-devel-4.4.21-90.1 kernel-macros-4.4.21-90.1 patch
  3. Kompilieren und installieren Sie den VHCI-Treiber.
    tar -xzvf vhci-hcd-1.15.tar.gz
    cd vhci-hcd-1.15
    patch -p1 < full-path_to_patch-file
    mkdir -p linux/$(echo $(uname -r) | cut -d '-' -f 1)/drivers/usb/core
    cp /lib/modules/$(uname -r)/source/include/linux/usb/hcd.h linux/$(echo $(uname -r) | cut -d '-' -f 1)/drivers/usb/core
    make clean && make && sudo make install
  4. Um sicherzustellen, dass der VHCI-Treiber ordnungsgemäß mit der USB-Umleitung funktioniert, konfigurieren Sie die Signatureinstellungen für den USB-Treiber.
    1. Erstellen Sie ein SSL-Schlüsselpaar für den VHCI-Treiber.
      openssl req -new -x509 -newkey rsa:2048 -keyout MOK.priv -outform DER -out MOK.der -nodes -days 36500 -subj "/CN=Descriptive name/" -addext extendedKeyUsage=1.3.6.1.5.5.7.3.3
    2. Suchen Sie den Pfad zur Signaturdatei für den VHCI-Treiber.
      sudo find / -name sign-file

      Dieser Befehl gibt die Pfade zu allen Signaturdateien zurück, die sich auf dem System befinden. Der Pfad der Signaturdatei für den VHCI-Treiber ähnelt dem folgenden Beispiel.

      /usr/src/linux-5.3.18-24.9-obj/x86_64/default/scripts/
    3. Erstellen Sie eine Signatur für den VHCI-Treiber. In den folgenden Befehlen ist <sign-file-path> der Pfad zu der Signaturdatei, die Sie zuvor in Schritt 4b gefunden haben.
      sudo /<sign-file-path>/sign-file sha256 ./MOK.priv ./MOK.der /lib/modules/$(uname -r)/kernel/drivers/usb/host/usb-vhci-iocifc.ko
      sudo /<sign-file-path>/src/kernels/$(uname -r)/scripts/sign-file sha256 ./MOK.priv ./MOK.der /lib/modules/$(uname -r)/kernel/drivers/usb/host/usb-vhci-hcd.ko
    4. Registrieren Sie den Schlüssel für den sicheren UEFI-Startvorgang.
      sudo mokutil --import MOK.der
      Hinweis: Dieser Befehl gibt eine Anforderung zum Festlegen eines Kennworts für den Machine Owner Key (MOK) für den sicheren UEFI-Start aus.
    5. Um einen sicheren UEFI-Start in der vSphere-Konsole einzurichten, starten Sie das System neu. Weitere Informationen finden Sie unter https://sourceware.org/systemtap/wiki/SecureBoot.

Beachten Sie außerdem die folgenden Richtlinien:

  • Wenn sich die Linux-Kernelversion in eine neue Version ändert, müssen Sie den VHCI-Treiber erneut kompilieren und installieren. Horizon Agent for Linux muss aber nicht erneut installiert werden.
  • Sie können auch DKMS (Dynamic Kernel Module Support) zum VHCI-Treiber hinzufügen. Gehen Sie dazu wie im folgenden Beispiel für ein Ubuntu-System vor.
    1. Installieren Sie die Kernel-Header.
      sudo apt install linux-headers-`uname -r`
    2. Installieren Sie dkms mit dem folgenden Befehl.
      sudo apt install dkms
    3. Extrahieren und patchen Sie die VHCI-TAR-Datei.
      tar xzvf vhci-hcd-1.15.tar.gz
      cd vhci-hcd-1.15
      patch -p1 <full-path_to_patch-file>
      cd ..
    4. Kopieren Sie die extrahierten VHCI-Quelldateien in das Verzeichnis /usr/src.
      sudo cp -r vhci-hcd-1.15 /usr/src/usb-vhci-hcd-1.15
    5. Erstellen Sie eine Datei mit dem Namen dkms.conf und speichern Sie diese im Verzeichnis /usr/src/usb-vhci-hcd-1.15.
      sudo touch /usr/src/usb-vhci-hcd-1.15/dkms.conf
    6. Fügen Sie die folgenden Inhalte zur Datei dkms.conf hinzu.
      PACKAGE_NAME="usb-vhci-hcd"
      PACKAGE_VERSION=1.15
      MAKE_CMD_TMPL="make KVERSION=$kernelver"
      
      CLEAN="$MAKE_CMD_TMPL clean"
      
      BUILT_MODULE_NAME[0]="usb-vhci-iocifc"
      DEST_MODULE_LOCATION[0]="/kernel/drivers/usb/host"
      MAKE[0]="$MAKE_CMD_TMPL"
      
      BUILT_MODULE_NAME[1]="usb-vhci-hcd"
      DEST_MODULE_LOCATION[1]="/kernel/drivers/usb/host"
      MAKE[1]="$MAKE_CMD_TMPL"
      
      AUTOINSTALL="YES"
    7. Fügen Sie diesen VHCI-Treiber zur Datei dkms hinzu.
      sudo dkms add usb-vhci-hcd/1.15
    8. Erstellen Sie den VHCI-Treiber.
      sudo dkms build usb-vhci-hcd/1.15
    9. Installieren Sie den VHCI-Treiber.
      sudo dkms install usb-vhci-hcd/1.15