... Ich habe versucht zu suchen, aber es gibt eine Menge "wie man MTP-Geräte verbindet"
Ich möchte nur wissen, wie man einen verbundenen Gerätenamen wie (Nexus 10 oder Galaxy S5) erhält, den ich in der Nautilus-Geräteliste sehen kann.
quelle
... Ich habe versucht zu suchen, aber es gibt eine Menge "wie man MTP-Geräte verbindet"
Ich möchte nur wissen, wie man einen verbundenen Gerätenamen wie (Nexus 10 oder Galaxy S5) erhält, den ich in der Nautilus-Geräteliste sehen kann.
Ich fand das überraschend schwierig. Ich habe ein Nexus 5 und KDE (mit libmtp
, glaube ich) zeigt es als Nexus 5 an. Mein erster Instinkt war, dass KDE einfach die Hardwaredatenbank betrachtete. Dadurch werden Hersteller- und Produktzeichenfolgen von USB-Geräten bekannten Namen zugeordnet. Hier ist das Problem:
$ lsusb
Bus 002 Device 011: ID 18d1:4ee1 Google Inc. Nexus 4
Mein Nexus 5 hat gerade ein Downgrade bekommen! KDE bekommt es also nicht von dort.
Wir können udevadm
Geräte abfragen. In diesem Fall müssen wir einen Verweis auf das Gerät übergeben. Ich werde die Bus- / Gerätenummern von oben verwenden (sie müssen %03d
formatiert werden, damit 1 zu 001, 20 zu 020 usw. wird):
$ udevadm info --name=/dev/bus/usb/002/011
...
E: ID_MODEL=Nexus_5
E: ID_MODEL_ENC=Nexus\x205
E: ID_MODEL_FROM_DATABASE=Nexus 4
...
Es gibt noch viel anderen Mist, aber es ID_MODEL
scheint das zu sein, was wir wollen. Wenn Sie dies weiter extrahieren und verarbeiten müssen, können Sie es awk
(oder ein anderes) durchlaufen lassen, um es zu bereinigen und den Unterstrich zu ersetzen:
$ ... | awk -F'=' '/ID_MODEL=/{gsub("_"," ");print $2}'
Nexus 5
Sie können die Ausgabe von analysieren
mtp-detect
.Erste Installation
mtp-tools
:Und Renn:
quelle
mtp-detect
, fand es aber sehr langsam. Die Fertigstellung dauerte hier 40 Sekunden.