Linux MintでノートPCのタッチパッドと内蔵キーボードを認識しなくなった。USBマウスとキーボードでは普通に動くから、運用回避できなくはないんだけどせっかくノートPCに入れたのにそれは嫌だ。ということで調査・対処含めて3時間くらい頑張った私の奮闘歴を記事にする。Ubuntuも同様の問題が起きたら適用できるかなと思う。
結論だけ知りたい人向け
ドライバをlibinputからsynapticsとevdevにしたら動くようになった。多分以下をやっておけば大丈夫だと思うけど、libinputを削除して他の影響があるかどうかは各自で判断してほしい。
sudo apt install xserver-xorg-input-synaptics
sudo apt install xserver-xorg-input-evdev
sudo apt remove xserver-xorg-input-libinput
sudo shutdown -r now
以降は詳細を記載していくので、結論だけで十分だった人は読む必要がない。
起こった事象
タイトルの通りではあるんだけど、前回AerobookにLinux Mintをインストールし、Windowsとデュアルブートにした。前回記事は以下。
で、インストール直後はタッチパッドもスムーズに動くし、内蔵キーボードも問題なく動いたんだけど、パッケージをアップデートしたら動かなくなった。
インストール直後にやったこと
多分みんなやると思うけど、とりあえずソフトウェアを最新化を行った。以下コマンドを実行して再起動したところ、内蔵キーボードとタッチパッドが動かなくなった。
sudo apt update
sudo apt upgrade
試しても解決しなかったもの
「Ubuntu タッチパッド 動かない」で検索すると出てくる「i8042」に関する記事に書いてあることは大体試してみたが、解決はできなかった。それらの記事で編集するファイルはバックアップを取っておいたので、解決しないと分かった段階で戻している。
参考にした記事たちは以下。
Ubuntu : サスペンド復帰時にマウスとキーボードが認識されなくなる問題の対処(i8042)
https://homemadegarbage.com/ubuntu-i8042
この方も私と同じようにi8042に関するネット情報を試しているようだ。
ノートPCのタッチパッド不調につき諸説試すが全敗、ubuntu 20.04LTS
https://vegam57.livedoor.blog/archives/6391794.html
【解決編1】タッチパッド用ドライバの変更(libinput → synaptics)
『Linux Mint タッチパッド 動かない』に検索ワードを変更したところ、以下のページにたどり着いた。
結論から言うと入力デバイスのドライバをlibinput から evdev + synaptics に変更したら解決した。以降は引用元ページをなぞる形で進んでいく。引用元は以下のページ。感謝しかない。
タッチパッド操作が意図通り動作しない時は、タッチパッドドライバーを切り替えてみてください。
https://kledgeb.blogspot.com/2019/07/linux-mint-119-linux-mint-192.html
デバイスが使用しているドライバを次のコマンドで確認する。
grep -i "Using input driver" /var/log/Xorg.0.log
デバイスがlibinputで認識されていることが分かった。「SYNA3602:00 0911:5288」と付くデバイスがが内蔵キーボードとタッチパッドのようだ。
libinputからsynapticsにドライバを切り替える。以下を実行するとsynapticsドライバインストールされる。再読込できそうだがとりあえず再起動する。
sudo apt install xserver-xorg-input-synaptics
再起動後、タッチパッドが動くようになった。デバイスが使用しているドライバを確認してみると確かにsynapticsドライバに変わっていることがわかる。しかし内蔵キーボードは依然として動かない。
【解決編2】内蔵キーボードのドライバ変更
タッチパッドがドライバ変更で動くようになったので、内蔵キーボードも同様にドライバの問題と考えた。libinput以外のドライバは何かないのかなと思い、先程の引用ページを読んでいると以下の記述を見つけた。libinputの代わりにevdevがある。ものは試しでインストールすることにした。
もう一つの選択肢である「evdev」ドライバーをインストールしてみることも可能です。「evdev」ドライバーは「xserver-xorg-input-evdev」パッケージから提供されます。
https://kledgeb.blogspot.com/2019/07/linux-mint-119-linux-mint-192.html
インストールコマンドは以下。ただしインストールするだけではevdevよりlibinputが優先される。
sudo apt install xserver-xorg-input-evdev
libinputが優先となる理由は、/usr/share/X11/xorg.conf.d/
の10-evdev.conf
が40-libinput.conf
より若番だからだと思う。70-synaptics.conf
は40-libinput.conf
より後ろの番号だからsynapticsが優先になっている。
/etc/X11/xorg.conf.d
に.confを置いて上書きするようにすればlibinputよりevdevが優先になるはずだが、今回は動作が怪しいlibinputを削除した。以下コマンドで削除する。
※人によってはlibinputが必須かもしれないので注意してほしい。
sudo apt remove xserver-xorg-input-libinput
再起動後、内蔵キーボードが動くようになった。デバイスが使用しているドライバを確認してみるとevdevドライバに変わっていることがわかる。USBマウス、USBキーボードも特に問題なく動くので、とりあえずこれで運用していこうと思う。
ひとまずこれで解決したから良しとする。
コメント