Es gibt zwei Dinge, die Sie tun müssen, um den Hypervisor vor dem Gastbetriebssystem zu verbergen:
- CPU-Feature-Flag des Hypervisors ausblenden.
- Blätter der CPUID des Hypervisors ausblenden.
Beides kann nicht vollständig in virt-manager erledigt werden; Sie müssen das XML der virtuellen Maschine bearbeiten.
Standardmäßig ist die CPU auf „Hypervisor default“ eingestellt:
Dies führt zu einer „QEMU Virtual CPU Version 2.5+“
Zuerst müssen Sie im Virt-Manager einen CPU-Typ festlegen. Das Hypervisor-Flag der standardmäßigen virtuellen QEMU-CPU kann in libvirt nicht entfernt werden.
Für beste Leistung und Funktionalität sollten Sie einfach „Copy host CPU configuration“ und „Apply“ auswählen. Dadurch können Sie verschachtelte Virtualisierung verwenden und 64-Bit-beschleunigte virtuelle Maschinen innerhalb dieser virtuellen Maschine ausführen.
Jetzt gibt es einen CPU-Abschnitt in der XML der virtuellen Maschine, den Sie bearbeiten können. Führen Sie sudo virsh edit <vmname>
aus . Der CPU-Abschnitt sieht folgendermaßen aus:
<cpu mode='host-model' check='partial'>
<model fallback='allow'/>
</cpu>
Sie müssen ein Element hinzufügen, um die Hypervisor-CPU-Funktion zu entfernen, wodurch es wie folgt aussieht:
<cpu mode='host-model' check='partial'>
<model fallback='allow'/>
<feature policy='disable' name='hypervisor'/>
</cpu>
Jetzt müssen Sie auch die Hypervisor-CPUID-Blätter deaktivieren. Dadurch können einige andere Dinge wie die NVIDIA-Treiber funktionieren.
Dies geschieht durch Hinzufügen eines neuen Elements innerhalb von <features>
Element.
Direkt darüber:
</features>
Sie sollten hinzufügen:
<kvm>
<hidden state='on'/>
</kvm>
Fahren Sie nun die VM herunter und starten Sie sie erneut (ein Neustart reicht nicht aus; ein vollständiges Herunterfahren ist erforderlich).
An dieser Stelle zeigt der Task-Manager:
Sie können auch systeminfo
ausführen in einer PowerShell oder Eingabeaufforderung. Wenn alles in Ordnung ist, sehen Sie unten alle Ja-Antworten im Hyper-V-Abschnitt:
Hyper-V Requirements: VM Monitor Mode Extensions: Yes
Virtualization Enabled In Firmware: Yes
Second Level Address Translation: Yes
Data Execution Prevention Available: Yes
Jetzt können Sie tun, was immer Sie tun wollten.