Afrontémoslo: Windows es un sistema operativo que "se come" muchísimo espacio en disco. Ocupa muchísimo nada más instalarlo, pero es que a medida que pasa el tiempo todavía va ocupando más y más espacio. Los motivos son variados: cachés que se hacen de todo tipo de recursos, archivos temporales, configuraciones que se guardan en el perfil de los usuarios y, sobre todo, actualizaciones del propio sistema operativo.
Si dispones de un disco duro generoso normalmente esto no es una gran molestia. Pero si tienes restricciones de espacio (por ejemplo en un tablet) o cada GB extra ocupado te cuesta dinero (en la nube), esto puede llegar a ser un problema grave.
Lo primero que todos intentamos es borrar cosas innecesarias utilizando la utilidad que viene integrada en Windows:
La cual (sobre todo ejecutándola en modo administrador) es capaz de borrar archivos temporales, cachés y algunos archivos del sistema que ya no se necesitan.
Sin embargo los ahorros son más bien exiguos. Así que si necesitamos liberar más espacio lo siguiente suele ser utilizar algún programa para analizar el espacio en disco, y así identificar qué carpetas son las responsables de consumir más espacio.
Por supuesto, la carpeta más glotona es casi siempre "C:\Windows"
, y más en concreto, dentro de ésta, "C:\Windows\WinSxS"
. Esta carpeta siempre ocupa unos cuantos GB, y además va aumentando con el tiempo. No es raro que ocupe 10, 12 o 15GB de tu precioso espacio que podría ser utilizado para otras cosas.
Esta carpeta (Windows Side by Side, de ahí su nombre) contiene la caché nativa de ensamblados. Este pomposo nombre viene de los tiempos de Mari Castaña Windows Millenium (Windows Me: si no te suena, mejor para ti), y se suponía que iba a ser la solución del famoso "Infierno de las DLL" que infestaba a los sistemas operativos de por aquel entonces. En la actualidad sigue estando presente en todas las versiones de Windows, incluso las más recientes, y almacena todo tipo de basura electrónica al más puro síndrome de diógenes digital. De hecho, desde Windows Vista, almacena también los componentes del propio sistema operativo, por lo que, cuando una biblioteca o un componente del sistema operativo se actualiza, la versión vieja se archiva aquí, al igual que la nueva, que ahora apunta (mediante un hardlink) a la biblioteca real a la que está sustituyendo. De esta forma, si hay necesidad de utilizar dos versiones diferentes de lo mismo, las tienes aquí, o si hay que echar atrás alguna actualización, también podrías hacerlo.
Lo que ocurre es que lo más habitual es que esta carpeta permanezca llena de cosas obsoletas durante muchísimo tiempo, ocupando mucho espacio en disco.
OJO: si vas a mirar el espacio ocupado en disco por "C:\Windows"
con el explorador de archivos, el tamaño que te dará es mayor que el real. El motivo es precisamente lo que comentamos de los Hardlinks. Un hardlink permite que un mismo archivo esté en más de un sitio al mismo tiempo, pero que realmente solo esté guardado en disco una única vez. Pero el explorador de archivos no los gestiona bien y los cuenta todas las veces. Como muchos de los archivos que hay, por ejemplo, en "C:\Windows\System32"
en realidad son hardlinks a archivos de WinSxS, la carpeta del sistema parece ocupar mucho más de lo que en realidad ocupa. Si usas un programa que tenga en cuenta esto verás que el espacio ocupado no es en realidad tanto como parece. Eso sí, WinSxS está lleno de cosas inservibles a priori que sería bueno eliminar si andamos justos de espacio.
¿Podemos eliminar el contenido de WinSxS?
La respuesta es no. No directamente. Nos podríamos cargar partes importantes del sistema y dejarlo inutilizado, pero es que además tampoco podríamos debido a los permisos necesarios, ya que es una carpeta especialmente protegida por el sistema.
Entonces ¿qué podemos hacer?
Por suerte todas las versiones modernas de Windows ofrecen una herramienta de línea de comandos que sirve precisamente para lidiar con esta situación. Se trata de la Herramienta Deployment Image Servicing and Management, o dicho de modo más breve, DISM. Esta herramienta apareció con Windows Vista SP1 y Windows Server 2008, por lo que la tienes en cualquier sistema operativo posterior.
Para sacarle partido solo tenemos que abrir una línea de comandos como administradores y ejecutar un par de instrucciones.
Lo primero es averiguar cuánto espacio tenemos ocupado por WinSxS y cuánto realmente se puede liberar. Esto se consigue con esta instrucción:
Dism.exe /Online /Cleanup-Image /AnalyzeComponentStore
Por ejemplo, esta captura proviene de aplicar el comando en una máquina virtual con Windows Server 2016 recién instalado en un conocido proveedor Cloud:
Fíjate en cómo nos indica que el explorador de Windows nos diría que la carpeta ocupa casi 23GB!, aunque en realidad ocupa 19,03GB (que sigue siendo una barbaridad). Dado que la máquina virtual viene con unos exiguos 40GB de disco duro, todo lo que podamos liberar va a ser una gran ventaja para nosotros.
Nos indica que hay 5,79GB compartidos con Windows. Esos no los podemos eliminar, pero los otros más de 13GB que hay entre backups, características deshabilitadas del sistema y cachés y datos temporales, sí que podremos recuperarlos, así que en un caso así es un beneficio enorme. En esta máquina virtual en concreto, supone ¡ahorrar más de un 32% de espacio en disco!.
Para lograrlo en la misma línea de comandos escribe:
Dism.exe /online /Cleanup-Image /StartComponentCleanup /ResetBase
Esto le indica a DISM que libere todo el espacio que pueda y que deje solo las últimas versiones de los componentes del sistema. Con esto conseguiremos el máximo ahorro, pero no podremos volver atrás si necesitamos deshacer una actualización (algo que raramente haremos de todos modos). Si llevas bastante tiempo con el sistema actualizado y funcionando correctamente no deberías tener problema alguno por hacerlo.
El proceso tarda bastante rato, y podemos ver el resultado final en la pantalla así:
No nos indica gran cosa, pero podemos ver el log en la ruta indicada y si comprobamos el espacio libre en disco desde el explorador de archivos, veremos que hemos ganado un montón de GBs para ser utilizados para otras cosas más útiles.
Windows 10 y Windows Server 2016 se supone que ejecutan este proceso automáticamente de vez en cuando, pero probablemente no de modo exhaustivo como hemos hecho nosotros, pues esta carpeta no de deja de crecer. Tampoco hay que obsesionarse con hacer esto cada pocos días, pero seguramente hacerlo una vez al año (o cuando veamos que la carpeta de "desmadra") nos vendrá muy bien.
¡Espero que te sea útil!