Articles

Datenträgerbereinigung in Windows Server

Im Laufe der Zeit, wenn Ihr Windows Server länger läuft, wird immer mehr Speicherplatz belegt. Einfach weg! Die Untersuchung der Festplattennutzung lässt Sie ahnungslos; Es gibt keine großen Protokolldateien, Crash-Dumps, oder es gibt keine Software entfernt werden. Wohin ist dieser Raum gegangen?

Die Antwort: Windows Updates, Service Pack und Hotfix-Installationen.

Protip: Dieser Beitrag zeigt Ihnen auch, wie Sie den Ordner Windows Server SoftwareDistribution und den Ordner Dokumente des Benutzers auf eine andere Partition verschieben.

WinSxS–Bereinigung in Windows Server – mit DISM und PowerShell#

Das Windows-Dienstprogramm zur Datenträgerbereinigung cleanmgr ist in Windows Server 2012 nicht verfügbar, wenn die Desktop Experience-Funktion nicht installiert ist. Dies macht das Bereinigen des verwendeten Speicherplatzes etwas schwieriger. Sie können Ihre cmd.exe oder PowerShell-Befehlszeile verwenden und Deployment Image Servicing and Management (DISM) verwenden, um den Windows Component Store (WinSxS) in Windows Server 2012 und höher zu bereinigen.

Der Ordner WinSxS befindet sich beispielsweise im Windows-Ordner C:\Windows\WinSxS. Es ist der Speicherort für Windows Component Store-Dateien.

Der Windows-Komponentenspeicher enthält alle Dateien, die für eine Windows-Installation erforderlich sind. Alle Aktualisierungen dieser Dateien werden bei der Installation der Updates auch im Komponentenspeicher gespeichert (Quelle: KB 2795190 – und verwalten Sie den Komponentenspeicher nicht). Der WinSxS-Ordner wird groß…

Bereinigen wir WinSxS!

Mit Deployment Image Servicing and Management (DISM)#

Aufräumrituale nach der Parade
Aufräumrituale nach der Parade. Bild über Flickr von Pabak Sarkar

Dism Disk cleanup: Deployment Image Servicing and Management (DISM) ist ein Befehlszeilentool, mit dem Sie Windows-Funktionen, -Pakete, -treiber und -internationale Einstellungen installieren, deinstallieren, konfigurieren und aktualisieren können. Der /Cleanup-Image Parameter von dism.exe bietet fortgeschrittenen Benutzern mehr Optionen, um die Größe des WinSxS-Ordners weiter zu reduzieren.

Die Dism.exe /Online /Cleanup-Image hat ein paar zusätzliche Parameter (oder Schalter):

  • /AnalyzeComponentStore
  • /StartComponentCleanup
  • /ResetBase mit /StartComponentCleanup
  • /SPSuperseded

In diesem Artikel gehe ich davon aus, dass Sie die Hilfeoptionen lesen, fügen Sie einfach /? hinzu, wie: dism.exe /Online /Cleanup-Image /?.

Wenn Ihnen dies gefallen hat, könnte Ihnen auch der folgende Beitrag gefallen, in dem 5 zusätzliche Möglichkeiten zum Bereinigen des Speicherplatzes in Windows Server zusammengefasst werden!

Analysieren Sie den WinSxS-Ordner (Komponentenspeicher) mit /AnalyzeComponentStore#

Zuerst können Sie den Parameter /AnalyzeComponentStore verwenden. Dadurch wird die Größe des Komponentenspeichers in Windows analysiert. Die AnalyzeComponentStore-Option ist in Windows 8.1 Windows Server 2012 R2 verfügbar und benachrichtigt Sie, ob eine Bereinigung des Komponentenspeichers empfohlen wird oder nicht.

dism.exe /Online /Cleanup-Image /AnalyzeComponentStore
Code language: PowerShell (powershell)
dism.exe /online /Cleanup-Image /AnalyzeComponentStore
dism.exe /online /Cleanup-Image /AnalyzeComponentStore

