O componente do sistema que reage à conexão de um dispositivo removível é Udev , conforme mencionado por SHW . Mesmo o tutorial do udev pode ser um pouco assustador; Vou mostrar alguns exemplos.
Há duas etapas envolvidas: associar um arquivo de dispositivo (por exemplo, /dev/sdc
) ao dispositivo de hardware e montar o dispositivo para acessar o sistema de arquivos. O trabalho do Udev é o primeiro passo, embora você possa dizer para executar um comando externo como mount
.
Para dispositivos removíveis conhecidos, gosto de usar um nome de dispositivo dedicado em /dev/removable
(esse nome de diretório é uma convenção pessoal). As seguintes regras do udev (a serem colocadas em /etc/udev/rules.d/my_removable_disks.rules
) criam links simbólicos com nomes conhecidos para dois discos, ambos identificados por uma propriedade do sistema de arquivos em sua partição 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"
Versões mais antigas do udev podem precisar de /udev/lib/vol_id -u %N1
(para o UUID, -l
para o rótulo) em vez da chamada blkid
. Há mais coisas que você pode combinar, por exemplo ATTRS{vendor}=="Yoyodine", ATTRS{serial}=="XYZZY12345PDQ97"
(em vez de PROGRAM==…, RESULT==…
) para corresponder ao fornecedor e ao número de série do dispositivo.
Então você pode usar uma linha como esta em /etc/fstab
:
/dev/removable/joe /media/joe vfat noauto,user
Se preferir uma montagem automática, você pode adicionar algo como , RUN="mkdir /media/foo && mount /dev/removable/foo /media/foo"
à linha do udev. Não esqueça de umount /media/foo
antes de desconectar.