Встановлення USB-накопичувача, який не розпізнається


23

Використовуючи Arch Linux / XFCE, у мене часто виникають проблеми з неправильно встановленими USB-накопичувачами. Іноді вони автоматично з’являються в Thunar, і я можу їх встановити одним клацанням. Однак в інший час (це приблизно п’ятдесят / п’ятдесят) привід просто не розпізнається. У мене виникли проблеми із зовнішніми жорсткими дисками USB, накопичувачами пам'яті USB та камерами. Якщо зовнішній привід не розпізнається, це така ситуація:

  • Диск взагалі не відображається fdisk -l(він показує лише мої жорсткі диски)
  • Диск не відображається на /dev/disk
  • Привід НЕ відображається під час роботиlsusb

Отже, є якесь розпізнавання, але я не розумію, чому, і я не знаю, як змонтувати накопичувачі, коли це станеться. Я просто перезавантажуюсь і сподіваюся, що це спрацює наступного разу, що явно не зручно ...

ОНОВЛЕННЯ

Коли я монітую /var/log/everything.log(немає інформації в syslog), то я бачу, що це відбувається під час підключення 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

Це ще один запитуваний вихід:

$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)

запустіть цю команду udevadm monitor, а потім підключіть свій USB-пристрій та після пакування будь-яких проблем, які ви знайдете там.
Ханан Н.

@HananN Скопіюй це; Я додав це

1
Просто думка: у мене іноді
виникала

Відповіді:


12

Здається, що проблема полягає в правилі катастрофи в /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"

Коментуючи цей рядок, як показано нижче, виправлено проблему:

# 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"

У моєму випадку мені довелося перезавантажити, але, мабуть, існує служба, яку можна замість цього перезапустити.


ці дані були у /var/log/everything.log, але, як ви бачите, не присвоєно букву диска (що також видно з fdisk). Виходу дуже мало, але є якийсь. Я додав це вгорі.

5
Ну а тепер, здається, виправлено! У журналі я знайшов це: 14 грудня 15:36:32 localhost mtp-probe: bus: 1, пристрій: 9 не був пристроєм MTP, і після пошуку цього я знайшов цю тему: bbs.archlinux.org/viewtopic. php? id = 119676 - і мені вдалося вирішити це, коментуючи рядок викликів у правилах MTP, він, здається, працює. Спасибі!

4
@ user11780: якщо фактична відповідь є тією, яку ви дали у своєму коментарі, то замість того, щоб прийняти запропоновану відповідь, ви повинні написати нову відповідь самостійно із знайденою інформацією, а потім прийняти її. В іншому випадку випадкові читачі будуть введені в оману, щоб думати, що відповідь kbyrd - це насправді більше коментаря, ніж відповіді - є правильною.
Teemu Leisti

Цілком погоджуюся з @TeemuLeisti. Поставте правильну відповідь тут, а потім змініть правильну з моєї на нову.
kbyrd

О, і замість того, щоб просто посилатися на статтю, будь ласка, повторіть тут інформацію - сторінка в кінці посилання може зникнути, що зробить вашу відповідь марною.
Teemu Leisti

7

Я ENV{MTP_NO_PROBE}="1"зупиняв зонд MTP. Таким чином я не змінив арку /lib/udev/rules.d/69-libmtp.rules.

export MTP_NO_PROBE="1"

Спасибі. Коротке і приємне рішенняexport MTP_NO_PROBE="1"
киб

Але, схоже, він працює як USB2.0 у порту USB3.0.
киб

0

Журнал показує, що з виявленням MTP-пристроїв щось відбувається.

Спробуйте видалити, libmtpчи не зможете вийти з нього, або просто прокоментуйте правило udev у відповідному файлі.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.