In the above image, AnalyzeComponentStore recommends a Component Store Cleanup. Let’s do so.

/StartComponentCleanup parameter#

Dism.exe removes superseded and unused system files from a system with the /StartComponentCleanup parameter.

dism.exe /Online /Cleanup-Image /StartComponentCleanup
Code language: PowerShell (powershell)
dism.exe /online /Cleanup-Image /StartComponentCleanup
dism.exe /online /Cleanup-Image /StartComponentCleanup

Es gibt auch eine registrierte geplante Aufgabe namens StartComponentCleanup. Sie können diese Aufgabe über die Befehlszeile starten:

schtasks.exe /Run /TN "\Microsoft\Windows\Servicing\StartComponentCleanup"
Code language: PowerShell (powershell)

Der Parameter /StartComponentCleanup wird unter Windows 8, Windows Server 2012 und höher unterstützt.

Verwenden des /StartComponentCleanup-Parameters von Dism.exe unter Windows 10 liefert ähnliche Ergebnisse wie das Ausführen der StartComponentCleanup-Aufgabe im Taskplaner, mit der Ausnahme, dass frühere Versionen aktualisierter Komponenten sofort gelöscht werden (ohne eine 30-tägige Nachfrist) und Sie keine 1-stündige Zeitüberschreitungsbeschränkung haben.

Geben Sie in einer Eingabeaufforderung mit erhöhten Rechten Folgendes ein:Kopieren

Dism.exe /online /Cleanup-Image /StartComponentCleanup
Code language: PowerShell (powershell)

/ResetBase Schalter mit /StartComponentCleanup Parameter#

Mit dem /ResetBase Schalter mit dem /StartComponentCleanup Parameter von dism.exe, alle abgelöste Versionen aller Komponenten im Komponentenspeicher werden entfernt.

dism.exe /Online /Cleanup-Image /StartComponentCleanup /ResetBase
Code language: PowerShell (powershell)
dism.exe /online /Cleanup-Image /StartComponentCleanup /ResetBase
dism.exe /online /Cleanup-Image /StartComponentCleanup /ResetBase

Alle vorhandenen Service Packs und Updates können nach Abschluss dieses Befehls nicht deinstalliert werden. Dadurch wird die Deinstallation zukünftiger Service Packs oder Updates nicht blockiert.

Der Parameter /ResetBase wird unter Windows 8.1 und Windows Server 2012 R2 unterstützt.

/SPSuperseded parameter#

Der /SPSuperseded Parameter entfernt alle Sicherungskomponenten, die für die Deinstallation eines Service Packs benötigt werden. Das Service Pack kann nach Abschluss dieses Befehls nicht deinstalliert werden.

dism.exe /Online /Cleanup-Image /SPSuperseded
Code language: PowerShell (powershell)

Das Service Pack kann nach Abschluss dieses Befehls nicht deinstalliert werden.

Der Parameter /SPSuperseded wird unter Windows 7 oder Windows Server 2008 R2 Service Pack 1, 2012, 2012 R2 unterstützt.

Die Option /AnalyzeComponentStore ist in Windows 8.1 und Windows Server 2012 R2 verfügbar. Verwenden Sie diese Option, um die Größe des Komponentenspeichers (WinSxS-Ordner) in Windows zu analysieren.

Das Datenträgerbereinigungstool ist unter Windows Server 2012 verfügbar, jedoch nicht unter Windows Server 2012 R2#

Wie zu Beginn dieses Artikels erwähnt, ist das Datenträgerbereinigungstool unter Windows Server 2012 verfügbar, wenn Sie die Desktop Experience-Funktion installieren.

In einigen Versionen von Windows Server können Sie einfach cleanmgr.exe und cleanmgr.exe.muiauf C:\Windows\system32 und C:\Windows\system32\en-Us von einem alten Windows 2008 R2-Server kopieren, wenn Sie die Desktop Experience-Funktion nicht installieren möchten.

