Transistor 22
Lt. Commander
- Registriert
- März 2018
- Beiträge
- 1.431
Viele Linux Umsteiger haben das Problem, das ihnen einige Programme aus Windows auch unter Wine oder Proton leider nicht funktionieren. Da das rebooten in Windows jedoch sehr nervig sein kann, deshalb empfehle ich eine Qemu/Virt-Manager Windows VM.
Diese hat jedoch standardmäßig leider keine 3D Beschleunigung, weshalb z. B. 3D Spiele in der VM meist nicht möglich sind. Dieses Problem lässt sich beheben, in dem man eine 2. GPU des Host-Rechners in die VM umleitet, dies ist jedoch meist mit viel Aufwand verbunden und viele Einsteiger scheitern an dem Problem.
Um dieses Problem zu lösen, habe ich ein interaktives automatisiertes Bash Programm namens gptools erstellt,
welches es ermöglicht, eine GPU in unter 5 Minuten von Debian/Ubuntu basierten Systemen zu isolieren.
Anforderungen:
Der folgende Teil erklärt, wie sie gptools installieren und nutzen.
Um die Installation zu vereinfachen, habe ich dafür ein Debian Paket erstellt. Dieses können sie hier herunterladen. Dieses können sie dann über ihren Paketinstaller ihres Vertrauens installieren, z. B. über gDebi
oder klassisch über den Terminal mit folgendem Befehl.
Jetzt sollten sie in ihrem Anwendungsstartmenü den Eintrag GPTools finden, über diesen können sie GPTools einfach starten.
Nach dem Starten werden sie von folgendem Menü begrüßt,
in welchem sie gefragt werden, welches Tool sie benützen wollen.
Da GPU passthrough noch nicht konfiguriert ist, sollte man die erste Option wählen.
Nach einigen Info Dialogen wird gefragt, welche GPU man für GPU passthrough nutzen will. Beachten sie das die initialisierende GPU nicht für GPU passthrough genutzt werden kann.
Falls das Programm erkennt, das sich noch andere Geräte in der GPU IOMMU Gruppe befinden, erscheint automatisch ein Dialog zur Installation eines Kernels mit acso Patch.
Bitte beachten sie, das der ACSO Patch es ermöglicht, das vom Gast auf den Host zugegriffen werden kann.
Sollte man mit GPU passthrough fortfahren wollen, bestätigen sie Install precompiled acso patch.
Wenn die Installation des acso Kernels abgeschlossen ist, erscheint folgender Dialog,
Nach kurzem warten sollte folgender Dialog kommen,
welcher darauf hinweist, das GPU passthrough erfolgreich konfiguriert wurde und ab dem nächsten Boot funktioniert. Beachten sie, das der erscheinen dieses Dialoges einige Minuten dauern kann, starten sie ihren PC vor dem Erscheinen des Dialogs ihren PC nicht neu.
Der folgende Teil erklärt, wie sie gptools CLI installieren und nutzen.
Um die Installation zu vereinfachen, habe ich dafür ein Debian Paket erstellt. Dieses können sie entweder über folgende Befehle herunterladen und installieren,
oder die .dpkg Datei manuell hier herunterladen und mit der Paketmanager GUI ihres vertrauens installieren.
Jetzt können sie die automatische Konfiguration mit folgendem Befehl im Terminal starten:
Nach dem starten wird als erstes geprüft, ob alle Anforderungen erfüllt wurden.
Sollten nicht alle Anforderungen erfüllt sein, wird das gptools automatisch beendet.
Unvollständig. Hier standen veraltete Information, ein Update folgt in kürze.
Jetzt sollten sie die GPU auswählen können, die sie für GPU Passthrough isolieren wollen.
Ich wähle die 1 um meine R7 250 zu isolieren.
Beachten sie, das sie nicht die zur System Intialisierung verwendete GPU verwenden können.
Das Skript bereitet jetzt alles zur Isolation vor.
Da jetzt alle Änderungen gemacht sind, müssen sie nur noch ihren PC Neustarten und wenn erforderlich mit dem ACSO Kernel booten.
Nach dem Neustart sollte ihre GPU isoliert sein, dies können sie mit dem Terminal Befehl
überprüfen.
Sollte ihre GPU erfolgreich isoliert sein, sollten sie nun den VFIO Treiber nutzen.
Wenn dies der Fall ist, können sie jetzt ganz einfach ihre GPU und GPU Audicontroller in Virt-Manager auswählen können und ihrer VM zuweisen können. Hier findet ihr meine Anleitung zur Erstellung der VM.
Diese hat jedoch standardmäßig leider keine 3D Beschleunigung, weshalb z. B. 3D Spiele in der VM meist nicht möglich sind. Dieses Problem lässt sich beheben, in dem man eine 2. GPU des Host-Rechners in die VM umleitet, dies ist jedoch meist mit viel Aufwand verbunden und viele Einsteiger scheitern an dem Problem.
Um dieses Problem zu lösen, habe ich ein interaktives automatisiertes Bash Programm namens gptools erstellt,
welches es ermöglicht, eine GPU in unter 5 Minuten von Debian/Ubuntu basierten Systemen zu isolieren.
Anforderungen:
- Die Virtualisierungstechnologie ihrer CPU wurde im UEFI aktiviert
- IOMMU wurde im BIOS/UEFI aktiviert
- Mindestens 2 GPUs (Oder eine iGPU für den Host und eine GPU für gpu passthrough
- Debian/Ubuntu basierende Distribution mit Grub 2 (Pop OS & KDE Neon funktionieren wegen Systemd-Boot leider noch nicht)
Der folgende Teil erklärt, wie sie gptools installieren und nutzen.
Um die Installation zu vereinfachen, habe ich dafür ein Debian Paket erstellt. Dieses können sie hier herunterladen. Dieses können sie dann über ihren Paketinstaller ihres Vertrauens installieren, z. B. über gDebi
oder klassisch über den Terminal mit folgendem Befehl.
Bash:
sudo dpkg -i /path/to/gptools-0.7.3-amd64.deb
Jetzt sollten sie in ihrem Anwendungsstartmenü den Eintrag GPTools finden, über diesen können sie GPTools einfach starten.
Nach dem Starten werden sie von folgendem Menü begrüßt,
in welchem sie gefragt werden, welches Tool sie benützen wollen.
Da GPU passthrough noch nicht konfiguriert ist, sollte man die erste Option wählen.
Nach einigen Info Dialogen wird gefragt, welche GPU man für GPU passthrough nutzen will. Beachten sie das die initialisierende GPU nicht für GPU passthrough genutzt werden kann.
Falls das Programm erkennt, das sich noch andere Geräte in der GPU IOMMU Gruppe befinden, erscheint automatisch ein Dialog zur Installation eines Kernels mit acso Patch.
Bitte beachten sie, das der ACSO Patch es ermöglicht, das vom Gast auf den Host zugegriffen werden kann.
Sollte man mit GPU passthrough fortfahren wollen, bestätigen sie Install precompiled acso patch.
Wenn die Installation des acso Kernels abgeschlossen ist, erscheint folgender Dialog,
Nach kurzem warten sollte folgender Dialog kommen,
welcher darauf hinweist, das GPU passthrough erfolgreich konfiguriert wurde und ab dem nächsten Boot funktioniert. Beachten sie, das der erscheinen dieses Dialoges einige Minuten dauern kann, starten sie ihren PC vor dem Erscheinen des Dialogs ihren PC nicht neu.
Der folgende Teil erklärt, wie sie gptools CLI installieren und nutzen.
Um die Installation zu vereinfachen, habe ich dafür ein Debian Paket erstellt. Dieses können sie entweder über folgende Befehle herunterladen und installieren,
Bash:
wget https://github.com/Transistor4aCPU/gpu-passthrough-tools/releases/download/gptools-0.7.3/gptools-0.7.3-amd64.deb
sudo dpkg -i gptools-0.7.3-amd64.deb
Jetzt können sie die automatische Konfiguration mit folgendem Befehl im Terminal starten:
Bash:
sudo gptools --cli --choose
Sollten nicht alle Anforderungen erfüllt sein, wird das gptools automatisch beendet.
Unvollständig. Hier standen veraltete Information, ein Update folgt in kürze.
Jetzt sollten sie die GPU auswählen können, die sie für GPU Passthrough isolieren wollen.
Ich wähle die 1 um meine R7 250 zu isolieren.
Beachten sie, das sie nicht die zur System Intialisierung verwendete GPU verwenden können.
Das Skript bereitet jetzt alles zur Isolation vor.
Da jetzt alle Änderungen gemacht sind, müssen sie nur noch ihren PC Neustarten und wenn erforderlich mit dem ACSO Kernel booten.
Nach dem Neustart sollte ihre GPU isoliert sein, dies können sie mit dem Terminal Befehl
Bash:
lspci -nnv
Sollte ihre GPU erfolgreich isoliert sein, sollten sie nun den VFIO Treiber nutzen.
Wenn dies der Fall ist, können sie jetzt ganz einfach ihre GPU und GPU Audicontroller in Virt-Manager auswählen können und ihrer VM zuweisen können. Hier findet ihr meine Anleitung zur Erstellung der VM.
Anhänge
Zuletzt bearbeitet: