Continuando con el montaje automático de dispositivos conectados en Linux , lo que dejó las cosas un poco básicas. Al ejecutar Gentoo, estoy montando automáticamente una combinación de dispositivos locales y de red en mi computadora portátil con autofs-5.0.4-r5. Hacer autofs solo me da un par de quejas:
- Tengo que predefinir nombres para puntos de montaje por dispositivo, pero ocasionalmente después de reiniciar mi lector de tarjetas MMC cambia de posición con mi memoria USB de arranque
- Me gustaría que aparecieran puntos de montaje automáticos basados en LABEL, solo los autofs AFAIK no pueden hacer eso
Que es lo que udev y udisks son ciertamente capaces de hacer. Pero:
- No quiero que el sistema de archivos se monte automáticamente al enchufar el dispositivo, solo dame el punto de montaje fantasma llamado LABEL
El montaje real del sistema de archivos solo debería ocurrir en el primer acceso al punto de montaje, al igual que funciona el autofs fantasma. Esto debería reducir el riesgo de ensuciar los sistemas de archivos al desconectar accidentalmente los dispositivos, al tiempo que proporciona una gran accesibilidad.
Además de esto, podría usar saber en todo momento lo que está sucediendo en mi DE.
- ¿Existe una aplicación de bandeja del sistema que sea capaz de indicar el estado de todos los montajes automáticos, es decir, verde = nada está montado, rojo = algo está montado?
- ¿Existe una forma independiente de la distribución para proporcionar notificaciones de operación del sistema de archivos (des) montaje, por ejemplo, mediante notificación-envío? ¿Qué pasa con Gentoo-específico, eso también funciona para mí? Scripting udev no ayuda con NFS y CIFS, ¿verdad?
Este combo debería ser la última configuración de montaje automático, ¿o me falta algo?
fuente
Respuestas:
Todo esto es factible con
udev
. Eche un vistazo a UAM , que parece abordar la mayoría de los problemas que ha mencionado, pero en realidad se monta automáticamente. Si lo desea, puede hacer uso de las excelentes capacidades que ofrece, pero modificarlo para que los medios no se monten automáticamente. También puede contactar al autor y sugerir su enfoque de montaje no automático como una nueva característica. Mientras tanto, eche un vistazo a sus capacidades:udev
hacerlo independiente del DE y basado en eventos. (También sugiere una solución alternativa para los medios ópticos que podrían no detectarseudev
).MOUNTPOINT_TEMPLATES
que puede resolver el problema de nomenclatura que ha mencionado de varias maneras personalizadas (consulte uam.conf ), que posiblemente también utiliceLABEL
(como desee)fuente
Así es como lo hice recientemente, y ahora estoy bastante contento con este enfoque. Esto es para Ubuntu 12.04 + gentoo, pero supongo que cualquier distribución que permita instalar udev y autofs debería funcionar.
Prerrequisitos: debe haber instalado udev + autofs.
Paso 1)
Cree el siguiente archivo "/etc/udev/rules.d/90-usbsd-auto.rules" (por supuesto, puede usar cualquier nombre siempre que termine con ".rules"). :
Qué hace esto: crea dos enlaces simbólicos, uno para la partición del dispositivo de almacenamiento USB en "/ dev / usbdisks / <...>". Utilizará la etiqueta de la partición de almacenamiento USB o el nombre del núcleo, si no hay una etiqueta. El segundo enlace simbólico se vinculará desde "/ media / usb / <...>" a "/ media / autousb / <...>", esto se hace para el soporte del montador automático (consulte el paso 2).
Nota: Originalmente no usé las reglas con las variables ID_FS_LABEL_ENC, ya que esto es peligroso en mi opinión. ¿Qué sucede si conecta dos memorias USB que usan la misma etiqueta?
Pero el póster específicamente quería usar la etiqueta del disco USB, por lo que modifiqué las reglas en consecuencia.
Para asegurarse de que udev lea estas reglas use
Con este archivo de reglas de udev, todo está configurado para montar automáticamente la partición del dispositivo de almacenamiento USB. Sin embargo, tenga en cuenta que en este momento, el dispositivo NO se montará automáticamente (intencionalmente). Se montará automáticamente una vez que lo use con
Paso 2)
Configure autofs en automount / media / autousb / <...>: agregué la siguiente línea a mi archivo "/etc/auto.master" (para Ubuntu 12.04):
Esto significa que AutoFS desmontará el dispositivo después de 60 segundos de inactividad. Es posible que desee usar menos o más, dependiendo de su gusto.
Para Gentoo, debe modificar "/etc/autofs/auto.master" para que tenga sentido usar
Ahora creé "auto.usb" con el siguiente contenido:
Este auto.usb debe ser ejecutable, de modo que autofs use esto como un script (bash). Así por ejemplo
Qué hace esto: este script le dirá a AutoFS (/ usr / sbin / automount) cómo montar la partición del dispositivo de almacenamiento usb.
El script primero usará "/ sbin / blkid" para averiguar qué tipo de sistema de archivos hay en la partición.
El script proporcionará las opciones de montaje adecuadas según la partición del dispositivo.
Nota: Incluí código de muestra para los sistemas de archivos "vfat" (probablemente el más común para memorias USB), "ntfs" y "xfs". Por supuesto, es bastante fácil extender esto para admitir más sistemas de archivos.
Paso 3) Opcional ... Para "expulsar" == desmontar su (s) dispositivo (s) USB (o particiones en su dispositivo USB), cree un script en / sbin / usbeject:
Con este script, puede usar "sudo usbeject" para desmontar todas las particiones de dispositivos USB montadas (diciéndole a automount que las desmonte).
Por supuesto, simplemente puede asegurarse de que la partición no se use en ninguna parte; automounter desmontará la partición después del tiempo de espera de 60 segundos ...
El verdadero truco aquí es usar enlaces simbólicos de "/ media / usb" a "/ media / autousb":
fuente