Unidades USB de montaje automático sin necesidad de GUI (reemplazo de halevt)

8

Para instalaciones mínimas de Debian, he estado usando halevtpara habilitar el montaje automático de unidades USB. Halevtes confiable y no requiere configuración aparte de instalar el paquete. Ahora, halevtse ha eliminado de Debian Testing y estoy buscando un reemplazo, pero ninguna de las alternativas parece ser tan sencilla.

¿Qué utilidad para el montaje automático de unidades USB sería la más liviana, simple y estable?

EDITAR: Nunca pude lograr que udev funcionara como quería. El problema es que las reglas de udev siempre se ejecutan como root, por lo que los medios se montan como root. Es posible codificar el montaje como un usuario específico, pero parece que no puede hacer una regla que se monte como usuario actual. Según la documentación, debería ser posible con el valor MODE, pero no parece estar implementado en Debian. Entonces, si se requiere el montaje automático, todavía tengo que usar halevt. De lo contrario, uso pmount.

usuario5184
fuente
¿Por mínimo, supongo que quieres decir que no hay X y Gnome / KDE?
Mikel
1
La instalación de Debian sin Desktop Environment y System Services. Entonces, con X pero sin GNOME / KDE.
user5184
Hmm, en este momento Halevtestá estable, probando e inestable.
Faheem Mitha

Respuestas:

3

Las características de HAL basadas en disco fueron reemplazadas por udev y udisks .

Hay un ejemplo completo de cómo usar udev para hacer esto en la página de envoltorios de UDisks de montaje automático :

/etc/udev/rules.d/11-media-by-label-auto-mount.rules

KERNEL!="sd[a-z][0-9]", GOTO="media_by_label_auto_mount_end"

# Import FS infos
IMPORT{program}="/sbin/blkid -o udev -p %N"

# Get a label if present, otherwise specify one
ENV{ID_FS_LABEL}!="", ENV{dir_name}="%E{ID_FS_LABEL}"
ENV{ID_FS_LABEL}=="", ENV{dir_name}="usbhd-%k"

# Global mount options
ACTION=="add", ENV{mount_options}="relatime"
# Filesystem-specific mount options
ACTION=="add", ENV{ID_FS_TYPE}=="vfat|ntfs", ENV{mount_options}="$env{mount_options},utf8,gid=100,umask=002"

# Mount the device
ACTION=="add", RUN+="/bin/mkdir -p /media/%E{dir_name}", RUN+="/bin/mount -o $env{mount_options} /dev/%k /media/%E{dir_name}"

# Clean up after removal
ACTION=="remove", ENV{dir_name}!="", RUN+="/bin/umount -l /media/%E{dir_name}", RUN+="/bin/rmdir /media/%E{dir_name}"

# Exit
LABEL="media_by_label_auto_mount_end"

Para más información sobre udev:

También hay algunas opciones basadas en udiscos que serían el nuevo equivalente de halevt:

No pude encontrar ninguno de ellos en el repositorio de prueba , por lo que es posible que deba buscar un repositorio apto de terceros o seguir sus instrucciones para compilar el software en su propia máquina.

Mikel
fuente
Espero una solución simple como halevt, simplemente "Instalar <paquete> y listo". Tendré que mirar esos paquetes.
user5184
Copie el código anterior, péguelo en el archivo sugerido (/etc/udev....rules) y esperemos que haya terminado.
Mikel
He intentado esto en dos máquinas Debian, pero no funciona bien. 1. Todos los dispositivos están montados como root. 2. El desmontaje automático a veces falla, dejando un nodo que es persistente a través de un reinicio. 3. Algunas unidades sin alimentación no se montan en absoluto. 4. La transferencia de archivos falló varias veces. No he tenido ninguno de estos problemas con halevt.
user5184
2

Si no desea usar hal, puede usar una regla udev para montar automáticamente sus unidades. Arch Wiki tiene un buen artículo sobre reglas aquí:

https://wiki.archlinux.org/index.php/Udev#Auto_mounting_USB_devices

También podría considerar usar algo como udiskie (está en el AUR):

https://wiki.archlinux.org/index.php/Udiskie

También hay un script para integrar udiskie en su menú Openbox .

jasonwryan
fuente
¡Gracias, eso me ayuda mucho! Leí la documentación de Arch para Udev, sin embargo, en realidad no explica cómo escribir exactamente sus propias reglas, lo que me molesta un poco porque quiero entender lo que está haciendo antes de copiarlo y pegarlo. Lo intentaré fuera y ver si se monta mis cosas. Por cierto, ¿cuál es el beneficio de usar HAL sobre Udev o viceversa?
Kelinu
HAL ha quedado en desuso y ya no se desarrolla, por lo tanto, más pronto o más tarde, deberá pasar a otros arreglos. La primera regla en la página wiki debe lograr lo que
busca
OK, gracias ... Me quedaré con Udev entonces y conseguiré que esa regla funcione correctamente
kelinu
1

Probablemente debería considerar configurar sus propias reglas udev, hal o hotplug para montar automáticamente las unidades e incluso ejecutar comandos cuando se conectan. También podrías mirar en pmount .

Hay bastantes automontadores para Linux, solo tiene que descubrir qué se adapta mejor a su trabajo.

También tenga en cuenta que puede ejecutar muchas partes desde los DE más grandes como gnome sin ejecutar todo. Debería poder usar gnome-volume-manager por separado de usarlo para su sesión.

Caleb
fuente
Creo que udev es un montador automático ¿verdad? Lo tengo instalado de forma predeterminada con Arch Linux, pero no estoy seguro de cómo funciona ... ¿alguien tiene alguna idea sobre esto?
Kelinu
Si. Pruebe los documentos de ArchLinux Udev .
Caleb
¿Es gnome-volume-manager una especie de montador automático patentado también por cierto?
Kelinu
1
El uso del adjetivo "patentado" no tiene mucho sentido ya que gnome también es de código abierto, pero sí, GVM es un envoltorio automount un poco más elegante alrededor de pmount.
Caleb