У меня просто была проблема с мышью - и оказалось, что она аппаратная (это одна из тех беспроводных USB-мышей Logitech, у которых есть опция «плавной прокрутки» на колесе средней кнопки - вы нажимаете ее один раз, у вас есть «плавная прокрутка», нажмите ее еще раз, после чего у вас будет «ступенчатая» прокрутка ...) Оказывается, мое среднее колесо застряло, поэтому мне пришлось пару раз нажать на него, пока оно не «восстановилось» - и я использовал xev
(в Ubuntu 10.04), чтобы контролировать это.
Чтобы сказать еще пару слов о мышке под Ubuntu - вы можете проверить системный журнал, посмотреть, что было записано при загрузке, скажем, относительно USB-устройств - чтобы узнать, распознается ли устройство вообще. Однако, это с "системным журналом" не обязательно исправлено - в Ubuntu 10.04 я просто смотрю в /var/log/messages
- но в 11.04 строка "Logitech" показывает в этих файлах:
$ grep --files-with-matches --recursive Logitech /var/log 2>/dev/null
/var/log/spnavd.log
/var/log/Xorg.0.log
/var/log/Xorg.1.log
/var/log/dmesg.0
/var/log/Xorg.0.log.old
/var/log/dmesg
/var/log/kern.log.1
/var/log/udev
В версии 11.04, я думаю, один из способов - выполнить поиск / поиск строки 'usb' в /var/log/dmesg
- или, может быть, даже проще; снова для строки «Logitech»:
$ grep Logitech /var/log/dmesg
[ 22.323032] input: Logitech USB Receiver as /devices/pci0000:00/0000:00:1d.1/usb3/3-1/3-1:1.0/input/input7
[ 22.323529] generic-usb 0003:046D:C526.0001: input,hidraw0: USB HID v1.11 Mouse [Logitech USB Receiver] on usb-0000:00:1d.1-1/input0
[ 22.502664] input: Logitech USB Receiver as /devices/pci0000:00/0000:00:1d.1/usb3/3-1/3-1:1.1/input/input8
[ 22.509847] generic-usb 0003:046D:C526.0002: input,hiddev0,hidraw1: USB HID v1.11 Device [Logitech USB Receiver] on usb-0000:00:1d.1-1/input1
То, что вы хотите, это посмотреть, к какому «USB-адресу» подключено устройство - выше мы видим « usb3
», поэтому мы можем в основном « cat
» выводить соответствующий файл usbmon
в /dev
(то есть /dev/usbmon3
); это должно дать нам "необработанные" данные USB, поступающие с устройства; так как этот двоичный файл не может быть визуализирован напрямую в терминале, мы бы направили его в hexdump
для его форматирования:
$ sudo cat /dev/usbmon3 | hexdump -C
00000000 80 6b 14 f1 00 00 00 00 43 01 81 02 03 00 2d 00 |.k......C.....-.|
00000010 4c e0 75 4e 00 00 00 00 41 5a 07 00 00 00 00 00 |L.uN....AZ......|
00000020 08 00 00 00 08 00 00 00 00 00 00 00 00 00 00 00 |................|
00000030 00 00 ff ff 00 00 00 00 80 6b 14 f1 00 00 00 00 |.........k......|
00000040 53 01 81 02 03 00 2d 3c 4c e0 75 4e 00 00 00 00 |S.....-<L.uN....|
....
Теперь, когда вы выполняете действия с мышью (перемещение, нажатие кнопки), в терминале должно отображаться больше данных (соответственно, завершите этот процесс с помощью Ctrl-C). Обратите внимание, что вам нужно использовать sudo
в приведенной выше команде.
Дело в том, что если в приведенном выше тесте вы получаете данные, генерируемые при перемещении колесика прокрутки мыши вверх и вниз; тогда, по крайней мере, аппаратная часть и часть драйвера USB цепочки должны работать - если все работает, то эти события должны распространяться на систему X и сообщаться также xev
. (Поскольку в моем случае я не видел этих событий, я мог бы затем определить аппаратную проблему; на этот раз, к счастью, ее легко решить всего несколькими нажатиями.Также обратите внимание - когда все работает, перемещение колеса прокрутки также генерирует данные в терминале, поэтому вы не сможете прокрутить терминал с помощью колеса прокрутки :), в этом случае временно вернитесь назад к прокрутке на клавиатуре стрелками терминала).