Por Qué Spotlight Bloquea la Expulsión del Disco (Y Cómo Solucionarlo)
La indexación de Spotlight es una de las razones más comunes por las que no puedes expulsar un disco externo. Así es como solucionarlo.
Intentas expulsar tu disco externo y macOS se niega. Revisas el Monitor de Actividad y ves procesos llamados mds o mds_stores accediendo a tu disco. Felicidades, acabas de conocer la indexación de Spotlight.
Esta es probablemente la razón más común por la que los discos externos no se expulsan en Mac. Spotlight quiere indexar todo para que puedas buscarlo después, y no le importa que necesites irte a una reunión en dos minutos.
Qué está haciendo Spotlight realmente
El sistema de indexación de Spotlight funciona a través de varios procesos en segundo plano. El principal es mds (metadata server), que coordina toda la operación. Luego está mds_stores, que maneja el almacenamiento real de los metadatos indexados. También podrías ver mdworker o mdworker_shared haciendo el trabajo pesado de leer y categorizar tus archivos.
Cuando conectas un disco externo, Spotlight lo trata como un nuevo territorio a explorar. Comienza a escanear cada archivo, extraer metadatos y construir un índice de búsqueda. Esto sucede automáticamente a menos que le hayas dicho explícitamente a Spotlight que deje ese disco en paz.
El problema es que Spotlight mantiene manejadores de archivos abiertos mientras trabaja. Mientras esos manejadores existan, macOS considera el disco “en uso” y no te deja expulsarlo.
Cómo verificar si Spotlight es el culpable
Abre el Monitor de Actividad (búscalo en Spotlight, irónicamente) y busca estos nombres de procesos: mds, mds_stores, mdworker, o mdworker_shared. Si alguno de ellos muestra el nombre de tu disco externo en la información del proceso, Spotlight es tu bloqueador.
También puedes verificar desde Terminal. Ejecuta este comando, reemplazando el nombre del disco con el tuyo:
lsof /Volumes/NombreDeTuDisco
Si ves procesos relacionados con mds en la salida, Spotlight está reteniendo tu disco.
La solución rápida: desactivar la indexación temporalmente
La solución más rápida es desactivar la indexación de Spotlight para ese volumen específico:
sudo mdutil -i off /Volumes/NombreDeTuDisco
Necesitarás ingresar tu contraseña. Después de que el comando termine, Spotlight libera el disco y deberías poder expulsarlo normalmente.
Cuando reconectes el disco después y quieras la indexación de vuelta:
sudo mdutil -i on /Volumes/NombreDeTuDisco
La solución permanente: excluir el disco por completo
Si nunca quieres que Spotlight indexe un disco externo en particular, puedes agregarlo a la lista de privacidad.
Abre Ajustes del Sistema, ve a Siri y Spotlight (o solo Spotlight en versiones anteriores de macOS), luego haz clic en “Privacidad de Spotlight” en la parte inferior. Arrastra tu disco externo a esta lista o haz clic en el botón de más para agregarlo.
Los discos en esta lista son completamente ignorados por Spotlight. No podrás buscar su contenido desde el menú de Spotlight, pero se expulsarán instantáneamente cada vez.
También hay un truco usando un archivo oculto. Crea un archivo vacío llamado .metadata_never_index en la raíz de tu disco externo:
touch /Volumes/NombreDeTuDisco/.metadata_never_index
Spotlight busca este archivo y omite la indexación de cualquier volumen que lo tenga. Esto es útil para discos que compartes entre varias Macs, ya que la configuración sigue al disco en lugar de estar almacenada en cada computadora.
Cuando Spotlight no suelta
A veces Spotlight se atora. Has desactivado la indexación, pero los procesos todavía no liberan el disco. En el Monitor de Actividad, puedes seleccionar el proceso mds problemático y hacer clic en el botón X para forzar su cierre.
Ten en cuenta que forzar el cierre de procesos del sistema puede causar comportamiento extraño temporalmente. Spotlight se reiniciará automáticamente, pero podrías ver pequeñas ralentizaciones o necesitar esperar un momento antes de que todo se estabilice.
Si el disco todavía no se expulsa después de terminar los procesos de Spotlight, algo más también lo está reteniendo. Ejecuta el comando lsof de nuevo para ver qué queda.
Por qué esto sigue pasando
Cada vez que conectas un disco externo, Spotlight comienza a indexarlo desde cero a menos que lo hayas excluido. Incluso discos que has usado antes serán re-indexados si su índice queda desactualizado o corrupto.
Las actualizaciones de macOS también pueden restablecer la configuración de privacidad de Spotlight. Algunos usuarios han reportado que después de actualizar a una nueva versión de macOS, discos que habían excluido previamente de repente estaban siendo indexados de nuevo. Vale la pena revisar tu lista de Privacidad de Spotlight después de actualizaciones importantes.
Un enfoque más simple
Buscar en el Monitor de Actividad y Terminal cada vez que quieres desconectar un disco se vuelve tedioso rápido. Ejecta te muestra exactamente qué procesos están bloqueando la expulsión y te permite cerrarlos con un clic. Para Spotlight específicamente, identifica los procesos mds relevantes y los maneja limpiamente, para que no tengas que adivinar cuál terminar o preocuparte por la estabilidad del sistema.
El problema subyacente (Spotlight indexando agresivamente los discos externos) no va a desaparecer pronto. Pero lidiar con él no tiene que ser un proyecto de investigación cada vez que necesitas irte con tu disco.
Tired of drive ejection issues?
Ejecta shows you exactly what's blocking your drive and lets you fix it with one click.
Get Ejecta for $14.99