Слоты USB внезапно перестают работать время от времени

30

После переустановки системы Lubuntu 12.04 на моем ноутбуке, через несколько дней и после установки различных программ снова возникла старая проблема: без видимой причины перестала работать внешняя мышь и иногда другие устройства, подключенные по USB (включая жесткий диск). Жесткий диск показывает, что у него есть напряжение, поскольку там есть свет, и внешняя мышь мигает секунду, когда подключена.

Я разместил другую версию этой проблемы раньше . Я пока держу это в качестве примера двух ответов. Никто из них не работает здесь.

Выход из системы ничего не делает, перезагрузка делает.

Событие кажется совершенно случайным, после перезагрузки оно появится снова через много дней или недель или, редко, через несколько часов.

  • http://pastebin.com/0qR8bhhX в var/log/syslogпосле нового появления ( только с внешней проводной клавиатуры и мыши )

То, что считается в конце, я думаю:

Nov 24 14:06:55 cprq-HP-Compaq-nx8220-PY518EA-ABB kernel: [29953.822962] usb 3-1: USB disconnect, device number 3
Nov 24 14:06:57 cprq-HP-Compaq-nx8220-PY518EA-ABB kernel: [29955.069427] uhci_hcd 0000:00:1d.0: host controller process error, something bad happened!
Nov 24 14:06:57 cprq-HP-Compaq-nx8220-PY518EA-ABB kernel: [29955.069439] uhci_hcd 0000:00:1d.0: host controller halted, very bad!
Nov 24 14:06:57 cprq-HP-Compaq-nx8220-PY518EA-ABB kernel: [29955.069461] uhci_hcd 0000:00:1d.0: HC died; cleaning up
Nov 24 14:06:57 cprq-HP-Compaq-nx8220-PY518EA-ABB kernel: [29955.069492] usb 2-2: USB disconnect, device number 2
  • Я заметил, что в большинстве случаев это касается только внешней мыши и клавиатуры, но не внешнего жесткого диска. Или, если это так, повторное подключение решает проблему .

  • У меня двойная загрузка с WinXP: в Windows такого никогда не происходит, поэтому это не проблема с оборудованием

  • Я использовал Lubuntu Quantal 12.10, и там возникла та же проблема . Обновление до этого не было бы решением

  • По определенному случаю только перезапуск 2 или даже 3 раза решил.


При использовании того же самого ПК / оборудования с Linux Mint 14 (Quantal) Xfce проблема почти исчезла ( с тех пор это происходило один раз ). Я не уверен, исходит ли это «решение» от использования Xfce или Mint (я думаю, что Mint 14 Nadia использует то же ядро, что и Lubuntu Quantal).

user47206
источник
Пожалуйста, оставьте вывод lsusb. Я выполнил поиск в Google, host controller process error, something bad happenedи самый ранний из них появился еще в 2002 году. Затем продолжайте появляться время от времени все эти годы. Проблема, кажется, драйвер против некоторого набора микросхем USB.
Джон Сиу
@John Siu: paste.ubuntu.com/1472989 - это делается с помощью внешней мыши и внешней клавиатуры. именно с ними связана эта проблема. Я использовал разные мыши и имел ту же проблему (редко, как я уже говорил), но я использовал исключительно эту клавиатуру: это может быть причиной?
1
хм, я на самом деле искал линию, подобную этой: «Устройство 001 Bus 001: ID 8087: 0024 Intel Corp. Integrated Rate Matching Hub». Потому что, если 'nx8220' - правильная модель, в коробке должен использоваться чипсет Intel 915PM. Однако у вас есть только «Linux Foundation ....». Я добавлю ответ, так как предложение будет слишком сложно представить в надлежащем формате здесь.
Джон Сиу
1
если это НИКОГДА не случится с XP, то это не должно быть аппаратно (клавиатура).
Джон Сиу
2
Как примечание - то, что это не происходит в Windows, не означает, что это не аппаратная проблема. Вполне возможно, что Windows (или даже драйверы оборудования) менее чувствительны или более изящно реагируют на аппаратную ошибку или сбой. (Например, программное обеспечение Logitech в Windows может обнаружить отключение и предпринять необходимые шаги для повторного подключения без вмешательства пользователя).
Шона

