Anmerkung (Bearbeiten): Es stellte sich heraus, dass meine ursprüngliche Antwort (unten) das OP-Problem nicht löst, sondern nur eingegrenzt wird. Ich hatte Mühe, die Antwort zu löschen oder nicht, und ich lasse es für pädagogische Zwecke bleiben.
Ihr USB scheint 5a07
statt 5307
(?) Zu berichten. Vergleichen Sie usb.ids . 5a07
ist nicht da, aber vielleicht stimmt etwas mit dem Druckertreiber überein. Der Mechanismus wird in dieser Antwort beschrieben (was im Hinblick auf das manuelle Anhängen eines Treibers zu pessimistisch erscheint).
Ich weiß nicht was genau passiert ist. Eigentlich usb-storage 3-3:1.0
von syslog
mir macht mich der Verdacht, dass usb-storage
(welches das richtige Modul für einen Thumbdrive ist) geladen wurde, dann hpmud
(?) Getreten; Ich bin mir nicht sicher.
Aber lassen Sie uns annehmen :
- das falsch gemeldete
idProduct
ist das einzige Problem (dh in jedem anderen Aspekt funktioniert Ihr USB-Laufwerk einwandfrei), - es ist tatsächlich ein falscher Treiber angeschlossen
- und alles, was Sie brauchen, ist, es abzunehmen und das Richtige anzubringen.
Sehen Sie sich diese andere Antwort an, sie zeigt auf diesen LWN-Artikel und sieht aus wie ein guter Anhaltspunkt (es gibt auch diese Antwort, die auf diesen Artikel verweist ). Das generische Beispiel ist:
Um ein Gerät von einem Treiber zu trennen, schreiben Sie einfach die Bus-ID des Geräts in die Unbind-Datei:
echo -n "1-1:1.0" > /sys/bus/usb/drivers/ub/unbind
[…]
Um ein Gerät an einen Treiber zu binden, darf das Gerät nicht von einem anderen Treiber gesteuert werden.
[…]
Dann schreiben Sie einfach die Bus-ID des Geräts, das Sie binden möchten, in die Bindedatei für diesen Treiber:
echo -n "1-1:1.0" > /sys/bus/usb/drivers/usb-storage/bind
In Ihrem Fall lautet die Bus-ID 3-3:1.0
. Beachten Sie, dass dies vom verwendeten USB-Anschluss abhängt. Wenn Sie den USB-Stick in einen anderen Sockel stecken, ist dies anders. In einem Moment benötigen wir Root-Zugriff und aufgrund von Weiterleitungen ( >
) ist es einfacher, eine separate Shell ( sudo -s
) zu starten .
Überprüfen Sie zunächst den aktuell angeschlossenen Treiber:
cd "/sys/bus/usb/devices/3-3:1.0/" readlink ./driver
Wenn Sie recht haben, wird es etwas anderes sein usb-storage
.
Trennen Sie den Fahrer, was immer es ist:
echo -n "3-3:1.0" > ./driver/unbind
Laden Sie den richtigen Treiber, falls er noch nicht geladen ist:
modprobe usb-storage
Befestigen Sie es am Gerät:
echo -n "3-3:1.0" > /sys/bus/usb/drivers/usb-storage/bind
Und bestätigen Sie:
readlink ./driver lsblk
Vergiss nicht exit
die Wurzelschale.
Die Lösung ist nicht dauerhaft. Derzeit weiß ich nicht, wie ich Linux anweisen soll, immer den gewünschten Treiber zu laden (ich könnte ein Skript schreiben, um das obige zu automatisieren, aber es fühlt sich nicht nach dem richtigen Weg an). Trotzdem änderte sich der Thumbdrive vermutlich idProduct
nach einem schlechten Auswurf, so dass ich ihm auf lange Sicht nicht trauen würde. Sobald es mit einem erzwungenen usb-storage
Treiber klappte, wollte ich ddrescue
alle Daten sichern.