3 votos

¿Cómo desmontar un volumen bloqueado?

A veces, un volumen se niega a ser expulsado porque algún programa lo está utilizando.

Lamentablemente, Finder no da la identidad ni da una forma de resolver el problema.

Entonces, ¿cómo se resuelve este problema de forma limpia, sin usar un terminal?

Usando el terminal, puedo encontrar una manera de expulsarlo, pero no es fiable.

sudo lsof | grep volumeName ciertamente da algo de información, pero no me apetece matar procesos aleatorios para desmontar un volumen. Además, no todo el mundo está dispuesto a ejecutar el comando en un terminal.

Tampoco quiero forzar la expulsión del volumen. Creo que no deberíamos forzar la expulsión cuando no hemos ejecutado inicialmente el programa que bloquea el volumen.

Los procesos más frecuentes son: mds y notifyd .

Matando a mds no garantiza que la expulsión del volumen sea posible. mds El proceso es respawned después de ser matado, y continúa impidiendo la expulsión de la unidad.

También me he dado cuenta de que mds puede estar ejecutando y utilizando archivos, y aún así no impedir la expulsión del volumen, por lo que ni siquiera estoy seguro de que sea mds fallo.

1voto

paxdiablo Puntos 341644

He encontrado esta solución que ya ha funcionado de forma fiable varias veces hoy.

El proceso que, en mi caso, fue responsable del fracaso de la expulsión fue:

SystemUIS (como se ve en top en un terminal) que en realidad es SystemUIServer .

Aquí está la forma de matarlo sin un terminal: ejecute el Monitor de Actividad, encuentre SystemUIServer (escriba UI en el campo de búsqueda superior derecho), y deténgalo con el botón superior izquierdo (botón de parada).

0voto

Douglas Puntos 10417

Este es un intento de escribir un QA canónico para este tema, según el Meta post: ¿Dónde se almacena la lista de preguntas canónicas para Ask Different? Espero que se edite periódicamente con el objetivo de convertirse en una fuente de información completa.

Hay cualquier número de razones por las que te encontrarás con este "error". De hecho, no es un error en sí mismo, sino una advertencia de que algo en el volumen montado está en uso y debe cerrarse correctamente antes de expulsarlo.

En el caso de la OP fue SystemUI como se detalla en su respuesta . Es posible que te encuentres con este mismo escenario, pero lo más probable es que te encuentres con algo completamente diferente.

¿Qué puede causar esto? Prácticamente cualquiera (pero no limitado a) las siguientes condiciones del volumen montado:

  • Simplemente una ventana abierta del Finder del volumen montado
  • Un archivo de texto abierto para su edición
  • Un PDF abierto en vista previa
  • Una sesión de Terminal en la que el directorio actual $PWD está en el volumen montado
  • Una "instalación" script/función que se pausa y/o se empuja al fondo
  • Y muchos más...

Entonces, ¿cómo se resuelve esto?

Averigüe qué proceso tiene sus archivos

Puede utilizar el lsof para "listar los archivos abiertos".

Para este ejemplo, he montado una unidad USB llamada "Música" y he recorrido un par de directorios. No he abierto nada ni he cargado ninguna canción para reproducirla. Ejecutando el comando:

$ sudo lsof | grep Music

me da lo siguiente:

bash      64364            allan  cwd       DIR               1,16       32768     23327 /Volumes/MUSIC/Music Collection/a-ha/Hunting High and Low

Esto me dice que en bash, hay un "directorio de trabajo actual" ( cwd ) en esta carpeta en particular: /Volumes/MUSIC/Music Collection/a-ha/Hunting High and Low . Es decir, tengo una sesión de Terminal abierta con ese subdirectorio seleccionado. Sólo hay que dejar el subdirectorio y se podrá expulsar el volumen.

¿Cómo se obtiene la lista de volúmenes montados?

  • mount (Este comando por sí solo listará los volúmenes montados)
  • ls /Volumes

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X