Ответы:

6

проблемы с ядром и оборудованием

Если вы исключили возможные проблемы с оборудованием, такие как проблемы напряжения / тока, сбой USB-портов / концентраторов, то это, вероятно, проблема с ядром.

Если вы чувствуете себя комфортно с возможными проблемами, не связанными с загрузкой / черным экраном при загрузке, вы можете попробовать установить квантовое ядро, доступное в репозиториях 12.04.

Помните - большинство проблем с черным экраном связано с установкой проприетарных графических драйверов. Вам больше всего повезет, удалив их в первую очередь перед обновлением ядра.

Чтобы установить квантовое ядро:

sudo apt-get install linux-generic-lts-quantal

Не забудьте сделать полное резервное копирование системы, чтобы вы могли восстановиться, если новое ядро ​​ломает больше, чем исправляет.

fossfreedom
источник
Просто к вашему сведению, у меня похожая проблема с квантом. Я предполагал, что это было, потому что я понижал HD пару раз. Он «щелкает» и затем исчезает. Звучит знакомо?
Сорока
@Magpie: совсем нет. Даже сейчас я понимаю, что: 1. никогда не было в WinXP, при двойной загрузке, так что я думаю, что это не проблема с аппаратным обеспечением, 2. у меня это тоже было в количественном выражении, поэтому обновление не было бы решением
1
@cipricus - ошибки в трассировке действительно делают ее похожей на проблему с ядром. Ребята из ядра Upstream были бы заинтересованы. Однако они сначала попросят вас попробовать самое последнее ядро ​​- 3.8rc1, я думаю. Если вы идете по этому пути - сначала сделайте резервную копию вашей системы с помощью клона образа. Альтернативой является резервное копирование вашей системы (или двойная загрузка), установка raring (13.04) на неделю и проверка появления проблемы. затем вы можете вернуться к своей основной системе. Raring будет использовать ядро ​​v3.8 - возможно, получит его в ближайшие несколько недель.
fossfreedom
@ fossfreedom: могу ли я создать новый вариант загрузки с 13.04 параллельно с 12.04 ?, как другой ОС? проблема в том, что это редко случалось в последнее время. может мне стоит дождаться стабильной 13 и обновить?
1
да (я делал это в прошлые 11.10 и 12.04 одновременно) - при загрузке с USB это даст вам возможность двойной загрузки, а не стирания ... но, пожалуйста - сначала (!) сделайте резервную копию вашей системы: )
fossfreedom
10

Проблемы с питанием для USB 2.0

Максимальное потребление тока в USB 2.0 составляет 500 мА, однако следует отметить, что напряжение + 5 В на нескольких портах может фактически находиться на одной шине. Например, в случае настольного компьютера все порты USB на передней панели машины могут быть на одной шине, в то время как порты на задней панели машины обычно представляют собой другую шину или имеют полностью отдельные источники питания + 5 В для каждой группы Разъемы USB 2.0.

Низкий ток устройства , как это определено USB 2.0 стандарты могут потреблять до 100 мА (1 единица) в то время как высокие текущие устройства могут потреблять до 5 единиц (500 мА). Жесткие диски без внешнего источника питания, как правило, устройства с высоким током.

Устройства должны перестать работать, если линия + 5 В падает ниже 4,75 В, и поэтому многие устройства большой мощности могут вызывать проблемы на некоторых компьютерах.

В дополнение к этому схема, которая подает + 5 В на каждую шину, может отказаться от пересмотра возможности высокой мощности, если устройство потребляет достаточный ток, чтобы опустить линию + 5 В слишком низко. Вот почему устройства высокой мощности должны быть удалены и повторно подключены, прежде чем они будут работать, если они вышли из строя из-за проблемы с питанием, а также почему перезагрузка не позволяет им повторно подключаться во время полного цикла выключения / включения питания может сделать это.

