Schnell große Dateien an der Windows Kommandozeile erstellen

Manchmal braucht mal „auf die Schnelle“ eine Testdatei. Sei es um Fileserver zu testen, Netzwerkverbindungen auszulasten oder ein Dateisystem zu stressen.

Der schnellste bekannte Weg große Dateien zu erstellen ist mit dem Tool fsutil. Das geht an der CMD-Shell und natürlich auch in der PowerShell.

Lösung

fsutil file createnew <DATEINAME> <GROESSE>

Die Größe wird dabei in bytes angegeben.

Beispiele

fsutil file createnew 01MB-TESTDATEI.TEST 1048576

fsutil file createnew 01GB-TESTDATEI.TEST 1073741824

fsutil file createnew 05GB-TESTDATEI.TEST 5368709120

fsutil file createnew 10GB-TESTDATEI.TEST 10737418240

Falls man Probleme hat MB/MiB, KB/KiB und so weiter auseinanderzuhalten, es gibt da ein wundervolles XKCD das einiges erklärt 🙂

Neues Zertifikat als PFX (mit private key) für Windows Server aus signed CER erstellen

Zertifikate sind eigentlich vom Ablaufverständnis her einfach – aus privatem Teil und öffentlichem Teil kann man ein PFX erzeugen, das sich für dem schnellen Import in Windows-Server eignet. Der Weg über einen bestehenden PK ist deutlich einfacher und schneller als ein neues CSR mit neuem PK und ein neuer Signierungsvorgang.

(Wenn möglich sollte aber natürlich ein neuer Key bevorzugt werden.)

Wie befreie ich den privaten Schlüssel (private Key, PPK) aus einer alten *.PFX Datei?

openssl pkcs12 -in EXAMPLE.pfx -nocerts -out EXAMPLE.key

Nach der Kennworteingabe für die Extraktion und der Kennworteingabe für die verschlüsselte Ablage des Keys liegt die EXAMPLE.key Datei vor.

