Los archivos que quedan al borrar una app de Mac
Arrastrar una app a la Papelera deja atrás cachés, contenedores y preferencias. Dónde encontrar esos restos en tu Mac y cómo borrarlos.
Por ahora, más guías como esta solo están disponibles en inglés. Ver todos los artículos
Windows tiene un registro y una convención de desinstalación que, de forma imperfecta, intenta
limpiar después de sí misma. macOS no tiene ninguna de las dos cosas. Cuando arrastras una app a la
Papelera, eliminas exactamente una cosa: el paquete .app. Todo lo demás que escribió alguna vez en
tu disco — y una app típica escribe en cinco o seis lugares distintos — se queda exactamente donde
estaba, para siempre, a menos que vayas tú mismo a buscarlo.
Dónde escribe realmente una app, más allá de su propio paquete
Una sola app puede dejar archivos en todos estos lugares, ninguno de los cuales se toca cuando borras la app en sí:
~/Library/Application Support/<AppName> # ajustes, bases de datos locales, a veces cachés enormes
~/Library/Caches/<bundle.id> # caché reconstruible — ver la guía dedicada más abajo
~/Library/Containers/<bundle.id> # las apps con sandbox tienen aquí un sistema de archivos privado completo
~/Library/Preferences/<bundle.id>.plist # ajustes, diminuto, pero se acumula entre cientos de apps
~/Library/Saved Application State/<bundle.id>.savedState # estado de restauración de ventanas/pestañas
~/Library/Logs/<AppName> # registros de diagnóstico, a veces gigabytes en apps habladoras
Nada de esto es un error ni una app comportándose mal — este es el lugar documentado y correcto para que una app ponga estos datos. El problema está enteramente del lado de la eliminación: nada en macOS es responsable de limpiarlo cuando la app misma desaparece.
Encontrar lo que pertenece a una app que ya borraste
Si ya arrastraste la app a la Papelera y solo ahora te preguntas qué dejó atrás, su identificador de paquete es la clave — todo lo de arriba está archivado bajo ese identificador, pero ya no tienes la app cerca para decirte cuál era.
# Busca en los metadatos de Spotlight una coincidencia plausible de identificador de paquete
mdfind "kMDItemCFBundleIdentifier == '*appname*'"
# O simplemente busca por el nombre de la app directamente en las ubicaciones habituales de restos
find ~/Library/Application\ Support ~/Library/Caches ~/Library/Containers \
~/Library/Preferences ~/Library/Saved\ Application\ State ~/Library/Logs \
-iname "*appname*" -maxdepth 1 2>/dev/null
Los identificadores de paquete son DNS inverso (com.company.AppName), así que buscar por el nombre
de la empresa o del producto suele sacar a la luz todas las carpetas relevantes incluso cuando el
identificador exacto no es obvio.
Qué restos vale realmente la pena borrar
No todo resto merece perseguirse individualmente — un archivo de preferencias .plist son unos
pocos kilobytes, y buscarlo para cada app que hayas eliminado alguna vez no es un buen uso de una
tarde. Los que valen la pena son los grandes:
~/Library/Containers/<bundle.id>— en apps con sandbox (la mayoría de las apps modernas de la App Store, y muchas otras), esto es efectivamente un sistema de archivos privado del que la app disponía por completo. Editores de vídeo, herramientas de diseño, y cualquier cosa que procese archivos multimedia grandes deja rutinariamente contenedores de varios gigabytes.~/Library/Application Support/<AppName>— aquí es donde vive la base de datos local real de una app, si tiene una. Apps de chat, apps de notas, y cualquier cosa con una caché sin conexión suelen poner aquí varios gigabytes.~/Library/Logs/<AppName>— normalmente pequeño, pero un número reducido de apps (las herramientas de videoconferencia son reincidentes habituales) registran con tanto detalle que llegan a un gigabyte o más con el tiempo.
~/Library/Caches/<bundle.id> de una app borrada es inequívocamente seguro — es caché de una app que
ya no existe para usarla, así que no hay ningún costo de reconstrucción que considerar, a diferencia
de borrar la caché de una app que todavía usas.
# Una vez que confirmaste que la app realmente se fue e identificaste sus carpetas:
rm -rf ~/Library/Application\ Support/AppName
rm -rf ~/Library/Containers/com.company.AppName
rm -rf ~/Library/Caches/com.company.AppName
Lo único que vale la pena comprobar antes de borrar un Container
El Container de una app con sandbox puede, en casos raros, contener la única copia de algo que creaste dentro de esa app y nunca exportaste — algunas apps de notas y de dibujo guardan tu contenido real de esta forma en lugar de en una carpeta Documentos normal. Antes de borrar un Container de una app sobre la que tienes dudas, abre la app una vez más (si todavía puedes) y comprueba si hay algo dentro que quieras exportar primero. Una vez que estés seguro, borrar es inmediato e irreversible en el sentido de que no hay nada que regenerar — igual que cualquier borrado de archivos, solo que sin una app cerca para avisarte.
Por qué esto es peor de lo que suena, a escala
Nadie desinstala una app y se preocupa por 200 MB de restos. El costo real es acumulativo: un Mac que ha tenido cien apps instaladas y eliminadas a lo largo de varios años — versiones de prueba, utilidades puntuales, apps que probaste y no conservaste — puede fácilmente estar cargando con 10–20 GB de datos huérfanos de software que ya ni siquiera está en la máquina, invisibles porque no hay ningún icono en el Finder que te recuerde que alguna vez existió.
DevCruft, una app gratuita para Mac que estamos construyendo para desarrolladores, está pensada para hacer esta búsqueda de forma automática: encontrar cada resto de una app que ya no está instalada y recuperarlo todo de una pasada. Todavía está en desarrollo, así que por ahora usa los comandos de arriba — son gratis y funcionan, solo que más lento para cien apps que para una. Si quieres saber cuándo salga, apúntate a la lista de espera.
Para las carpetas de caché que dejan las apps que sigues usando, mira
la guía de ~/Library/Caches.