Die folgenden Schritte zum Installieren (Kopieren) von cleanmgr funktionieren möglicherweise nicht auf allen Versionen von Windows Server. Versuchen Sie es selbst.

Disk Cleanup Wizard Addon auf Windows Server 2008 R2
Microsoft KB2852386 fügt eine Datenträgerbereinigung Option auf Windows Server 2008 R2, ähnlich dem Windows 7 Update. Ich habe dies auf Windows Server 2012 getestet. Es kann nicht alles aufräumen, aber zumindest viel.

So stellen Sie cleanmgr.exe unter Windows Server 2012 Standard (Windows Version 6.2.9200) zur Verfügung, ohne die Desktop Experience-Funktion zu installieren:

Microsoft Windows (c) 2012 Microsoft Corporation. All rights reserved.PS C:\Users\jan> $osversion = ::OSVersion.VersionPS C:\Users\jan> write-host $osversion6.2.9200.0C:\Windows\System32>cd ..C:\Windows>copy WinSxS\amd64_microsoft-windows-cleanmgr.resources_31bf3856ad364e35_6.2.9200.16384_en-us_b6a01752226afbb3\cleanmgr.exe.mui \Windows\system32\en-US 1 file(s) copied.C:\Windows>copy WinSxS\amd64_microsoft-windows-cleanmgr_31bf3856ad364e35_6.2.9200.16384_none_c60dddc5e750072a\cleanmgr.exe \Windows\system32 1 file(s) copied.C:\Windows>system32\cleanmgr.exeC:\Windows>
Code language: PowerShell (powershell)

Leider funktioniert dies nicht mehr unter Windows Server 2012 R2 (6.3.9600), wahrscheinlich aufgrund von KB2821895. Wie Aaron in den Kommentaren darauf hingewiesen hat, funktioniert die obige Lösung zum Kopieren der Dateien cleanmgr.exe und cleanmgr.exe.mui nicht immer gut. Daher habe ich diese Informationen für Windows Server 2012 R2 entfernt.

Glücklicherweise ist die Datenträgerbereinigungsfunktion in Windows Server 2016 (mindestens TP5) wieder verfügbar.

Datenträgerbereinigung in Windows Server 2016 TP5
Datenträgerbereinigung in Windows Server 2016 TP5

Nach dem Bereinigen der Festplatte ist ein Neustart des Servers erforderlich. Vergessen Sie nicht, Ihren Computer – oder Server – danach neu zu starten! Die eigentliche Bereinigung des WinSxS-Verzeichnisses erfolgt beim nächsten Neustart.

Fehler 0x800f0906 mit DISM /Online /Cleanup-Image, PowerShell Install-WindowsFeature und SFC /scannow#

Einige Berichte sind im Microsoft Security Bulletin MS14-046, DISM /Online /Cleanup-Image /RestoreHealth, PowerShell Install-WindowsFeature mit -Source Parameter und SFC /scannow. Ja, es ist viel kaputt gegangen …

Microsoft stellt ein Update zur Verfügung: KB3005628

Update für .NET Framework 3.5 unter Windows 8, Windows 8.1, Windows Server 2012 und Windows Server 2012 R2. Dieses Update behebt ein Problem, das verhindert, dass das optionale Microsoft .NET Framework 3.5-Feature aktiviert wird, nachdem Sie das Sicherheitsupdate 2966827 oder 2966828 (beschrieben im Microsoft Security Bulletin MS14-046) für Microsoft .NET Framework 3.5 installiert haben.

Windows Server SoftwareDistribution-Ordner verschieben#

Im Laufe der Zeit kann Ihr Windows Updates SoftwareDistribution-Ordner in c:\Windows\SoftwareDistribution ziemlich groß werden, z. B. wenn mehrere Updates nicht erfolgreich installiert wurden.

Windows Update-Dateien werden in diesen Ordner heruntergeladen und nach erfolgreicher Installation entfernt. Wenn Sie sich in einer Situation befinden, in der Ihre C: -Partition eher klein ist und der SoftwareDistribution-Ordner zu viel Speicherplatz belegt, führen Sie die folgenden Schritte aus, um den SoftwareDistribution-Ordner an einen anderen Speicherort zu verschieben.

Alles in einer cmd.exe Shell (Start > Run >cmd und drücken Sie die Eingabetaste). In diesem Beispiel ist der neue Speicherort D:\Windows-SoftwareDistribution .

  1. Beenden Sie den Windows Update-Dienst:
  2. Benennen Sie den Ordner um c:\Windows\SoftwareDistribution zu c:\Windows\SoftwareDistribution.oldrename c:\windows\SoftwareDistribution SoftwareDistribution.old
  3. Erstellen Sie einen Link mit Windows Sysinternals Junction oder Windows mklink
    • Erstellen Sie das neue Verzeichnis:
      mkdir D:\Windows-SoftwareDistribution
    • Erstellen Sie die Verbindung:
      c:\>junction C:\Windows\SoftwareDistribution "D:\Windows-SoftwareDistribution", oder:
      c:\>mklink /J C:\Windows\SoftwareDistribution "D:\Windows-SoftwareDistribution"
  4. Starten Sie den Windows Update-Dienst: net start wuauserv

Wenn nach einer Weile alles gut zu laufen und zu aktualisieren scheint, löschen Sie Ihre SoftwareDistribution.alten Ordner.

Ordner für Benutzerdokumente verschieben#

Eine andere Möglichkeit, zusätzlichen Speicherplatz zu gewinnen, besteht darin, den Ordner für Benutzerdokumente (und andere, z. B. Downloads) zu verschieben, z. B. von C:\Users\$USER$\Documents nach D:\User\$USER$\Documents (ersetzen Sie $USER$ durch den Benutzernamen, dessen Dokumentenordner Sie verschieben möchten). Hier sind die Schritte, die Sie ausführen müssen (Screenshots von Windows Server 2016 TP5):

  1. Öffnen Sie den Explorer und klicken Sie mit der rechten Maustaste auf den Ordner Dokumente und dann auf Eigenschaften
  2. Wählen Sie den Speicherort
  3. Ändern Sie den Speicherort der Dateien
  4. Wenn das Ziel nicht vorhanden ist, fordert Windows auf, den Ordner für Sie zu erstellen
  5. Nach Abschluss werden die Dateien an ihren neuen Speicherort verschoben.
Ordner für Windows-Benutzerdokumente verschieben, Schritt 01
Ordner für Windows-Benutzerdokumente verschieben, Schritt 01
Ordner für Windows-Benutzerdokumente verschieben, Schritt 02
Ordner für Windows-Benutzerdokumente verschieben, Schritt 02
Ordner für Windows-Benutzerdokumente verschieben, Schritt 03
Verschieben eines Windows-Benutzerdokumentordners, Schritt 03

Fazit#

Ja, der Windows-Komponentenspeicher (WinSxS-Ordner) kann sehr groß werden. Glücklicherweise bietet uns Microsoft die Tools zum Überwachen, Verwalten und Bereinigen des WinSxS-Ordners, um den verwendeten Speicherplatz wiederzugewinnen.

Wenn Sie mit der Installation der Desktop Experience Windows-Funktion auf Ihrem System vertraut sind, können Sie das Dienstprogramm zur Datenträgerbereinigung auf Ihrem System verwenden. Andernfalls können Sie den Befehl DISM (Deployment Image Servicing and Management) für verschiedene Bereinigungsaufgaben verwenden.

Um zusätzlichen freien Speicherplatz zu erhalten, können Sie auch den Ordner Windows SoftwareDistribution in eine andere Partition verschieben.