Uso VirtualBox en mi MBP y, a menudo, necesito montar mi unidad flash USB dentro del invitado. El problema con el que me encuentro es que el sistema operativo host (OS X Mavericks) monta inmediatamente la unidad flash USB cuando la inserto. Cuando trato de desmontarlo (graciosamente, a través de Finder), OS X se queja de que el dispositivo está en uso. Investigaciones adicionales sobre lsof revelan que Spotlight y AVG están haciendo lo suyo con la unidad flash.
En lugar de jugar con la configuración de la aplicación individual, me gustaría simplemente modificar el comportamiento del sistema operativo host para que el dispositivo USB no se monte automáticamente. ¿Alguna sugerencia?
De acuerdo con el artículo de Topher Kessler en CNET , puede agregar una entrada a /etc/fstab
especificando la noauto
opción.
Tal entrada podría verse así:
UUID=791E37B4-82A3-37E7-9F15-3C39359126B4 none hfs rw,noauto
El UUID se puede obtener buscando la Volume UUID
línea que se imprime cuando ejecuta .diskutil info /Volumes/volume name
root
. Por cierto, se recomienda el comando sudo vifs
en lugar de la edición directa, y creará el archivo por usted si no existe.OS X tiene un mecanismo, llamado marco de Arbitraje de disco , a través del cual los programas pueden controlar lo que sucede cuando se insertan o expulsan los discos. También brinda la oportunidad de interceptar un evento de inserción de disco y evitar el comportamiento de montaje automático habitual.
Sin embargo, para cambiar el comportamiento se requiere una utilidad de terceros, ya que el marco de Arbitraje de disco es solo una interfaz de programación. Una buena utilidad es Disk Arbitrator , una herramienta gratuita (con licencia BSD) de Aaron Burghardt.
Mientras se ejecuta Disk Arbitrator, puede optar por vetar el montaje de discos recién insertados, montarlos como de solo lectura o simplemente dejar que se produzca el montaje automático normal. Después de que Disk Arbitrator sale, se restaura el comportamiento de montaje normal.
Creo que modificar fstab para desactivar el montaje automático es un poco excesivo para lo que intentas hacer. Es algo así como quitar las puertas de su automóvil porque de vez en cuando necesita entrar o salir.
Para esto, usaría los filtros USB integrados de VirtualBox . Esto le permite montar automáticamente un dispositivo USB en particular al insertarlo. Puede encontrar los filtros USB en el menú "Configuración" de la VM particular a la que desea asignarlo.
Por ejemplo, mis dispositivos USB se enumeran a continuación y están disponibles si deseo conectarlos automáticamente a mi VM con Windows 10 Pro. Puedo conectar mi Seagate FreeAgent Go, o mi SanDisk Cruzer o cualquiera de los dispositivos USB conectados. Sin embargo, conectar el receptor USB de Logitech en última instancia haría que el mouse no funcionara en el host, así que tenga cuidado con lo que conecta.
¿Cómo sé que esto funciona? Bueno, conecté accidentalmente una unidad FreeAgent Go y no se montó (como percibí) en OS X. Vea mi "problema" original: la unidad USB no se monta, no aparece en las Utilidades de disco, pero se encuentra en el Perfil del sistema
Lo hace por número de serie o por UUID (no he investigado lo suficiente como para averiguar cuál), pero tenía varias unidades FreeAgent Go del mismo modelo y tamaño, y solo una se conectaba automáticamente a la máquina virtual. En ese momento, pensé que mi disco se había estropeado.
La conclusión es que el montaje automático aún funcionaba, y pude conectar un dispositivo USB directamente a una máquina virtual sin tener que pasar por la molestia de desmontarlo primero.
Así es como deshabilito el montaje automático de volúmenes APFS en macOS Catalina.
Para los volúmenes de macOS, tanto los volúmenes Macintosh HD - Data
como el Macintosh HD
tipo deben estar referenciados en /etc/fstab
.
Encuentre el(los) volumen(es) usando diskutil list
y configúrelos en VOLUME_PATH
consecuencia.
# Disable auto mounting of "macOS - Data" volume
VOLUME_PATH="/Volumes/macOS - Data"
VOLUME_UUID=`diskutil info "$VOLUME_PATH" | awk '/Volume UUID:/ { print $3 }'`
cat << EOF | sudo tee -a /etc/fstab
UUID=$VOLUME_UUID none apfs rw,noauto
EOF
# Disable auto mounting of "macOS" volume
VOLUME_PATH="/Volumes/macOS"
VOLUME_UUID=`diskutil info "$VOLUME_PATH" | awk '/Volume UUID:/ { print $3 }'`
cat << EOF | sudo tee -a /etc/fstab
UUID=$VOLUME_UUID none apfs rw,noauto
EOF
Esto es lo que sucede cuando se ejecutan los comandos anteriores:
Establecer VOLUME_PATH
variable en/Volumes/macOS - Data
VOLUME_PATH="/Volumes/macOS - Data"
Establecer VOLUME_UUID
variable para volumen UUID de /Volumes/macOS - Data
volumen
La ejecución de los diskutil info "$VOLUME_PATH"
detalles del volumen de salida /Volumes/macOS - Data
(que incluye su UUID).
Canalización ( |
) de estos detalles para awk '/Volume UUID:/ { print $3 }'
extraer el UUID.
VOLUME_UUID=`diskutil info "$VOLUME_PATH" | awk '/Volume UUID:/ { print $3 }'`
Agregar y enviar a la consola ( UUID=$VOLUME_UUID none apfs rw,noauto
ver tee )/etc/fstab
cat << EOF | sudo tee -a /etc/fstab
UUID=$VOLUME_UUID none apfs rw,noauto
EOF
grep/awk
enawk '/Volume UUID:/ { print $3 }'
Encontré una guía oficial en https://discussions.apple.com/docs/DOC-7942 "Evitar que un volumen se monte al inicio"
bmike
diskutil unmount force disk1s2
Además, si elige un sistema de archivos que Spotlight no indexará ni configurará esa unidad para que se excluya en las preferencias de Spotlight, puede reducir ese retraso y sobrecarga con un cambio de configuración rápido.dan
Spotlight
, antivirus y ataques.dan