El problema de expulsión en Mac que Apple ha ignorado durante años

Los usuarios de Mac se han quejado de los mensajes de error de expulsión vagos desde los días de PowerPC. Apple nunca lo ha arreglado. Esta es la historia de este problema tan frustrante.

Intenta expulsar un disco externo en tu Mac y a veces obtienes este mensaje: “El disco no se expulsó porque uno o más programas podrían estar usándolo”.

Uno o más programas. Podrían estar usándolo. No “están usándolo”. No cuáles programas. Solo una acusación vaga de que algo, en algún lugar, podría tener un archivo abierto.

Este mensaje de error ha existido esencialmente con la misma forma durante más de quince años. Los usuarios de Mac han estado pidiendo una solución en los foros de soporte de Apple desde por lo menos la época de Snow Leopard. Las quejas continúan a lo largo de cada versión de macOS: Mountain Lion, Mavericks, Catalina, Monterey, Ventura, Sonoma, Sequoia. El mensaje nunca cambia. Apple nunca lo arregla.

El problema es obvio

Cuando no puedes expulsar un disco, necesitas dos datos: qué proceso lo está bloqueando y cómo detener ese proceso. macOS no te da ninguno.

El sistema operativo sabe exactamente qué proceso tiene archivos abiertos en el disco. Tiene que saberlo, porque así es como determina si permitir la expulsión. Pero en lugar de compartir esta información, macOS te da un emoji de encogimiento de hombros en forma de texto.

Compara esto con el comando de Terminal lsof, que lista cada proceso con archivos abiertos en una ruta dada. La información existe. Es accesible. Apple simplemente eligió no ponerla en el cuadro de diálogo de error.

Qué hacen los usuarios en realidad

Ante este mensaje de error inútil, los usuarios de Mac han desarrollado todo un folclor de soluciones improvisadas que se pasa de mano en mano a través de publicaciones en foros y comentarios de blogs.

Los optimistas esperan y vuelven a intentar, con la esperanza de que cualquiera que sea el proceso misterioso termine por su cuenta. A veces funciona. Con frecuencia no.

Los que tienen inclinación técnica abren Terminal y ejecutan lsof /Volumes/NombreDelDisco, y luego analizan la salida para identificar a los culpables. Esto requiere saber que el comando existe, entender cómo leer su salida y sentirse cómodo terminando procesos.

Los impacientes fuerzan la expulsión y esperan lo mejor. A veces está bien. A veces corrompe datos. Sin saber qué está usando el disco de verdad, no hay forma de evaluar el riesgo.

Los frustrados simplemente reinician su Mac. Esto definitivamente funciona, pero es absurdo que desconectar un disco requiera reiniciar tu computadora.

¿Por qué Apple no lo ha arreglado?

Solo Apple lo sabe con certeza, pero hay algunas teorías:

El cuadro de diálogo de error tendría que cambiar, y Apple históricamente evita agregar complejidad a los mensajes que ve el usuario. Pero “Safari está usando este disco” no es más complejo que “uno o más programas podrían estar usándolo”. Es más útil.

La lista de procesos que bloquean podría ser larga o confusa en casos extremos. Es cierto, pero mostrar al culpable principal sería infinitamente mejor que no mostrar nada. Y para los casos extremos, un botón de “Mostrar detalles” es una práctica estándar.

La mayoría de los usuarios no se topa con este problema con la suficiente frecuencia como para quejarse fuerte. Quizá, pero las Comunidades de Soporte de Apple y los foros de MacRumors están llenos de hilos que se remontan años atrás. El problema está bien documentado.

La verdadera respuesta probablemente es la priorización. Apple tiene recursos de ingeniería limitados y este problema, aunque molesto, no impide que la gente use sus Mac. Solo hace que mascullen maldiciones a su pantalla cada par de semanas.

El problema está empeorando

Conforme el almacenamiento externo se vuelve más común (SSD USB-C rápidos, discos portátiles para edición de video, discos de respaldo para Time Machine), los usuarios se topan con este error con más frecuencia.

macOS también está ejecutando más procesos en segundo plano que acceden a los discos externos. Indexación de Spotlight, monitoreo de Time Machine, sincronización de iCloud, varios procesos daemon. La cantidad de bloqueadores potenciales ha crecido, pero el mensaje de error sigue igual de vago.

Los usuarios que migran de Mac más viejas reportan que el problema aparece con más frecuencia en las máquinas con Apple Silicon. No queda claro si esto es un cambio de software o solo percepción, pero las quejas se han intensificado desde la transición al M1.

Existen soluciones de terceros

El hecho de que desarrolladores externos hayan construido aplicaciones completas en torno a este problema dice algo.

What’s Keeping Me fue una utilidad popular que mostraba qué procesos bloqueaban un disco. Se abandonó hace años y ya no funciona en macOS moderno, pero su existencia demostró que había demanda de esta función.

Han surgido varias utilidades de barra de menús y scripts para llenar el vacío. Algunos monitorean los discos y te advierten antes de que ocurran los problemas de expulsión. Otros automatizan el flujo de trabajo de lsof para que no tengas que escribir comandos de Terminal.

Estas herramientas no deberían tener que existir. La funcionalidad que ofrecen es una capacidad básica del sistema operativo que Apple eligió no exponer.

Cómo se vería una solución

La solución mínima viable es simple: cambiar el cuadro de diálogo de error para que diga qué proceso está bloqueando la expulsión. “El disco no se puede expulsar porque Spotlight lo está indexando” te dice exactamente qué está pasando. Puedes esperar a que termine la indexación, o puedes cerrar Spotlight, o puedes decidir forzar la expulsión sabiendo el riesgo.

Una mejor solución agregaría una opción para cerrar el proceso que bloquea directamente desde el cuadro de diálogo. “Safari tiene archivos abiertos en este disco. [Cerrar Safari y expulsar] [Cancelar]” resuelve el problema con un clic sin obligar a los usuarios a buscar a tientas en el Monitor de Actividad.

La solución ideal sería proactiva: advertir a los usuarios cuando tienen cambios sin guardar en un disco externo, o cuando los procesos en segundo plano lo están usando activamente. Avisarle a la gente antes de que intente expulsar y se frustre.

Ninguna de estas es técnicamente difícil. La parte más difícil probablemente es la decisión de producto de hacer el cambio en lo absoluto.

Por ahora

Apple podría arreglar esto algún día. Se sabe que abordan molestias de larga data cuando se alinean los astros. Hasta entonces, las soluciones improvisadas siguen siendo las mismas: comandos de Terminal, trabajo detectivesco con el Monitor de Actividad, o herramientas como Ejecta que hacen el trabajo detectivesco por ti.

No debería ser tan difícil desconectar un disco. Pero lo es, y lo ha sido durante años, y a Apple no parece importarle.

Si prefieres no usar la Terminal cada vez, Ejecta te muestra exactamente qué proceso está bloqueando tu disco — y te deja cerrarlo con un solo clic, directo desde tu barra de menús.

Comprar ahora — $9.99