Gibt es ein Udev-Attribut/etwas, das bestimmt, ob ein Gerät ein USB-Laufwerk ist oder nicht?

Gibt es ein Udev-Attribut/etwas, das bestimmt, ob ein Gerät ein USB-Laufwerk ist oder nicht?

Ich versuche, eine UDEV-Regel zu erstellen, die die Verwendung von USB-Geräten zulässt. Allerdings gibt es einen Haken. Ich möchte nur USB-Massenspeicher verwenden können.

Gibt es einen eindeutigen UDEV-Parameter, mit dem ermittelt werden kann, ob es sich bei einem bestimmten USB-Gerät um ein Massenspeichergerät handelt? Wenn ja, was ist das? Wie implementiere ich ihn?

Antwort1

Sie können 'KERNEL=="sd*", SUBSYSTEMS=="scsi" 'einige verwenden ATTRS, um USB-Speichergeräte zu filtern. Beachten Sie, dass alle USB-Speichergeräte, also auch USB-Sticks und Speicherkarten, als SCSI-Geräte erkannt werden und daher als zugewiesen werden /dev/sd*.

Hier finden Sie ein sehr gutes Tutorial zum Erstellen von UDEV-Regeln:

Antwort2

Führen Sie „where is the device“ udevadm info -a -n /dev/sdb(wo /dev/sdbist das Gerät, das Sie identifizieren möchten) aus, um zu sehen, welche Regeln darauf zutreffen. Wählen Sie eine oder mehrere aus, deren Kombination nur auf die Geräte zutrifft, auf die Sie reagieren möchten. Dies ist eine allgemeine Strategie zum Erstellen von udevRegeln; sieheAuslösen einer Aktion beim Anschließen eines bestimmten Volumes. In diesem Fall:

DRIVERS=="usb-storage"

verwandte Informationen