Изучение системы привело меня к следующим выводам.
В Ubuntu 11.04 по умолчанию НЕ используется HAL. Это довольно странно, ведь такие параметры как
AutoAddDevices и
AllowEmptyInput должны влиять именно на него. Интересно. как называется то, что работает сейчас вместо HAL? udev?
При параметре
система поддерживает HotPlug (у вас будут работать USB мыши, подключамые после загрузки) но в данном случае используется драйвер
evdev который НЕ работает с COM мышами. То что написано в /etc/X11/xorg.conf в данном случае игнорируется.
При параметре
система не будет определять новые USB мыши / клавиатуры. В данном случае вы должны прописать всё в xorg.conf. У меня работал такой вариант
Код: Выделить всё
Section "ServerLayout"
InputDevice "Mouse0" "CorePointer"
EndSection
Section "InputDevice"
# generated from default
Identifier "Mouse0"
Driver "mouse"
Option "Protocol" "auto"
Option "Device" "/dev/ttyS0"
Option "Emulate3Buttons" "no"
Option "ZAxisMapping" "4 5"
EndSection
Но, к сожалению в данном случае не работала клавиатура, настройки которой тоже берутся из xorg.config. (Выдавалось сообщение что module 'kbd' not found)
Гугление натолкнуло меня на множество ссылок аналогичной этой
xorg/evdev/HAL versus serial mouse
Так что я как и советовал
sash-kan решил пока остановиться на
inputattach
Последовательность действий такова
1 Определяемся с портом, на котором сидит мышь.
В терминале пишем
и двигаем мышью - если посыпался мусор - значит возможно это она и есть. Иначе пробуем /dev/ttyS1 ..., /dev/psaux, /dev/input/mice, /dev/input/mouse0 а также всё что найдёте похжее на мышь в данном каталоге.
2 Определяемся с драйвером.
Код: Выделить всё
Usage: inputattach [--daemon] [--always] [--noinit] <mode> <device>
Modes:
--sunkbd -skb Sun Type 4 and Type 5 keyboards
--lkkbd -lk DEC LK201 / LK401 keyboards
--vsxxx-aa -vs DEC VSXXX-AA / VSXXX-GA mouse and VSXXX-A tablet
--spaceorb -orb SpaceOrb 360 / SpaceBall Avenger
--spaceball -sbl SpaceBall 2003 / 3003 / 4000 FLX
--magellan -mag Magellan / SpaceMouse
--warrior -war WingMan Warrior
--stinger -sting Gravis Stinger
--mousesystems -msc 3-button Mouse Systems mouse
--sunmouse -sun 3-button Sun mouse
--microsoft -bare 2-button Microsoft mouse
--mshack -ms 3-button mouse in Microsoft mode
--mouseman -mman 3-button Logitech / Genius mouse
--intellimouse -ms3 Microsoft IntelliMouse
--mmwheel -mmw Logitech mouse with 4-5 buttons or a wheel
--iforce -ifor I-Force joystick or wheel
--newtonkbd -newt Newton keyboard
--h3600ts -ipaq Ipaq h3600 touchscreen
--stowawaykbd -ipaqkbd Stowaway keyboard
--ps2serkbd -ps2ser PS/2 via serial keyboard
--twiddler -twid Handykey Twiddler chording keyboard
--twiddler-joy -twidjoy Handykey Twiddler used as a joystick
--elotouch -elo ELO touchscreen, 10-byte mode
--elo4002 -elo6b ELO touchscreen, 6-byte mode
--elo271-140 -elo4b ELO touchscreen, 4-byte mode
--elo261-280 -elo3b ELO Touchscreen, 3-byte mode
--mtouch -mtouch MicroTouch (3M) touchscreen
--touchit213 -t213 Sahara Touch-iT213 Tablet PC
--touchright -tr Touchright serial touchscreen
--touchwin -tw Touchwindow serial touchscreen
--penmount -pm Penmount touchscreen
--fujitsu -fjt Fujitsu serial touchscreen
--dump -dump Just enable device
Выбирайте отсюда что вам больше нравится и пишите по аналогии
Если всё заработало, то можете чуть расслабиться. Сейчас мы закрепим результат.
3 Закрепляем.
Открываем /etc/rc.local
Пишем чтобы стало так
Сохраняем. Перезагружаемся (sudo service gdm restart не поможет!)
Не могу сказать что данные действия меня порадовали. Похоже на латание дыр или установку костылей. Если вы найдёте более красивый способ, буду очень признателен.
PS было бы неплохо найти способ, при котором добавлялись бы устройства, прописанные в xorg.conf а потом, добавляемые через HotPlug (конечно исключая дубликаты). Сейчас же вы обязаны выбирать - или всё прописывать вручную, или довериться этому ненадёжному механизму автоопределения.