ubuntu18.04をスリープしたのにマウスをちょっと触っただけで復帰してしまってうざい。。。
調べると以下のサイトで解決法を見つけた。
Wake up from suspend using wireless USB keyboard or mouse (for any Linux Distro) - Ask Ubuntu
解決法
まず以下のコマンドでスリープから復帰するデバイスを見つける。
grep . /sys/bus/usb/devices/*/power/wakeup
自分の環境だと以下のとおり、1-4
と1-7
がenabledになってた。
/sys/bus/usb/devices/1-4/power/wakeup:enabled /sys/bus/usb/devices/1-7/power/wakeup:enabled /sys/bus/usb/devices/1-8/power/wakeup:disabled /sys/bus/usb/devices/usb1/power/wakeup:disabled /sys/bus/usb/devices/usb2/power/wakeup:disabled /sys/bus/usb/devices/usb3/power/wakeup:disabled /sys/bus/usb/devices/usb4/power/wakeup:disabled
1-4
とか1-7
とかってなんやねんということで、以下のコマンドで調べる。
grep . /sys/bus/usb/devices/*/product
以下のとおり、キーボートとマウスだった。
/sys/bus/usb/devices/1-4/product:2.4G Keyboard Mouse /sys/bus/usb/devices/1-7/product:USB Keyboard ...
/sys/bus/usb/devices/*/power/wakeup
は普通にエディタを使ってやれば編集できるので、vimとかを使って
enabled
からdisabled
に変更してやれば良い(sudoで編集する必要あり)。
実際1-4
と1-7
をdisabled
に変更してスリープしたらキーボートやマウスを触っても復帰しなくなった。
この状態で復帰する際は電源ボタンを押してやればOK。
恒久的にマウスで復旧しないようにするには
上でdisabled
にしても再起動するとenabled
に戻ってしまう。。。
ならば起動時に自動でdisabled
にするようにしてしまおう。
以下のようにして起動時に自動で実行するコマンドの設定ファイル/etc/rc.local
を作成(既にある場合は編集)。
sudo vim /etc/rc.local
echo disabled > /sys/bus/usb/devices/[disabledにしたいデバイス]/power/wakeup
を追加。
自分の環境では以下のように書いた。
#!/bin/bash echo disabled > /sys/bus/usb/devices/1-4/power/wakeup echo disabled > /sys/bus/usb/devices/1-7/power/wakeup
以下のコマンドで実行権限を付与。
sudo chmod +x /etc/rc.local
※既に/etc/rc.local
があった場合は#!/bin/bash
を書く必要もchmod +x
を実行する必要もない。
これで再起動してもキーボートやマウスで復帰しなくなったb