Question simple: comment ajouter une règle pour les lecteurs flash USB uniquement dans le catalogue /lib/udev/rules.d/
?
Par exemple si je veux autoriser uniquement l’installation de lecteurs flash USB pour mon PC. Ou n'autorise que mon lecteur flash. Existe-t-il un type d'appareil/groupe à cette fin?
Quelqu'un pourrait-il donner des exemples pour noob, s'il vous plaît? J'espère que c'est facile à résoudre :)
J'ai répondu à une question similaire avec un exemple il y a quelque temps:
Exécution du script quand il détecte une E/S
Utilisez cette commande,
udevadm monitor --property
Insérez la clé USB et vérifiez une propriété commune aux périphériques que vous souhaitez utiliser, par exemple:
ID_TYPE=disk
ID_USB_DRIVER=usb-storage
Puis créez votre règle
Sudo gedit /etc/udev/rules.d/96-myusb.rules
avec ces valeurs
ACTION=="add", SUBSYSTEM=="usb",ENV{ID_TYPE}=="disk", ENV{ID_USB_DRIVER}=="usb-storage",RUN+="/usr/local/bin/myusb-add.sh"
ACTION=="remove", SUBSYSTEM=="usb",ENV{ID_TYPE}=="disk",ENV{ID_USB_DRIVER}=="usb-storage",RUN+="/usr/local/bin/myusb-remove.sh"
Le fichier de règles n'affectera que les périphériques correspondant à ENV{ID_TYPE}
et ENV{ID_USB_DRIVER}
. Cela n'affectera aucun autre appareil. Si vous souhaitez restreindre le reste des périphériques, vous pouvez peut-être créer une règle qui correspond au reste des périphériques et ne fait rien dans le RUN
.
Si vous souhaitez exécuter l'action uniquement lorsqu'un périphérique USB donné est connecté à un port USB spécifique, essayez d'ajouter ENV {DEVPATH} = "yourUSBPATH" au fichier de règles. Remplacez yourUSBPATH par le chemin que udevadm monitor --property
indique lorsque vous connectez le périphérique au port que vous souhaitez utiliser. Je n'ai pas testé cela, mais je pense que c'est une approche logique.