web-dev-qa-db-ja.com

Unityでユーザーを切り替えているときにSynapticsタッチパッドが検出されない

シナプスタッチパッドが検出され、1人のユーザーがログインしていれば正常に機能します。ただし、別のユーザーに切り替えると、2番目のユーザーのマウスは機能しなくなります。 Lock/Switch user account menu OR 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)-> 2番目のユーザー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"

画面0でのxinputの出力

            ⎡ 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)]

適切な修正が利用可能になるまで、既知の回避策はありますか?

3
windy_rider

問題を解決する回避策は次のとおりです。

ファイルを作成する/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

行末のアンパサンド(&)を忘れないでください。

1
DrScott

Ubuntu 14.10にアップグレードすると、最終的に問題が修正されました。ヤッピー。 nouveauドライバーを使用して14.10でテストしました。

0
windy_rider

https://bugs.launchpad.net/ubuntu/+source/gdm/+bug/1247388 によると、回避策は次のように実行することです:

Sudo modprobe -r psmouse
Sudo modprobe psmouse

これにより、ユーザーのタッチパッドは有効になりますが、他のタッチパッドでは無効になります(テスト済み)。しかし、これには管理者特権が必要なので、通常のユーザーの解決策はわかりません。

ゲストセッションでもこれを試しましたが、仮想コンソールで最初の(管理者)ユーザーで2つのコマンドを実行し、両方のユーザーのタッチパッドを有効にしました。しかし、興味深いことに、ゲストではなく別の管理者アカウントでこれを試してみたところ、仮想コンソールで同じことを行うと、1人のユーザーだけがタッチパッドを有効にできました。奇妙な。


別の回避策( https://bugs.launchpad.net/ubuntu/+source/gnome-settings-daemon/+bug/8684 から):

Sudo modprobe -r psmouse
Sudo modprobe psmouse proto=imps

ユーザーを切り替える前にこれを実行すると、問題は解決するようですが、タッチパッドの設定が壊れます。

0
user180409

デバイスドライバーを再インストールします。

Sudo apt-get --purge autoremove xserver-xorg-input-synaptics && Sudo apt-get install xserver-xorg-input-synaptics
0
user224082