[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Détection automatique d'une connection USB



Le 13/04/2018 à 07:31, Danilo Uccelli a écrit :

Effectivement un des problèmes était bien le manque de slash et j'ai aussi
bien compris la faille de sécurité que cela crée.

Quel manque de slash ? Tu veux dire qu'il manquerait un / entre /sbin et sh ? Sûrement pas, car /sbin/sh n'existe pas ; sh est dans /bin.

J'ai donc donné à root la propriété du script.

Pas suffisant car le propriétaire non root du répertoire contenant le script peut toujours le supprimer, le renommer et le remplacer par ce qu'il veut.

Puis, j'ai réalisé que udev n'était pas la meilleure solution puisque il
suffit d'exécuter le script une seule fois au démarrage, ensuite le
périphérique se monte tout seul. J'ai donc fait un crontab en root, au
démarrage.

Il y a mieux qu'un cronjob, je trouve.
Pour charger un module au démarrage, on peut le mentionner dans le fichier /etc/modules. Pour qu'il soit chargé automatiquement lors de la détection d'identifiants donnés, on peut créer un alias pour modprobe (cf. man modprobe.d). Et modinfo nous apprend que le module ftdi_sio a deux paramètres vendor et product permettant de spécifier ses propres identifiants, qui peuvent être ajoutés par modprobe.

# modinfo -p ftdi_sio
debug:Debug enabled or not (bool)
vendor:User specified vendor ID (default=0x0403) (ushort)
product:User specified product ID (ushort)
ndi_latency_timer:NDI device latency timer override (int)

Cela pourrait être rassemblé dans un fichier /etc/modprobe.d/ftdi_sio.conf :

alias usb:v0403pEFE0d*dc*dsc*dp*ic*isc*ip* ftdi_sio
options ftdi_sio vendor=0x0403 product=0xEFE0

A tester et vérifier. Je ne suis pas sûr s'il faut 0x devant les identifiants en hexadécimal.

Pour finir, note qu tu aurais pu et pourrais encore demander à ce que tes identifiants personnalisés soient ajoutés au module ftdi_sio directement dans les sources du noyau, comme beaucoup d'autres semblent l'être déjà.


Reply to: