Hyper-V-Maschinen mit Windows 11 Pro auf QEMU-KVM portieren
Hallo,
ich habe ein Problem, das ich bisher nicht lösen konnte. Zunächst meine Umgebung:
Betriebssystem
- Ubuntu Server 24.04
Hardware
- Prozessor: AMD EPYC RAPHAEL 4584PX mit 16 Kernen und 4,2 GHz
- Arbeitsspeicher: 64 GB DDR5 ECC RAM (2× 32 GB)
- Datenträgersystem:
- 2× 960 GB Samsung PM883 SATA SSD im RAID 1 für das System
- 4× 3,2 TB SAS3 SSDs im RAID 10 für Daten
- RAID-Controller: Broadcom MegaRAID 9560-8i
- Netzwerk: 2× 1 Gbit/s LAN
- Mainboard: Supermicro H13SAE-MF-B mit TPM-2.0-Modul
Der Vollständigkeit halber: Das RAID 1 (System) ist mit ext4 formatiert, das RAID 10 (Daten inkl. VMs) mit XFS.
Aufgabenstellung
Virtuelle PCs mit Windows 11, die bisher unter Hyper-V laufen, auf QEMU/KVM portieren.
Die Windows-11-VMs nutzen hauptsächlich Office-Software und einige Handwerkerprogramme – also nichts Besonderes. Demnächst wird jedoch eine neue Software installiert, die mehr Ressourcen benötigt. Da der alte Server (Windows Server 2016) am Limit ist und dessen erweiterter Support Mitte Januar 2027 ausläuft, wurde beschlossen, die VMs auf eine leistungsfähigere Plattform zu migrieren.
Durchgeführte Schritte am Beispiel der VM BUERO4
1. Virtuelle Festplatte komprimiert und als feste Disk eingestellt (da unter QEMU/KVM aus Geschwindigkeitsgründen das RAW-Format genutzt werden soll).
2. Konvertierung der virtuellen Festplatte in das RAW-Format:
3. UEFI-Daten speichern:
4. Virtuelle Maschine erstellen und die konvertierte Festplatte einbinden:
5. VM stoppen:
6. Konfigurationsdatei anpassen
- XML-Datei der VM in den gewünschten Ordner verschieben:
- Anschließend die VM erneut definieren:
- Konfiguration bearbeiten:
7. TPM-Passthrough konfigurieren
- In der `<devices>`-Sektion folgende Konfiguration einfügen:
8. VM starten:
Problem
Beim Starten der VM tritt folgender Fehler auf:
Allerdings zeigt die Systemdiagnose, dass TPM erkannt wird:
Geräte-Check:
TPM-Funktionalitäten abrufen:
Frage
Ohne TPM startet Windows 11 nicht – stattdessen lande ich in der Reparaturkonsole oder im BIOS, aber Windows selbst bootet nicht.
Hat jemand eine Idee, wie ich das TPM korrekt durchgereicht bekomme?
ich habe ein Problem, das ich bisher nicht lösen konnte. Zunächst meine Umgebung:
Betriebssystem
- Ubuntu Server 24.04
Hardware
- Prozessor: AMD EPYC RAPHAEL 4584PX mit 16 Kernen und 4,2 GHz
- Arbeitsspeicher: 64 GB DDR5 ECC RAM (2× 32 GB)
- Datenträgersystem:
- 2× 960 GB Samsung PM883 SATA SSD im RAID 1 für das System
- 4× 3,2 TB SAS3 SSDs im RAID 10 für Daten
- RAID-Controller: Broadcom MegaRAID 9560-8i
- Netzwerk: 2× 1 Gbit/s LAN
- Mainboard: Supermicro H13SAE-MF-B mit TPM-2.0-Modul
Der Vollständigkeit halber: Das RAID 1 (System) ist mit ext4 formatiert, das RAID 10 (Daten inkl. VMs) mit XFS.
Aufgabenstellung
Virtuelle PCs mit Windows 11, die bisher unter Hyper-V laufen, auf QEMU/KVM portieren.
Die Windows-11-VMs nutzen hauptsächlich Office-Software und einige Handwerkerprogramme – also nichts Besonderes. Demnächst wird jedoch eine neue Software installiert, die mehr Ressourcen benötigt. Da der alte Server (Windows Server 2016) am Limit ist und dessen erweiterter Support Mitte Januar 2027 ausläuft, wurde beschlossen, die VMs auf eine leistungsfähigere Plattform zu migrieren.
Durchgeführte Schritte am Beispiel der VM BUERO4
1. Virtuelle Festplatte komprimiert und als feste Disk eingestellt (da unter QEMU/KVM aus Geschwindigkeitsgründen das RAW-Format genutzt werden soll).
2. Konvertierung der virtuellen Festplatte in das RAW-Format:
qemu-img convert -O raw BUERO4_fix.vhdx /mnt/data/vms/buero4/buero4.raw -p
3. UEFI-Daten speichern:
cp /usr/share/OVMF/OVMF_VARS_4M.ms.fd /mnt/data/vms/buero4/buero4_VARS.fd
4. Virtuelle Maschine erstellen und die konvertierte Festplatte einbinden:
virt-install \
--name buero4 \
--memory 8192 \
--vcpus 8 \
--cpu host \
--machine q35 \
--boot loader=/usr/share/OVMF/OVMF_CODE_4M.secboot.fd,loader.readonly=yes,loader.type=pflash,loader.secure=yes,nvram=/mnt/data/vms/buero4/buero4_VARS.fd \
--disk path=/mnt/data/vms/buero4/buero4.raw,format=raw,bus=virtio \
--network bridge=br0,model=virtio \
--graphics spice,listen=0.0.0.0 \
--video qxl \
--channel unix,target.type=virtio,name=org.qemu.guest_agent.0 \
--virt-type kvm \
--os-variant=win11 \
--memorybacking hugepages=on \
--import \
--boot hd \
--noautoconsole
5. VM stoppen:
virsh shutdown buero4 # oder falls erforderlich:
virsh destroy buero4
6. Konfigurationsdatei anpassen
- XML-Datei der VM in den gewünschten Ordner verschieben:
sudo mv /etc/libvirt/qemu/buero4.xml /mnt/data/vms/buero4/buero4.xml
sudo virsh define /mnt/data/vms/buero4/buero4.xml
virsh edit buero4
7. TPM-Passthrough konfigurieren
- In der `<devices>`-Sektion folgende Konfiguration einfügen:
<tpm model='tpm-crb'>
<backend type='passthrough'>
<device path='/dev/tpm0'/>
</backend>
</tpm>
8. VM starten:
virsh start buero4
Problem
Beim Starten der VM tritt folgender Fehler auf:
error: Failed to start domain 'buero4'
error: internal error: QEMU unexpectedly closed the monitor (vm='buero4'):
2025-03-26T09:27:38.059287Z qemu-system-x86_64:
-tpmdev passthrough,id=tpm-tpm0,path=/dev/fdset/0,cancel-path=/dev/fdset/1:
'/dev/fdset/0' is not a TPM device.
Allerdings zeigt die Systemdiagnose, dass TPM erkannt wird:
root@ubuntuserver:/mnt/data/vms/buero4# dmesg | grep -i tpm
[ 0.000000] efi: ACPI=0x90465000 ACPI 2.0=0x90465014 TPMFinalLog=0x90432000 ...
[ 0.003878] ACPI: TPM2 0x000000008E471000 00004C (v04 SUPERM SMCI--MB ...)
[ 3.667973] systemd[1]: systemd-pcrextend.socket - TPM2 PCR Extension (Varlink) ...
[ 3.738173] systemd[1]: systemd-tpm2-setup.service - TPM2 SRK Setup ...
Geräte-Check:
root@ubuntuserver:/mnt/data/vms/buero4# ls /dev/tpm*
/dev/tpm0 /dev/tpmrm0
TPM-Funktionalitäten abrufen:
root@ubuntuserver:/mnt/data/vms/buero4# tpm2_getcap --list
- algorithms
- commands
- pcrs
- properties-fixed
- properties-variable
- ecc-curves
- handles-transient
- handles-persistent
- handles-permanent
- handles-pcr
- handles-nv-index
- handles-loaded-session
- handles-saved-session
- vendor
Frage
Ohne TPM startet Windows 11 nicht – stattdessen lande ich in der Reparaturkonsole oder im BIOS, aber Windows selbst bootet nicht.
Hat jemand eine Idee, wie ich das TPM korrekt durchgereicht bekomme?
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 672163
Url: https://administrator.de/forum/hyper-v-maschinen-mit-windows-11-pro-auf-qemu-kvm-portieren-672163.html
Ausgedruckt am: 29.03.2025 um 12:03 Uhr
13 Kommentare
Neuester Kommentar
Moin
Ich nutze swtpm um Windows11 unter Ubuntu mit qemu zu betreiben. Villeicht wäre das eine Alternative.
lks
Ich nutze swtpm um Windows11 unter Ubuntu mit qemu zu betreiben. Villeicht wäre das eine Alternative.
lks
Proxmox Backup Server nicht zu vergessen.
https://www.proxmox.com/de/produkte/proxmox-backup-server/uebersicht
Es gibt ja einige, die VMware und Veeam mit Proxmox hinter sich lassen.
https://www.proxmox.com/de/produkte/proxmox-backup-server/uebersicht
Es gibt ja einige, die VMware und Veeam mit Proxmox hinter sich lassen.
Zitat von @temuco:
Die Windows-11-VMs nutzen hauptsächlich Office-Software und einige Handwerkerprogramme – also nichts Besonderes.
Ich denke doch, die Windows 11 Lizenz für die Virtualisierung ist jedenfalls nicht nicht klassische Home oder Pro, wenn ich mich nicht irre.Die Windows-11-VMs nutzen hauptsächlich Office-Software und einige Handwerkerprogramme – also nichts Besonderes.
Zitat von @temuco:
Nebenfrage: Hat Microsoft nichts dagegen, wenn man W11-VMs mit einem Software-TPM betreibt?
Nebenfrage: Hat Microsoft nichts dagegen, wenn man W11-VMs mit einem Software-TPM betreibt?
Nicht das ich wüßte. Es funktioniert zumindest.
lks