Podłączanie napędu USB, który nie został rozpoznany

23

Korzystając z Arch Linux / XFCE, często mam problemy z dyskami USB, które nie są prawidłowo zamontowane. Czasami pojawiają się automatycznie w Thunar i mogę je zamontować jednym kliknięciem. Jednak w innym czasie (około pięćdziesiąt / pięćdziesiąt) dysk po prostu nie jest rozpoznawany. Miałem ten problem z zewnętrznymi dyskami twardymi USB, kartami pamięci USB i aparatami. Jeśli dysk zewnętrzny nie zostanie rozpoznany, dzieje się tak:

  • Dysk w ogóle się nie pokazuje fdisk -l(pokazuje tylko moje dyski twarde)
  • Dysk nie pojawia się w /dev/disk
  • Napęd NIE pojawia się podczas działanialsusb

Istnieje więc pewne rozpoznanie, ale nie rozumiem, dlaczego, ani nie wiem, jak zamontować dyski, kiedy to nastąpi. Właśnie uruchamiam ponownie i mam nadzieję, że zadziała następnym razem, co najwyraźniej nie jest wygodne ...

AKTUALIZACJA

Kiedy monitoruję /var/log/everything.log(brak informacji w syslog), widzę, że dzieje się to po podłączeniu USB:

Dec 14 15:36:32 localhost kernel: [ 6591.042911] usb 1-3: new high speed USB device number 9 using ehci_hcd
Dec 14 15:36:32 localhost mtp-probe: checking bus 1, device 9: "/sys/devices/pci0000:00/0000:00:1d.7/usb1/1-3"
Dec 14 15:36:32 localhost mtp-probe: bus: 1, device: 9 was not an MTP device

To kolejne wymagane wyjście:

$udevadm monitor
monitor will print the received events for:
UDEV - the event which udev sends out after rule processing
KERNEL - the kernel uevent

KERNEL[6809.192268] add      /devices/pci0000:00/0000:00:1d.7/usb1/1-3 (usb)
KERNEL[6809.193421] add      /devices/pci0000:00/0000:00:1d.7/usb1/1-3/1-3:1.0 (usb)
UDEV  [6809.299246] add      /devices/pci0000:00/0000:00:1d.7/usb1/1-3 (usb)
UDEV  [6809.306074] add      /devices/pci0000:00/0000:00:1d.7/usb1/1-3/1-3:1.0 (usb)

źródło
uruchom to polecenie udevadm monitor, a następnie podłącz urządzenie USB i opublikuj wszystkie znalezione problemy.
Hanan N.
@HananN. skopiuj to; Dodałem to
1
Tylko myśl: czasami miałem ten problem podczas łączenia przez koncentrator USB, który nie był zasilany zewnętrznie
erch

Odpowiedzi:

12

Problemem wydaje się być ogólna zasada w /lib/udev/rules.d/69-libmtp.rules:

# Autoprobe vendor-specific, communication and PTP devices
ENV{ID_MTP_DEVICE}!="1", ENV{MTP_NO_PROBE}!="1", ENV{COLOR_MEASUREMENT_DEVICE}!="1", ENV{libsane_matched}!="yes", ATTR{bDeviceClass}=="00|02|06|ef|ff", PROGRAM="/usr/lib/udev/mtp-probe /sys$env{DEVPATH} $attr{busnum} $attr{devnum}", RESULT=="1", SYMLINK+="libmtp-%k", ENV{ID_MTP_DEVICE}="1", ENV{ID_MEDIA_PLAYER}="1"

Skomentowanie tej linii, jak pokazano poniżej, rozwiązało problem:

# Autoprobe vendor-specific, communication and PTP devices
ENV{ID_MTP_DEVICE}!="1", ENV{MTP_NO_PROBE}!="1", ENV{COLOR_MEASUREMENT_DEVICE}!="1", ENV{libsane_matched}!="yes", ATTR{bDeviceClass}=="00|02|06|ef|ff", PROGRAM="/usr/lib/udev/mtp-probe /sys$env{DEVPATH} $attr{busnum} $attr{devnum}", RESULT=="1", SYMLINK+="libmtp-%k", ENV{ID_MTP_DEVICE}="1", ENV{ID_MEDIA_PLAYER}="1"

W moim przypadku musiałem zrestartować komputer, ale prawdopodobnie istnieje usługa, którą zamiast tego można zrestartować.

kbyrd
źródło
dane te znajdowały się w /var/log/everything.log, ale jak widać, nie przypisano żadnej litery dysku (co widać również w przypadku fdisk). Wydajność jest bardzo mała, ale jest taka. Dodałem to na górze.
5
Teraz wydaje się, że jest naprawiony! W dzienniku znalazłem to: 14 grudnia 15:36:32 localhost mtp-probe: bus: 1, device: 9 nie było urządzeniem MTP, a po wyszukaniu tego znalazłem ten wątek: bbs.archlinux.org/viewtopic. php? id = 119676 - i udało mi się go rozwiązać, komentując linię catch-all w regułach MTP, wydaje się, że teraz działa. Dzięki!
4
@ user11780: jeśli rzeczywista odpowiedź jest tą, którą podałeś w komentarzu, to zamiast zaakceptować oferowaną odpowiedź, powinieneś napisać nową odpowiedź z podanymi informacjami, a następnie ją zaakceptować. W przeciwnym razie przypadkowi czytelnicy zostaną wprowadzeni w błąd, myśląc, że odpowiedź Kbyrd - która jest bardziej komentarzem niż odpowiedzią - jest poprawna.
Teemu Leisti
Całkowicie zgadzam się z @TeemuLeisti. Wpisz poprawną odpowiedź tutaj, a następnie zmień poprawną z mojej na nową.
kbyrd,
Aha, a nie tylko link do artykułu, proszę powtórzyć informacje tutaj - strona na końcu linku może zniknąć, co uczyni twoją odpowiedź bezużyteczną.
Teemu Leisti
7

Kiedyś ENV{MTP_NO_PROBE}="1"zatrzymywałem sondę MTP. W ten sposób nie zmodyfikowałem Arch /lib/udev/rules.d/69-libmtp.rules.

export MTP_NO_PROBE="1"
Dennis Anderson
źródło
Dzięki. Krótkie i ładne rozwiązanieexport MTP_NO_PROBE="1"
Kyb
Ale wydaje się działać jako USB2.0 w porcie USB3.0.
Kyb
0

Rejestrowanie pokazuje, że coś się dzieje z wykrywaniem urządzenia MTP.

Spróbuj odinstalować, libmtpjeśli możesz to zrobić, lub po prostu skomentuj regułę udev w odpowiednim pliku.

strzałki fioletowe
źródło