Windows 11 | Kernelisoierung

Wenn in Windows 11 aufgrund eines inkompatiblen Treibers die Speicherintegrität nicht aktiviert werden kann, kann der entsprechende Treiber deinstalliert werden, sofern er nicht verwendet wird.

Hier die Meldung von Windows 11:

image

Bevor nun der Treiber deinstalliert wird, ist es sinnvoll zu prüfen ob dieser nicht doch geladen ist. Für diesen Fall, konnte ich das schon im Vorfeld ausschließen, da es sich um mein eigenes Surface Laptop Studio handelte und ich keine WDC-Geräte im Einsatz habe.

Der folgende “One-Liner” in PowerShell zeigt, ob zum Beispiel der Treiber für “Volume Shadow Copy / volsnap” geladen ist (Quasi als Test).

# Check if volsnap\.sys is running
Get-CimInstance Win32_SystemDriver | Where-Object { $_.State -eq 'Running' -and $_.PathName -match 'volsnap\.sys' } | ForEach-Object { "Driver '$($_.Name)' is running from path: $($_.PathName)" }

image

Wie im folgenden Aufruf zu sehen, muss nun der Volsnap gegen den WDCsam64_PreWin8 ausgetauscht werden. Der Name lässt sich übrigens über die Zwischenablage kopieren. Im Gegensatz zu oben darf nun nichts angezeigt werden.

# Check if wdcsam64_prewin8\.sys is running
Get-CimInstance Win32_SystemDriver | Where-Object { $_.State -eq 'Running' -and $_.PathName -match 'wdcsam64_prewin8\.sys' } | ForEach-Object { "Driver '$($_.Name)' is running from path: $($_.PathName)" }

Jetzt kann der WDC-Treiber entfernt werden. Am einfachsten geht das mit pnputil.exe, wenn man den “Veröffentlichter Name“: oem26.inf verwendet (oben im Screenshot blau unterstrichen). Die Eingabeaufforderung dazu bitte als Administrator ausführen.

# Deleting wdcsam64_prewin8.sys driver
pnputil /delete-driver oem26.inf /uninstall /force

image

Jetzt den PC neu starten und die Speicherintegrität kann eingeschaltet werden, was aber danach einen erneuten Neustart erfordert.

image

Sieht am Ende so aus und Windows 11 ist damit auch zufrieden.

image

Enjoy it, b!

P.S. jetzt kümmere ich mich darum wieso Windows 11 glaubt, dass mein Laptop alles in DE-DE anzeigen muss, obwohl ich EN-US eingestellt habe.

Hyper-V | Konvertierung virtueller Disks

Gerade gibt es im Bereich der Virtualisierung recht viel zu tun. Ein zentrales Thema ist dabei die Konvertierung von virtuellen Disks (VHD). Da Broadcom VMware freiwillig aufs Abstellgleis geschoben hat, spielen OpenSource und Hyper-V immer mehr eine wichtige Rolle.

Ich bin schon lange ein Freund von Hyper-V, da damit auch in kleinen Umgebungen virtualisiert werden kann, wenn ohnehin schon eine Windows Server-Lizenz vorliegt. Spätestens seit QNAP und Synology ihre NAS-Systeme mit Prozessoren von AMD und Intel ausstatten und zudem Hauptspeicher von 32 GB und mehr vorhanden ist, spricht nichts dagegen, auch auf einem NAS einen Anwendungsserver zu virtualisieren.

QEMU, hin und zurück

Während sich VHDs von Hyper-V (auch VHDX genannt) unter dem Synology Virtual Machine Manager importieren lassen und dabei zu einer VMDK konvertiert werden, ist bei der Migration einer VM von einer Synology auf einen Hyper-V-Server Handarbeit erforderlich.

Wird eine VM auf einem Synology-NAS exportiert, liegt am Ende des Vorgangs eine OVA-Datei in einem Verzeichnis/Share vor.

Die OVA-Datei ist ein Container, der neben allen Festplatten der VM auch deren Konfiguration in Form einer XML-Datei beinhaltet. Letztere wurde jedoch aus „Sicherheitsgründen” mit der Endung OVF versehen.

Der Importvorgang unter Hyper-V, der im Grunde keiner ist, läuft dabei wie folgt ab:

  1. Erstellen einer VM in Hyper-V mit den passenden Parametern. Hat man sich die Konfiguration nicht gemerkt, kann man ja in der OVF-Datei nachschauen
  2. Kopieren der VHDX in den Ordner “Virtual Hard Disks”
  3. Anhängen der virtuellen Disk (VHDX ) an die VM
  4. Start der VM

Wie kommt man nun aber von der OVA zu einer VHDX -Datei?

Dazu sind die folgenden Schritte notwendig:

image

Hier die einzelnen Befehle und bitte die Namen der Disks anpassen:

::  Entpacken der OVA-Datei mit 7z
7z.exe e w11-test-02.ova

:: Konvertieren der ersten Disk aus der OVA-Datei (welche das Betriebssystem enthaelt) in das vhdx-Format
qemu-img.exe convert w11-test-02-disk1.vmdk -O vhdx -o subformat=dynamic w11-test-02.vhdx

Nachdem Microsoft den Virtual Machine Converter (MVMC) aus unerfindlichen Gründen beerdigt hat, verwende ich neben dem QEMU disk image utility noch Disk2vhd, wenn ich mich nur in der Microsoft-Welt bewege.

Update 18.06.2025
Muss eine Hyper-V VHDX für QEMU, KVM oder libvirt (zum Beispiel GNOME Boxes) konvertiert werden, erfolgt das mit folgendem Aufruf (auch hier bitte die Pfade und Namen anpassen:

::  Konvertieren einer Hyper-V VHDX für die Verwendung mit QEMU
qemu-img.exe convert -f vhdx -O qcow2 ..\Win11_24H2_English_x64-rufus.vhdx ..\..\Win11_24H2_English_x64-rufus.qcow2 -p

Enjoy it, b!

Windows Server 2016 | Update NuGet fails

Ein paar Tage hat er ja noch, der Windows Server 2016 und falls mit PowerShell neue Module geladen werden sollen kann eine Aktualisierung des NuGet-Paketproviders erforderlich sein.

Sollte diese fehlschlagen und die folgende Fehlermeldung erscheinen, kann das an einer nicht ausreichenden Transportverschlüsselung liegen.

Hier die Fehler beim Versuch ein PowerShell-Modul zu installieren, was wiederum eine Aktualisierung von NuGet notwendig machte.

image

Bei dem Versuch die Aktualisierung manuell durchzuführen.

image

Die Lösung lag in der Verwendung von TLS1.2 für .Net.

# Forcing .Net to use TLS1.2 instead of SSL3 or lower TLS versions
[System.Net.ServicePointManager]::SecurityProtocol = [System.Net.SecurityProtocolType]::Tls12;

image

Danach hat auch die Installation des PowerShell Windows Update Modules ohne Probleme funktioniert.

Enjoy it, b!