Lister les paramètres udev
udevadm info --query=all --name=/dev/sda1
Ce qui donne pour ma clé USB:
P: /block/sda/sda1 N: sda1 W:38 S: block/8:1 S: disk/by-id/usb-USB_2.0_Flash_Disk_2943610414c084-0:0-part1 S: disk/by-path/pci-0000:00:1d.7-usb-0:6:1.0-scsi-0:0:0:0-part1 S: disk/by-uuid/1C28-7AFE E: UDEV_LOG=3 E: DEVPATH=/block/sda/sda1 E: MAJOR=8 E: MINOR=1 E: DEVTYPE=partition E: PHYSDEVPATH=/devices/pci0000:00/0000:00:1d.7/usb1/1-6/1-6:1.0/host0/target0:0:0/0:0:0:0 E: PHYSDEVBUS=scsi E: PHYSDEVDRIVER=sd E: DEVNAME=/dev/sda1 E: ID_VENDOR=USB_2.0 E: ID_VENDOR_ENC=USB\x202.0\x20 E: ID_VENDOR_ID=0457 E: ID_MODEL=Flash_Disk E: ID_MODEL_ENC=Flash\x20Disk\x20\x20\x20\x20\x20\x20 E: ID_MODEL_ID=0151 E: ID_REVISION=0.00 E: ID_SERIAL=USB_2.0_Flash_Disk_2943610414c084-0:0 E: ID_SERIAL_SHORT=2943610414c084 E: ID_TYPE=disk E: ID_INSTANCE=0:0 E: ID_BUS=usb E: ID_USB_INTERFACES=:080650: E: ID_USB_INTERFACE_NUM=00 E: ID_USB_DRIVER=usb-storage E: ID_PATH=pci-0000:00:1d.7-usb-0:6:1.0-scsi-0:0:0:0 E: ID_FS_USAGE=filesystem E: ID_FS_TYPE=vfat E: ID_FS_VERSION=FAT16 E: ID_FS_UUID=1C28-7AFE E: ID_FS_UUID_ENC=1C28-7AFE E: SUBSYSTEM=block E: DEVLINKS=/dev/block/8:1 /dev/disk/by-id/usb-USB_2.0_Flash_Disk_2943610414c084-0:0-part1 /dev/disk/by-path/pci-0000:00:1d.7-usb-0:6:1.0-scsi-0:0:0:0-part1 /dev/disk/by-uuid/1C28-7AFE
Je peux donc écrire une règle pour cette clée dans un fichier /etc/udev/rules.d/10-local.rules: pour créer le lien symbolique /dev/ma_cle_usb. Noter qu'il faut rajouter les doubles-guillemets et qu'il n'est pas nécessaire de redémarrer le service udev avec /etc/init.d/udev reload.
SUBSYSTEM=="block", ID_SERIAL_SHORT=="2943610414c084", SYMLINK+="ma_cle_usb"