¿Hay alguna forma de montar automáticamente un sistema de archivos cuando abro un enlace simbólico a un directorio en ese sistema de archivos?

21

Estoy usando Arch con Xfce.

Recientemente, he creado un enlace simbólico a un directorio en un sistema de archivos.

Pero no quiero montar el sistema de archivos durante el arranque o montarlo manualmente antes de abrir el enlace simbólico.

¿Hay alguna forma de montar automáticamente ese sistema de archivos cuando abro el enlace simbólico al directorio en ese sistema de archivos?

Tho H. Ho
fuente

Respuestas:

23

autofspuede hacer esto por ti Puede configurar cualquier número de puntos de montaje con varias opciones, y los sistemas de archivos correspondientes se montan cada vez que se accede al punto de montaje. Después de una cierta cantidad de inactividad, los sistemas de archivos se desmontan nuevamente.

No hay duda de varias formas de uso autofs, pero aquí hay una forma de hacer lo que está tratando de hacer, en función de la forma en que solía usarlo.

Comienza con un directorio que contendrá una cantidad de autofspuntos de montaje (bueno, al menos uno); por ejemplo /misc. No necesita crearlo, pero sí necesita crear un archivo de configuración que describa todos los sistemas de archivos que desea montar allí; por ejemplo, podría montar CD, DVD y Blu-Ray con el siguiente archivo, guardado como /etc/auto.misc:

cd              -fstype=iso9660,ro,nosuid,nodev    :/dev/cdrom
br              -fstype=udf,ro,nosuid,nodev        :/dev/cdrom

La sintaxis general es el punto de montaje, seguido de las opciones introducidas por -, luego el punto de montaje introducido :en un sistema local. (Estoy simplificando aquí, vea la página de autofs(5)manual para más detalles).

Entonces este archivo se habilita agregando una entrada en /etc/auto.master:

/misc   /etc/auto.misc

Reiniciar autofscon

sudo service autofs restart

y deberías poder correr

ls /misc/cd

y vea el contenido de cualquier CD en su unidad. (Obviamente, reemplace el nombre y el objetivo de montaje por lo que sea apropiado en su caso).

Una vez que tenga eso, puede vincular a cualquier cosa en los sistemas de archivos montados automáticamente desde cualquier otro lugar, de la misma manera que si fueran sistemas de archivos estándar no montados automáticamente. Entonces en mi ejemplo,

ln -s /misc/br blu-ray

crea un blu-rayenlace donde se ejecuta el comando. También puede vincular más al sistema de archivos,

ln -s /misc/br/BDMV autolinktest

crea un autolinktestenlace a los contenidos de la película. Acceder a los enlaces montará el sistema de archivos de destino.

Stephen Kitt
fuente
12

Puede hacer esto con systemd, para que no tenga que instalar software adicional y solo tenga una pequeña cantidad de configuración adicional.

Simplemente agregue noauto,x-systemd.automounta las opciones en fstab.

noautono montar automáticamente en el arranque y x-systemd.automountdejar que systemd lo monte en el acceso.

Después de agregar x-systemd.automount a una fstablínea, debe ejecutar:

  sudo systemctl daemon-reload

Y luego uno, o ambos, de los siguientes:

  sudo systemctl restart remote-fs.target
  sudo systemctl restart local-fs.target

Entonces el montaje automático se volverá activo y utilizable.

Fuente: ArchWiki - fstab

bvolkmer
fuente