Il componente di sistema che reagisce alla connessione di un dispositivo rimovibile è Udev , come indicato da SHW . Anche il tutorial di udev può essere un po 'scoraggiante; Ti mostrerò un paio di esempi.
Sono previsti due passaggi: associare un file del dispositivo (ad es. /dev/sdc
) Al dispositivo hardware e montare il dispositivo per accedere al filesystem. Il lavoro di Udev è il primo passo, anche se puoi dirgli di eseguire un comando esterno come mount
.
Per i dispositivi rimovibili noti, mi piace usare un nome di dispositivo dedicato in /dev/removable
(quel nome di directory è una convenzione personale). Le seguenti regole udev (da inserire /etc/udev/rules.d/my_removable_disks.rules
) creano collegamenti simbolici con nomi noti per due dischi, entrambi identificati da una proprietà del filesystem sulla loro partizione 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"
Potrebbero essere necessarie versioni precedenti di udev /udev/lib/vol_id -u %N1
(per l'UUID, -l
per l'etichetta) invece della blkid
chiamata. Ci sono più cose su cui puoi abbinare, ad esempio ATTRS{vendor}=="Yoyodine", ATTRS{serial}=="XYZZY12345PDQ97"
(invece di PROGRAM==…, RESULT==…
) per abbinare il fornitore di un dispositivo e il numero di serie.
Quindi puoi usare una linea come questa in /etc/fstab
:
/dev/removable/joe /media/joe vfat noauto,user
Se preferisci un mount automatico, puoi aggiungere qualcosa di simile , RUN="mkdir /media/foo && mount /dev/removable/foo /media/foo"
alla linea udev. Non dimenticare di umount /media/foo
prima di scollegare.