Сенсорная панель Synaptics обнаруживается и хорошо работает, если в нее вошел один пользователь. Однако, если мы переходим к другому пользователю, мышь больше не работает для второго пользователя. Вы можете переключиться с помощью меню блокировки / переключения учетной записи пользователя или с помощью сочетания клавиш CTRL + ALT + F8.
Файл журнала для Screen0 (CTRL + ALT + F7) -> Сенсорная панель Synaptics работает нормально.
[ 20.205] (II) config/udev: Adding input device SynPS/2 Synaptics TouchPad (/dev/input/event17)
[ 20.205] (**) SynPS/2 Synaptics TouchPad: Applying InputClass "evdev touchpad catchall"
[ 20.205] (**) SynPS/2 Synaptics TouchPad: Applying InputClass "touchpad catchall"
[ 20.205] (**) SynPS/2 Synaptics TouchPad: Applying InputClass "Default clickpad buttons"
[ 20.205] (II) LoadModule: "synaptics"
[ 20.205] (II) Loading /usr/lib/xorg/modules/input/synaptics_drv.so
[ 20.205] (II) Module synaptics: vendor="X.Org Foundation"
[ 20.205] compiled for 1.15.0, module version = 1.7.4
[ 20.205] Module class: X.Org XInput Driver
[ 20.205] ABI class: X.Org XInput driver, version 20.0
[ 20.205] (II) Using input driver 'synaptics' for 'SynPS/2 Synaptics TouchPad'
[ 20.205] (**) SynPS/2 Synaptics TouchPad: always reports core events
[ 20.205] (**) Option "Device" "/dev/input/event17"
[ 20.232] (--) synaptics: SynPS/2 Synaptics TouchPad: x-axis range 1472 - 5472 (res 58)
[ 20.232] (--) synaptics: SynPS/2 Synaptics TouchPad: y-axis range 1408 - 4448 (res 106)
[ 20.232] (--) synaptics: SynPS/2 Synaptics TouchPad: pressure range 0 - 255
[ 20.232] (--) synaptics: SynPS/2 Synaptics TouchPad: finger width range 0 - 15
[ 20.232] (--) synaptics: SynPS/2 Synaptics TouchPad: buttons: left right
[ 20.232] (--) synaptics: SynPS/2 Synaptics TouchPad: Vendor 0x2 Product 0x7
[ 20.232] (--) synaptics: SynPS/2 Synaptics TouchPad: touchpad found
[ 20.232] (**) SynPS/2 Synaptics TouchPad: always reports core events
[ 20.264] (**) Option "config_info" "udev:/sys/devices/platform/i8042/serio1/input/input9/event17"
[ 20.264] (II) XINPUT: Adding extended input device "SynPS/2 Synaptics TouchPad" (type: TOUCHPAD, id 12)
[ 20.264] (**) synaptics: SynPS/2 Synaptics TouchPad: (accel) MinSpeed is now constant deceleration 2.5
[ 20.264] (**) synaptics: SynPS/2 Synaptics TouchPad: (accel) MaxSpeed is now 1.75
[ 20.264] (**) synaptics: SynPS/2 Synaptics TouchPad: (accel) AccelFactor is now 0.040
[ 20.264] (**) SynPS/2 Synaptics TouchPad: (accel) keeping acceleration scheme 1
[ 20.264] (**) SynPS/2 Synaptics TouchPad: (accel) acceleration profile 1
[ 20.264] (**) SynPS/2 Synaptics TouchPad: (accel) acceleration factor: 2.000
[ 20.264] (**) SynPS/2 Synaptics TouchPad: (accel) acceleration threshold: 4
[ 20.264] (--) synaptics: SynPS/2 Synaptics TouchPad: touchpad found
[ 20.264] (II) config/udev: Adding input device SynPS/2 Synaptics TouchPad (/dev/input/mouse1)
[ 20.264] (**) SynPS/2 Synaptics TouchPad: Ignoring device from InputClass "touchpad ignore duplicates"
Файл журнала для Screen1 (CTRL + ALT + F8) -> Сенсорная панель Synaptics второго пользователя не обнаружена
[ 32380.253] (II) Using input driver 'synaptics' for 'SynPS/2 Synaptics TouchPad'
[ 32380.253] (**) SynPS/2 Synaptics TouchPad: always reports core events
[ 32380.253] (**) Option "Device" "/dev/input/event17"
[ 32380.260] (EE) synaptics: SynPS/2 Synaptics TouchPad: Synaptics driver unable to detect protocol
[ 32380.260] (EE) PreInit returned 11 for "SynPS/2 Synaptics TouchPad"
[ 32380.260] (II) UnloadModule: "synaptics"
[ 32380.260] (II) config/udev: Adding input device SynPS/2 Synaptics TouchPad (/dev/input/mouse1)
[ 32380.260] (**) SynPS/2 Synaptics TouchPad: Ignoring device from InputClass "touchpad ignore duplicates"
Вывод xinput на экран 0
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ SynPS/2 Synaptics TouchPad id=12 [slave pointer (2)]
⎜ ↳ MCE IR Keyboard/Mouse (ene_ir) id=13 [slave pointer (2)]
⎣ Virtual core keyboard id=3 [master keyboard (2)]
↳ Virtual core XTEST keyboard id=5 [slave keyboard (3)]
↳ Power Button id=6 [slave keyboard (3)]
↳ Video Bus id=7 [slave keyboard (3)]
↳ Power Button id=8 [slave keyboard (3)]
↳ Sleep Button id=9 [slave keyboard (3)]
↳ HP Webcam id=10 [slave keyboard (3)]
↳ AT Translated Set 2 keyboard id=11 [slave keyboard (3)]
↳ HP WMI hotkeys id=14 [slave keyboard (3)]
↳ ENE eHome Infrared Remote Receiver id=15 [slave keyboard (3)]
Существуют ли какие-либо известные обходные пути, пока не будет доступно надлежащее исправление?
Переустановите драйвер устройства:
sudo apt-get --purge autoremove xserver-xorg-input-synaptics && sudo apt-get install xserver-xorg-input-synaptics
Согласно https://bugs.launchpad.net/ubuntu/+source/gdm/+bug/1247388 , обходной путь должен выполняться:
sudo modprobe -r psmouse
sudo modprobe psmouse
Это позволяет тачпад для пользователя, но отключает его для другого (я проверял). Но для этого нужны права администратора, поэтому я не знаю, каково решение для обычного пользователя.
Я также попробовал это с гостевым сеансом, но выполнил две команды с первым (администратором) пользователем на виртуальной консоли, и он включил сенсорную панель для обоих пользователей. Но, что интересно, когда я попробовал это с другой учетной записью администратора вместо гостя, то же самое в виртуальной консоли сделало тачпад доступным только для одного из пользователей. Странный.
Другой обходной путь (из https://bugs.launchpad.net/ubuntu/+source/gnome-settings-daemon/+bug/868400 ):
sudo modprobe -r psmouse
sudo modprobe psmouse proto=imps
[ 118] Запуск этого до переключения пользователей, кажется, решает проблему, но нарушает настройки сенсорной панели.
Обновление до Ubuntu 14.10 наконец решило проблему. Yipee. Протестированный с 14,10 использованиями nouveau драйвер.
Вот обходное решение для решения проблемы:
Создайте файл /usr/local/sbin/mousecheck
со следующим содержанием:
#!/bin/bash
OLDVT="x"
while sleep 1
do
VT=$(fgconsole)
if [[ "$VT" -ne "$OLDVT" ]]; then
modprobe -r psmouse
modprobe psmouse
OLDVT="$VT"
fi
done
Сделайте этот исполняемый файл сценария:
chmod a+x /usr/local/sbin/mousecheck
Можно теперь запустить сценарий при помощи
sudo /usr/local/sbin/mousecheck
и проверьте, работает ли это. Наконец можно включить взлом постоянно путем добавления
/usr/local/sbin/mousecheck &
в файл /etc/rc.local
. Будьте осторожны: Добавьте его перед строкой
exit 0
и не забывайте амперсанд (и) в конце строки.