Montage auto d'un DD externe avec udev

Sur mon poste fixe je jongle avec pas moins de 6 disques dur externe. soit relié directement sur un des port usb soit via un DAS (Direct Attached Storage). afin que chaque disque ai toujours le même point de montage, j'ai mis en place quelques règles udev

tout d’abords, lister les disques

l /dev/disk/by-uuid/

ce qui renvoi un truc du style:

lrwxrwxrwx 1 root root 10 mai 5 13:43 0d29e6f2-2898-4690-a799-9341d6618c06 -> ../../sda1
lrwxrwxrwx 1 root root 10 avril 24 00:50 2a193102-e847-4b45-85ed-93378f867b6f -> ../../sdo1
lrwxrwxrwx 1 root root 9 avril 24 00:50 3a1321c4-b32e-4b44-b831-b669d0122fb2 -> ../../md1
lrwxrwxrwx 1 root root 10 avril 24 00:50 42e66110-ca39-4da9-ae6f-34a8927d5f71 -> ../../sdi1
lrwxrwxrwx 1 root root 9 avril 24 00:50 5988a88f-4jb1-414e-90e9-6ff24b4b1289 -> ../../md0
lrwxrwxrwx 1 root root 10 avril 24 00:50 6a4c385d-f24b-4c1a-8f6a-32ae39f6ed03 -> ../../sdg1
lrwxrwxrwx 1 root root 10 avril 24 07:01 761a9950-9h9d-46c5-91aa-3553c3f77dd2 -> ../../sdn1
lrwxrwxrwx 1 root root 9 avril 24 00:50 7961c967-8361-42d0-9949-7ee56ae2399c -> ../../sdf
lrwxrwxrwx 1 root root 10 avril 24 00:50 888ca435-9f55-49dc-9c23-0db395239ca2 -> ../../sdh1

à partir de là, il faut différencier les disques physique des externes et ajouter dans le fichier fstab les lignes qui vont bien. sans oublier de modifier le point de montage, le système de fichiers ainsi que les options adéquat

vim /etc/fstab

UUID=761a9950-9h9d-46c5-91aa-3553c3f77dd2 /media/usb-hdd1 ext2 noauto,noatime,errors=remount-ro 0 0
UUID=2a193102-e847-4b45-85ed-93378f867b6f /media/usb-hdd2 ext4 noauto,noatime,errors=remount-ro 0 0

maintenant au niveau de udev, on ajoute autant de ligne que l'on a de disque dur

vim /etc/udev/rules.d/80-external-usb-disk.rules

ACTION=="add", ENV{DEVTYPE}=="partition", ENV{ID_FS_UUID}=="761a9950-9h9d-46c5-91aa-3553c3f77dd2", RUN+="/bin/mount -U $env{ID_FS_UUID}"
ACTION=="add", ENV{DEVTYPE}=="partition", ENV{ID_FS_UUID}=="2a193102-e847-4b45-85ed-93378f867b6f", RUN+="/bin/mount -U $env{ID_FS_UUID}"

ne reste plus qu'à recharger udev

udevadm control --reload-rules

au passage, si il y a besoin de modifier le label du disque :

e2label /dev/sdn1 usb-hdd1
e2label /dev/sdo1 usb-hdd2

et en bonus comme les disques ont maintenant toujours le même point de montage, j'affiche leurs informations dans conky

${if_mounted /media/usb-hdd1}//usb/hdd1: ${fs_used_perc /media/usb-hdd1}% (${fs_free /media/usb-hdd1}) ${alignr}${fs_bar 8,60 /media/usb-hdd1}
${endif}${if_mounted /media/usb-hdd2}//usb/hdd2: ${fs_used_perc /media/usb-hdd2}% (${fs_free /media/usb-hdd2}) ${alignr}${fs_bar 8,60 /media/usb-hdd2}
${endif}