El componente del sistema que reacciona a la conexión de un dispositivo extraíble es Udev , como lo menciona SHW . Incluso el tutorial de udev puede ser un poco desalentador; Te mostraré un par de ejemplos.
Hay dos pasos involucrados: asociar un archivo de dispositivo (por ejemplo /dev/sdc
) con el dispositivo de hardware y montar el dispositivo para acceder al sistema de archivos. El trabajo de Udev es el primer paso, aunque puede indicarle que ejecute un comando externo como mount
.
Para dispositivos extraíbles conocidos, me gusta usar un nombre de dispositivo dedicado debajo /dev/removable
(ese nombre de directorio es una convención personal). Las siguientes reglas de udev (para colocar /etc/udev/rules.d/my_removable_disks.rules
) crean enlaces simbólicos con nombres conocidos para dos discos, ambos identificados por una propiedad del sistema de archivos en su partición 1:
KERNEL=="sd?", PROGRAM=="/sbin/blkid -o value -s UUID %N1", RESULT=="1234-5678", SYMLINK+="removable/foo"
KERNEL=="sd?", PROGRAM=="/sbin/blkid -o value -s LABEL %N1", RESULT=="Joe's disk", SYMLINK+="removable/joe"
Las versiones anteriores de udev pueden necesitar /udev/lib/vol_id -u %N1
(para el UUID, -l
para la etiqueta) en lugar de la blkid
llamada. Hay más cosas con las que puede coincidir, por ejemplo ATTRS{vendor}=="Yoyodine", ATTRS{serial}=="XYZZY12345PDQ97"
(en lugar de PROGRAM==…, RESULT==…
) para que coincidan con el proveedor y el número de serie de un dispositivo.
Entonces puedes usar una línea como esta en /etc/fstab
:
/dev/removable/joe /media/joe vfat noauto,user
Si prefiere un montaje automático, puede agregar algo como , RUN="mkdir /media/foo && mount /dev/removable/foo /media/foo"
a la línea udev. No olvides hacerlo umount /media/foo
antes de desconectar.