Técnicamente sólo se puede montar un volumen en una carpeta existente. El truco que sin embargo hace esto posible para MacOS en general es que un programa se asegura de crear la carpeta antes de realizar el montaje.
Este tipo de funcionalidad se conoce generalmente (en todos los sistemas operativos) como "montador automático". Y de hecho MacOS contiene un programa llamado automount
que crea automáticamente carpetas y montajes según la configuración del mapa en /etc/auto_master. Esto se utiliza principalmente con ciertos tipos de recursos compartidos de red.
El principal contador automático con el que interactúan la mayoría de los usuarios se llama diskarbitrationd
. Este programa escucha eventos como la conexión de unidades USB, la inserción de DVDs, etc. y monta cualquier sistema de archivos montable en ellos.
diskarbitrationd
utiliza la información en /etc/fstab
para determinar cualquier opción especial o configuración del punto de montaje que el usuario haya establecido para una unidad específica. Sin embargo, esos puntos de montaje deben existir de antemano, y no se eliminarán automáticamente después de desmontar el sistema de archivos.
Si sólo quiere elegir un nombre de carpeta diferente dentro de /Volumes
Si no lo hace, sólo tiene que abrir la Utilidad de Discos y hacer clic con el botón derecho del ratón en el volumen para elegir "Renombrar". La próxima vez que inserte la unidad, se montará en una carpeta con ese nombre.
Si quieres hacer algo completamente diferente al comportamiento manual, podrías desactivar diskarbitrationd
por completo, y crear su propio programa para montar las unidades automáticamente. Tenga en cuenta, sin embargo, que es un montón de trabajo para algo que parece que podría ser resuelto en una mejor wa.y
Finalmente, una solución podría ser crear un programa (es decir, un pequeño script) que se ejecute cada vez que se monte algo. Cuando se monte tu unidad especial, podría desmontarla automáticamente, crear el punto de montaje personalizado y montarla allí. Necesitarías un manejo especial para borrar también la carpeta cuando el disco se desmonte de nuevo. Si puede crear pequeños , el truco para que esto funcione es crear un archivo de definición del demonio launchd para el script, y usar el StartOnMount
clave. Esto hace que launchd ejecute su script cada vez que se monta algo.