Ubuntuをスリープさせても、マウスが動いただけで復帰してしまう件
最近、Thinkpad君にドッキングステーションをつけてデスクトップとしても使っているが、スリープ中ちょっとでも机にふれてマウスが動くとすぐ目を覚ましてしまう。敏感過ぎるだろ!夜泣き激しすぎて育児ノイローゼになるわ!っということで、Ubuntu 12.04 でマウスではスリープから復帰しないように設定したメモ。
lsinputコマンドで、マウスの接続先を探す
# lsinput /dev/input/event0 bustype : BUS_HOST vendor : 0x0 product : 0x5 version : 0 name : "Lid Switch" phys : "PNP0C0D/button/input0" bits ev : EV_SYN EV_SW /dev/input/event1 bustype : BUS_HOST ... ...
このPCでは、/dev/input/event6 にマウスが見つかった
/dev/input/event6 bustype : BUS_USB vendor : 0x45e product : 0x773 version : 273 name : "Microsoft Microsoft® Nano Trans" phys : "usb-0000:00:1a.7-5.4/input1" uniq : "" bits ev : EV_SYN EV_KEY EV_REL EV_ABS EV_MSC
いちおう、input-eventsコマンドでほんとにつながってるか確認してみよう
~# input-events 6 /dev/input/event6 bustype : BUS_USB vendor : 0x45e product : 0x773 version : 273 name : "Microsoft Microsoft® Nano Trans" phys : "usb-0000:00:1a.7-5.4/input1" uniq : "" bits ev : EV_SYN EV_KEY EV_REL EV_ABS EV_MSC waiting for events 16:33:12.127234: EV_REL REL_X 3 16:33:12.127241: EV_REL REL_Y -14 ... ...
acpiのデバイス指定を確認する
/proc/acpi/wakeupから、マウスが接続されているデバイス名を確認する
# cat /proc/acpi/wakeup Device S-state Status Sysfs node LID S3 *enabled SLPB S3 *enabled IGBE S4 *enabled pci:0000:00:19.0 EXP0 S4 *disabled pci:0000:00:1c.0 EXP1 S4 *disabled pci:0000:00:1c.1 EXP2 S4 *disabled EXP3 S4 *disabled pci:0000:00:1c.3 USB0 S3 *enabled pci:0000:00:1d.0 USB3 S3 *enabled pci:0000:00:1a.0 USB5 S3 *enabled pci:0000:00:1a.2 EHC0 S3 *enabled pci:0000:00:1d.7 EHC1 S3 *enabled pci:0000:00:1a.7 HDEF S4 *disabled pci:0000:00:1b.0
マウスがつながっているノード pci:0000:00:1a.7 は、'EHC1' という名前になっているようだ。現在、'EHC1' は 'enabled' になっていて、スリープからの復帰が有効になっている。これを無効にするには、
# echo EHC1 > /proc/acpi/wakeup
とすれば良い。もう一度
# echo EHC1 > /proc/acpi/wakeup
とすれば、再び有効になる。
rc.localを編集する
起動時にマウスによる復帰が無効とするために、/etc/rc.localに以下の記述を追加する。
r=`cat /proc/acpi/wakeup | grep "EHC1\s*\w\+\s*\*enabled"` if [ -n "$r" ] ; then echo EHC1 > /proc/acpi/wakeup fi