Обратите внимание, что если одно или несколько устройств с низким энергопотреблением уже подключены к шине USB, может быть недостаточно доступной емкости для работы устройства с высоким энергопотреблением, такого как внешний жесткий диск.

Поэтому необходимо планировать использование устройств большой мощности, и, если существуют проблемы, устройство необходимо использовать самостоятельно на любой шине или с отдельным источником питания + 5 В.

Хотя документ по стандартам USB 2.0 может показаться немного сложным для чтения, на странице википедии есть очень хорошая информация и пояснения по теме USB 2.0.

Также обратите внимание, что подключение многих устройств с низким энергопотреблением, например, через внешнее устройство-концентратор USB, также может вызвать падение напряжения на шине питания, в результате чего некоторые или все устройства будут отключены.

Типы используемых кабелей также могут влиять на надежность устройств большой мощности. Например, внешний жесткий диск, подключенный с помощью обычного длинного USB-кабеля, может увидеть достаточное падение напряжения при 500 мА, чтобы отключить себя, чтобы предотвратить повреждение его схемы или двигателей привода. Эти устройства обычно поставляются со специальным коротким кабелем или Y-образным кабелем, который подключается к двум USB-портам для решения проблемы с питанием. Обратите внимание, что это только частичное решение проблемы, относящейся конкретно к проблеме кабельной разводки, фактически она не позволяет подавать более 500 мА, поскольку смежные порты USB, вероятно, будут подключены к одному и тому же источнику питания 5 В 500 мА внутри компьютера. Даже там, где отдельная шина используется для второго штекера кабеля Y, который он выиграл Он не может получить источник высокого тока, так как у него нет соединения для передачи данных, чтобы запросить его с шины USB. Только один из портов будет включен в качестве источника высокого тока.

Поскольку очень часто используются USB-клавиатуры и мыши, иногда могут возникать проблемы, когда они оба подключены к одной шине. Пиковые токи нагрузки при включении могут превышать проектные характеристики шины USB и приводить к отключению или неисправности одного или обоих устройств.

Решения этих проблем обычно включают использование только минимального количества устройств с низким энергопотреблением, использование только хорошо спроектированных и изготовленных устройств с низким энергопотреблением, убедитесь, что они подключены к разным шинам с отдельными линиями + 5 В, и где устройства с высоким энергопотреблением задействованы с помощью концентратора с питанием чтобы помочь с проблемами питания, замеченными на многих поставках шины USB 2.0. Если невозможно использовать концентратор с питанием, тогда устройство высокой мощности следует подключать только после включения питания компьютера и стабилизации утечки тока из устройств с низким энергопотреблением.

Здесь также следует отметить, что такие компьютеры, как ноутбуки и нетбуки, могут иметь встроенные USB-устройства с низким энергопотреблением. Такие устройства, как внутренние устройства чтения карт, беспроводные адаптеры 3G и веб-камеры, часто подключаются к шине USB. Это может быть выделенная шина с собственным напряжением +5 В или она может использоваться совместно с одним или несколькими внешними USB-портами.

fabricator4
источник
1
Отличное объяснение - некоторая очень полезная информация здесь.
2
Это не сама мышь, а ключ, который вы подключаете к USB-порту, который получает данные о движении от мыши. Он может не очень хорошо играть с другими устройствами и вызывать у них проблемы. Из того, что вы сказали нам, неясно, где лежит настоящий преступник. Жесткий диск может нормально включиться, но результирующее падение напряжения может привести к неисправности других устройств. Я обнаружил, что лучше всего включить компьютер, а затем подключить к нему устройства высокой мощности, как только основные устройства с низким энергопотреблением стабилизируются.
fabricator4
1
После того, как проблема возникла немедленно, взгляните на последние несколько строк системного журнала: «cat / var / logs / syslog | tail», чтобы увидеть, есть ли там что-нибудь упомянутое.
fabricator4
я
это сделал: pastebin.com/0qR8bhhX .
8

Нечто подобное происходило со мной. Этот пост предоставил частичное решение.

Вот что сработало для меня:

sudo -s
cd /sys/bus/pci/drivers/xhci_hcd/
for file in ????:??:??.? ; do
 echo -n "$file" > unbind
 echo -n "$file" > bind
done

Как отмечалось в этом блок-посте, разные системы зависают в разных местах, поэтому, если вышеперечисленное не работает, вы можете попробовать заменить /sys/bus/pci/drivers/xhci_hcd/на /sys/bus/pci/drivers/ehci_hcd/, или /sys/bus/pci/drivers/uhci_hcd/, если одна из них существует.

оборота ноль101
источник
1
Debian 9.5: / sys / bus / pci / drivers / ehci-pci (обратите внимание на тире "-", а не "_")
eli
Разве это не должно быть "$file"вместо "$i"?
Николай Прокощенко
Полагаю, что так. исправлено.
naught101
6

Старый пост и ответы не имеют отношения к USB 3.0. Итак, вот как сбросить шину 3.0, которая перестала обслуживать данные:

su -

и как корень:

echo -n "0000:06:00.0" | tee /sys/bus/pci/drivers/xhci_hcd/unbind
echo -n "0000:06:00.0" | tee /sys/bus/pci/drivers/xhci_hcd/bind

После этого USB должен снова начать работать правильно, как после перезагрузки.


объяснение

Если вы используете другой драйвер, вот как я нашел, что делать, используйте его как ссылку:

A lsusb -tвыведет это - обратите внимание на xhci_hcdдрайвер для быстрой шины, это имя драйвера 3.0:

$ lsusb -t
        /:  Bus 04.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/2p, 5000M
        /:  Bus 03.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/2p, 480M
            |__ Port 1: Dev 3, If 0, Class=Vendor Specific Class, Driver=dvb_usb_it913x, 480M
        /:  Bus 02.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/2p, 480M
            |__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/6p, 480M
            ...etc

Каталог для поиска /sys/bus/pci/drivers/xhci_hcd

        drwxr-xr-x  2 root root    0   5 21:48 ./
        drwxr-xr-x 28 root root    0   1 00:21 ../
        lrwxrwxrwx  1 root root    0   6 00:29 0000:06:00.0 -> ../../../../devices/pci0000:00/0000:00:1c.3/0000:06:00.0/
        --w-------  1 root root 4096   5 22:33 bind
        lrwxrwxrwx  1 root root    0   5 22:32 module -> ../../../../module/xhci_hcd/
        --w-------  1 root root 4096   5 22:32 new_id
        --w-------  1 root root 4096   5 22:32 remove_id
        --w-------  1 root root 4096   5 22:32 uevent
        --w-------  1 root root 4096   5 22:33 unbind

В моем случае мне нужно было отвязать "0000:06:00.0".

пс. Если вам необходимо повторно привязать драйвер USB 2.0, следуйте приведенным выше инструкциям, но с помощью ehci-pciили посмотрите здесь (заслуживает похвалы).

Амир Увал
источник
1
Я не могу отблагодарить тебя достаточно. Это единственное решение, которое работало для меня, даже Bluetooth сейчас работает! Больше не нужно перезапускать. Для меня это было «0000: 00: 14.0» с использованием Ubuntu 14.04 и Asus VivoBook.
Карим Сонбол
Охотно! Кажется, я случайно сделал свой ответ "вики сообщества", поэтому голосование за меня не заслужило. (@ThomasWard, не могли бы вы помочь вики-сообществом?)
Амир Увал,
1
Однако есть одна проблема, я пробовал сегодня, и я получаю эту ошибку: tee: / sys / bus / pci / dhcd / unbind: Нет такого файла или каталога tee: / sys / bus / pci / dhcd / bind: Нет такого файл или каталог
Карим Сонбол
@KarimSonbol не так ли / sys / bus / pci / drivers / ...?
Амир Увал
да, извините за мою ошибку
Карим Сонбол
3

Основывается на lsusb

#lsusb
Bus 002 Device 002: ID 04f3:0230 Elan Microelectronics Corp. 3D Optical Mouse
Bus 003 Device 002: ID 04f3:0103 Elan Microelectronics Corp. 
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub

Сделать lsusb -t, вывод будет в следующем формате

$ lsusb -t
/:  Bus 04.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/4p, 5000M
/:  Bus 03.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/4p, 480M
/:  Bus 02.Port 1: Dev 1, Class=root_hub, Driver=ehci_hcd/2p, 480M
    |__ Port 1: Dev 2, If 0, Class=hub, Driver=hub/8p, 480M
/:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=ehci_hcd/2p, 480M
    |__ Port 1: Dev 2, If 0, Class=hub, Driver=hub/6p, 480M
        |__ Port 6: Dev 3, If 0, Class=HID, Driver=usbhid, 1.5M

Обратите внимание на Bus 00Xномер и версию 1.1/ 2.0USB в обоих выходах. Если мышь и клавиатура 1.1включены, попробуйте переместить их в 2.0порт или наоборот.

Это не устраняет проблему с драйвером, но позволяет обойти эту проблему (если она работает).

Джон Сиу
источник
Вы могли бы быть более явным? что мне делать? сравнить результат lsusbс тем из lsusb -t? что я должен искать там? Вы хотите отдать предпочтение автобусу 2.0? Я обычно использую это для внешнего жесткого диска. в своем комментарии вы говорите: «Потому что, если« nx8220 »- правильная модель, в коробке должен использоваться чипсет Intel 915PM. Однако у вас есть только« Linux Foundation »- значит ли это, что мне не хватает подходящего драйвера? что нужно сделать? результат lsusb -tis paste.ubuntu.com/1482285
1
(1) Да, попробуйте использовать шину USB 2.0. Если у вас есть только один порт 2.0, посмотрите, сможете ли вы найти внешний USB-концентратор и подключить его. (2) Я отмечаю некоторые другие мои поля, и они также показывают только Linux Foundation, так что это не ошибка. (3) lsusb -tдля облегчения идентификации USB-устройства и шины, к которой они подключаются.
Джон Сиу
1
@cipricus Есть несколько возможностей, и я не могу быть уверен. Я перечислю наиболее вероятные причины, насколько мне известно: (1) Чистое программное обеспечение: драйвер Linux неправильно обрабатывает порт 1.1 для этого чипсета. Это будет наиболее вероятной причиной. (2) Частичное аппаратное обеспечение: USB-порт чувствителен к статическому электричеству и может со временем ухудшиться / умереть, особенно для старых материнских плат и чипсетов. Ваш порт 1.1 может ухудшаться и не очень хорошо работает, и драйвер Linux не может справиться с этими особыми случаями (такими как колебания напряжения), в то время как драйвер XP знает, как их обрабатывать (или терпеть).
Джон Сиу
1
@cipricus USB 1.1 спецификация достаточно быстрая (и более поздняя) для клавиатуры и мыши. Я действительно сомневаюсь, что любой человек может макс. выведите эту скорость с помощью обычной клавиатуры (человеческой рукой).
Джон Сиу
Спасибо! Я согласился, этот тип проблемы должен определяться в каждом конкретном случае, в зависимости от симптома. С НОВЫМ ГОДОМ!!
Джон Сиу
2

FWIW - Если у вас проблемы с USB в Ubuntu из-за конфликтов или проблем с питанием, избавьте себя от проблем и получите расширитель USB с питанием - это дешевые устройства, которые подключаются к вашему USB-порту и превращают его в 5 или 10, или что вам нужно купить и иметь отдельный блок питания и пойти на Amazon на сумму около 30 долларов США.

У меня было множество проблем с моей клавиатурой и / или мышью, когда я добавил USB-устройство, и это заставило все мои проблемы уйти.

ура

bsautner
источник
0

Быстрое решение , которое работает по крайней мере в моем случае (Linux Mint KDE, на Lenovo Yoga 3 Pro ноутбук):

Когда ноутбук включен, просто нажмите кнопку питания и удерживайте ее около 30 секунд , после чего она выключится и еще некоторое время будет нажиматься. Я сделал это с отключенным зарядным устройством. После включения ноутбука порты USB снова работают.

Хуан М. Гонсалес
источник