Erhalte Zugriff auf USB-Gerät auf Linux (libusb-1.0)?

8

Ich schreibe ein kleines Programm für die Kommunikation mit einem bestimmten USB-HID-Produkt (identifiziert durch Hersteller- und Produkt-IDs) unter Verwendung von libusb-1.0 unter Linux. Im Moment muss ich das Programm als root ausführen, weil "libusb Schreibzugriff auf USB-Geräteknoten benötigt". Gibt es eine Möglichkeit, die Berechtigungen auf dem Gerät zu ändern, die ich brauche, damit ich mein Programm nicht als root ausführen muss?

    
erjiang 29.11.2010, 04:20
quelle

1 Antwort

10

Auf modernen Linux-Systemen erstellt udevd ( man 7 udev ) die Geräteknoten für USB-Geräte, wenn sie angeschlossen sind. Fügen Sie eine udev-Regel hinzu, die Ihrem Gerät entspricht (z. B. können Sie nach USB-Hersteller und Produkt-IDs suchen) ) und setzt den OWNER / GROUP / MODE des Geräteknotens.

Der beste Ansatz besteht wahrscheinlich darin, eine neue Gruppe für Benutzer zu erstellen, die auf das Gerät zugreifen dürfen, und dies dann als Gruppenbesitzer in der udev-Regel festzulegen. Möglicherweise müssen Sie auch MODE verwenden, um sicherzustellen, dass Gruppen Lese- / Schreibberechtigungen haben. Z.B. Ihre Regel sieht wahrscheinlich so aus:

%Vor%     
caf 30.11.2010, 03:01
quelle

Tags und Links