Laufwerk C: fast voll

Für unsere Firma setzen wir die Mehrplatzversion von vcEuroFaktura ein. Da wir dezentral arbeiten, haben wir uns vor einiger Zeit entschlossen, den cubeSQL Server auf einem bei Strato gehosteten virtuellen Server zu installieren. Auf dem Server läuft Windows Server 2016.

Da der Server vom Internet aus erreichbar ist, ist ein starkes Passwort obligatorisch. Darüber hinaus ist es absolut notwendig, den Server mit aktuellen Patches und Sicherheits-Updates zu versorgen. Das betrifft nicht nur das Betriebssystem, sondern jede Software, die Zugriff auf den Server bietet (in unserem Fall der SQL-Server).

In der Standardkonfiguration hat Strato die Systempartition knapp 40 GB groß gemacht und den Rest einer Datenpartition zugewiesen. Wie sich schnell herausstellt ist der Platz für das Betriebssystem recht knapp bemessen. Während die Updates des SQL-Servers kaum ins Gewicht fallen, haben die regelmäßigen Windows Updates dafür gesorgt, dass die Festplatte letzte Woche nahezu voll war.

Eine Analyse brachte schnell ans Licht, dass allein der im Windows Verzeichnis liegende Ordner WinSxS gut 34 GB der knapp 40 GB belegt. Normalerweise sollte ein Task im Aufgabenplaner dafür sorgen, dass der Ordner automatisch aufgeräumt wird. In unserem Fall hat das offensichtlich nicht geklappt. Möglicherweise reicht die voreingestellte Laufzeit von 1 Stunde nicht aus, um den Ordner sauber zu halten.

Abhilfe schafft man dadurch, indem man das zuständige Programm dism.exe manuell in einer mit Administrator-Rechten ausgestatteten Eingabeaufforderung  startet. Neben dem Vorteil dass die Laufzeit nicht begrenzt wird, bieten sich noch weitergehende Möglichkeiten, den Ordner WinSxS aufzuräumen (siehe Link). Bei unserem Server habe ich „mit dem größten Besen gekehrt“, also jede überflüssige Komponente aus dem Ordner entfernen lassen. Damit kann man allerdings im Fall der Fälle kein bis dahin eingespieltes Update mehr rückgängig machen. Man sollte also sicher sein, dass alles rund läuft.

Eigenschaften von WinSxS
Elevated command prompt

Der Befehl dafür lautet:

Dism.exe /online /Cleanup-Image /StartComponentCleanup /ResetBase

Der Lauf hat mehrere Stunden gedauert, bis er endlich durch war. Von den ursprünglich knapp 34 GB belegt der Ordner nun nur noch rund 7,5 GB.

Der Server hat nun also wieder genug Platz für die nächsten Updates.

Auf unserem Server hat die Datenpartition D: reichlich Platz, weswegen ich noch einen Schritt weiter gegangen bin und zusätzlich die Systempartition C: vergrößert habe.

Dafür habe ich in einem ersten Schritt den cubeSQL Dienst beendet und alle auf D: befindlichen Daten nach C: verschoben. Anschließend habe ich in der Datenträgerverwaltung die Datenpartition gelöscht (Volume löschen). Nun lässt sich die Systempartition vergrößern (Volume erweitern), in unserem Fall um 60 GB auf 100 GB. Danach erstellt man wieder die Datenpartition. Zum guten Schluss verschiebt man noch die Daten wieder nach D: und startet den cubeSQL Dienst wieder.

Laufwerk C: nach Bereinigung
Datenträgerverwaltung
Laufwerk C: nach Vergrößerung