Wie erstelle ich aus privatem Schlüssel (*.key) und neuem Zertifikat (*.cer) ein neues PFX (PKCS #12 Archivdatei)?

openssl.exe pkcs12 -export -out EXAMPLE-NEU.pfx -inkey EXAMPLE-PRIVATE-KEY.key -in EXAMPLE-CERTIFICATE.cer

Wenn die CA mehrere Intermediate Zertifikate und/oder ihre eigene Root-CA Zertifikate als eigene Dateien mitliefert, kann man diese mit mehreren -in Parametern in das PFX auch gleich mit einpacken (die Kette sollte in der richtigen Reihenfolge, angefangen mit dem Root-CA-Zertifikat angegeben werden):

openssl.exe pkcs12 -export -out EXAMPLE-NEU.pfx -inkey EXAMPLE-PRIVATE-KEY.key -in EXAMPLE-RootCA.cer -in EXAMPLE-CA.crt -in EXAMPLE-CERTIFICATE.crt

Alternativ kann auch eine CA-Kette in einer Datei mit dem Parameter -certfile verwendet werden:

openssl.exe pkcs12 -export -out EXAMPLE-NEU.pfx -inkey EXAMPLE-PRIVATE-KEY.key -in EXAMPLE-CERTIFICATE.crt -certfile CA-CHAIN.cer

Windows Update Fehler 8007000e (Windows Server)

Lösung

0x8007000e (E_OUTOFMEMORY) meint wörtlich „Es steht nicht genügend Speicherplatz zur Verfügung, um diesen Vorgang abzuschließen“ (Not enough memory resources are available to complete this operation).

Mit „Speicher“ ist hier nicht zwingend die Festplatte gemeint, das kann auch RAM, GDI-Speicher oder eine zu kleine Pagefile sein. Oft passiert das auf Servern wo der RAM vollgelaufen ist.

  1. Systemlaufwerk prüfen. Auf %SystemDrive% sollten etwa 12GiB Platz frei sein.
  2. Arbeitsspeicher prüfen. Für ein Windows-Update sollten ~4GiB Platz frei sein.
  3. Dritt-Tools (Virenscanner, Firewall, Dateisystemfilter (DropBox, HiDrive, …) entfernen/deaktivieren

Sobald die Maschine genug RAM und Platz hat läuft das Upate wieder durch. In seltenen Fällen mussten wir auch mal Windows Update zurücksetzen (Dienste beenden, SoftwareDistribution löschen) und neu starten.

Windows EinstellungenApp „Sie benötigen eine neue App zum Öffnen von windowsdefender“

Abgesehen von der interessanten Schreibweise des Wortes „windowsdefender“ ist diese Meldung innerhalb der Windows „Einstellungen“ verwirrend. Ein Klick auf „Viren- & Bedrohungsschutz“ erzeugt ein neues In-App-Windows das unverrückbar behauptet:

Sie benötigen eine neue App zum Öffnen von windowsdefender

Die genaue Ursache dafür kennen wir nicht, aber wir haben diesen Effekt schon unter Windows 10, 11, Windows Server 2016, 2019 und 2022 gesehen. Es hilft in der Regel aber, einfach das zugehörige Appx-Paket neu zu registrieren.

Lösung (Windows Server, Windows 10)

Alle (!) Fenster der „Einstellungen“ App (auch von anderen Nutzern) schliessen, dann an der PowerShell „Als Administrator“ ausführen:

Add-AppxPackage -Register -DisableDevelopmentMode C:\Windows\SystemApps\Microsoft.Windows.SecHealthUI_cw5n1h2txyewy\AppxManifest.xml

Danach funkioniert der Zugriff sofort wieder.

Lösung (Windows 11, seltener)

Unter Windows 11 ist der Fehler manchmal etwas widerspenstiger und braucht zwischen Reset und Configure einen zusätzlichen Neustart:

Get-AppxPackage Microsoft.SecHealthUI -AllUsers | Reset-AppxPackage

Reboot 💬

Add-AppxPackage -Register -DisableDevelopmentMode C:\Windows\SystemApps\Microsoft.Windows.SecHealthUI_cw5n1h2txyewy\AppxManifest.xml

Windows Update Fehler 0x800f0922

Bei „großen“ Updates wie den CU’s oder dem Upgrade auf eine neue Version taucht gerne mal Fehlercode 0x800f0922 auf. In der Fehlerdatenbank ist das ein CBS_E_INSTALLERS_FAILED, was nicht viel weiterhilft. Der Fehlercode ist aber (immerhin) also nicht spezifisch für Windows-Update, es ist ein Rollen- oder Softwareinstallationsfehler.

Lösung(en)

Es gibt, wie immer, mehrere Ursachen für 0x800f0922. Am häufigsten begegnet uns die defekte Zählerdatenbank des PerfCounterInstallers, das sollte man vieleicht zuerst ausprobieren.

Möglichkeit 1 (PerfCounterInstaller)

Die Performance Counter (PerfCounterInstaller) Zählerdatenbank ist kaputt. An der „als Administrator“ ausgeführten Shell kann man selbige (und den WMI-Zugriff) aber schnell zurücksetzen:

lodctr /R
winmgmt.exe /RESYNCPERF

Meistens funktioniert die Installation danach sofort ohne Fehler.

Möglichkeit 2 (RestoreHealth)

Das Windows Base-Image ist kaputt. Das kommt schon mal bei verwickelten .NET FrameWork Installationen vor oder mehrfachem hinzufügen/entfernen von Windows Sever Rollen. Aber auch das ist meistens schnell behoben.

dism /Online /Cleanup-Image /RestoreHealth

Möglichkeit 3 (Edge „not found“)

Microsoft Edge wurde „falsch“ deinstalliert oder die Preview wurde nicht richtig aktualisiert. Einige Updates, vor allem KB5003173, versuchen zusätzliche Dateien für Edge aktualisieren. Das schlägt aber fehlt, wenn der Ordner %ProgramFiles(x86)%\Microsoft\Edge\ leer ist. Die Lösugn besteht darin, diesen leeren (!) Ordner einfach zu entfernen.

rd "%ProgramFiles(x86)%\Microsoft\Edge"

Möglichkeit 4 (.NET Framework)

Der Aktualisierungsvorgang kann auch mit Fehler 0x800f0922 fehlschlagen, wenn die .NET Framework 3.5 Komponenten nicht aktiviert sind. Das kann man an der „Als Administrator“ Shell ebenfalls schnell ändern, nachdem man die Windows-CD mit dem „WinSXS“ Ordner eingelegt (oder gemountet) hat:

Dism /online /enable-feature /featurename:NetFX3 /All /Source:<LAUFWERK>:\sources\sxs /LimitAccess

Hat man keine CD zur Hand, findet man den „.NET Framework 3.5 Offline Installer“ hier:

https://dotnet.microsoft.com/en-us/download/dotnet-framework/net35-sp1