サスペンドやハイバネーションからの即時のウェイクアップを防ぐにはどうすればよいですか?


35

数日間、私のUbuntu 12.04デスクトップコンピューターは、サスペンドモードに入った直後に神秘的に目覚めていました。

インストール後、Ubuntu 12.10ラップトップコンピューターもサスペンドおよび休止状態の直後に再開されました。

それらを防ぐ方法は?

回答:


35

この問題は、おそらく奇妙なUSB信号が原因でした。gedit /proc/acpi/wakeupウェイクアップがUSB0とUSB2で有効になっていることを教えてくれました。

sudo -s
echo USB0 > /proc/acpi/wakeup
echo USB2 > /proc/acpi/wakeup

それらを無効に切り替えgedit /proc/acpi/wakeup再度確認する か、ファイルビューを更新します)、その後、コンピューターは必要に応じてサスペンド状態のままになります。:-)


この解決策はうまくいきませんでした。PS2Kは有効(キーボードウェイクアップ)でしたが、変更しても違いはありませんでした。
ブライス

4
私の場合、USB *デバイスはありませんでしたが、USBハブを介して内部接続されていたようです。EHC1、EHC2、およびXHCを/ proc / acpi / wakeupに追加すると助かりました。
ウラジミールラツキー14年

2
私の場合はそれがだったXHCI USB 3
アンディ

@Bazonあなたが見ていてくださいすることができhttp://askubuntu.com/questions/852600/ubuntu-16-04-wakes-up-immediately-from-suspend-after-installing-fprint-in-lenovo、私はそれを把握するために、助けを
Kasun Siyambalapitiya

私は無効にするためIGBEに働いた
Kasun Siyambalapitiya

22

最近、Ubuntu 15.04のAsus Zenbook Pro UX501でも同じ症状が見られました。Bazonの正確な修正は機能しませんでしたが、Vladimir Rutskyのバリエーションは機能しました。具体的には:

端末から実行すると、cat /proc/acpi/wakeup次の行が表示される場合

EHC1      S3    *enabled  pci:0000:00:xx.x
EHC2      S3    *enabled  pci:0000:00:xx.x
XHC       S3    *enabled  pci:0000:00:xx.x

(pciアドレスは異なる場合があります)

次のコマンドを発行して、これら3つを無効に切り替えます。

sudo -s
echo EHC1 > /proc/acpi/wakeup
echo EHC2 > /proc/acpi/wakeup
echo XHC > /proc/acpi/wakeup

上記のことは私の問題を解決しませんでした:(
Kasun Siyambalapitiya

私は無効にするためのIGBE3の上に、働いていたことはなかった
Kasun Siyambalapitiya

@ilikerrobotsこれは永久に修正するものではなく、永久に修正する方法
Kasun Siyambalapitiya

GLANはすぐに有効に戻ります。理由は何ですか?
アルフレッドM。17年

持続させるには、のタイミングでcronエントリに入れ@rebootます。シェルスクリプトにテストを入れて実際に有効にした場合にのみエコーを実行すると便利であることがわかりましたegrep -q '^XHC1\s+S[0-9]\s+\*enabled' /proc/acpi/wakeup && echo XHC1 > /proc/acpi/wakeup(私の問題のデバイスはXHC1-USBチップセットでした)。
デビッドシェーン

15

どのデバイスがPCを起動するかがわかっている場合は、最初の手順に進んでガイドに従ってください。そうでない場合は、ターミナルを開いて次を実行します。

cat /var/log/syslog

そして、どのデバイスがPCを起動しているのかを見つけます。

だから今:

  1. ターミナルでヒット:

    grep . /sys/bus/usb/devices/*/power/wakeup
    

PCをウェイクアップするすべてのUSBポートを一覧表示します。

sudo su

これでルート特権があります。

2. 8つのUSBポートがありますが、この例ではusb8を無効にしたいとします。

echo disabled > /sys/bus/usb/devices/usb8/power/wakeup

さあ、それをテストしてください。これで、USBポート8の特定のデバイスはPCをウェイクアップしません。

次のステップ、各ブート後に変更を永続的にする:

3。

sudo nano /etc/rc.local

そして、ステップ2のコマンドを貼り付けます。そこに(もちろんexit 0の前に)あります。

それでおしまい。

オプションスリープ/ウェイクアッププロセス後にUSB 8デバイスが(私の例では)有効に戻る場合のみ。

  1. 書くudevすべてのブート後にコマンドを実行するには、あまりにもルールを、睡眠、目を覚まします。

ターミナルを開き、以下を実行します。

lsusb

キーボードデバイスID情報では、最初の4桁がベンダーIDで、次の4桁が製品IDです スクリーンショット

次は:

sudo nano /etc/udev/rules.d/10-wakeup.rules

「ウェイクアップ」には、希望するスクリプト名を入力します。番号10は、他の多くのudevルールがある場合の優先順位です。番号が小さいほど、「ルール」は他のルールよりも先に実行されます。

これをコピーして貼り付け、ベンダーIDと製品IDを独自のワイヤレスキーボードベンダーIDと製品IDに置き換えます。

ACTION=="add", SUBSYSTEM=="usb", ATTRS{idVendor}=="062a", ATTRS{idProduct}=="4101" RUN+="/bin/sh -c 'echo disabled > /sys/bus/usb/devices/usb8/power/wakeup'"

* usb8は私のワイヤレスキーボードです(スクリーンショット(Bus 008)でも確認できます)。自分のものに置き換えてください。

Ctrl+ Oで保存、Ctrl+ Xで終了して再起動します。


ありがとう!これは面白そうです。ここにガイドを追加してください(この質問の特定の問題に対処するように変更してください)
-geoffrey

ありがとう。これは私が望んでいたものではありませんが、rc.localファイルを変更することで問題を解決することができました(私の問題はUSBポートに固有のものではありません)。私は自分の解決策を投稿しましたが、あなたは賞金を受け取ります(明日までに授与することはできません)
-geoffrey

無効化しても安全なのはどれですか?すべてを無効にすると問題が発生しますか?唯一有効なのは、/ sys / bus / usb / devices / 1-2 / power / wakeup:enabled
Alfred M.

syslogは、コンピューターを起動しているものについても言及していません
Ken Sharp

5

修正を永続的にするには

(Bazon、Ilikerobots、およびPavlos Theodorouが提供するソリューションをコンパイルしています-一緒に、特定の問題に対処します)

システムをウェイクアップするUSB​​ポートであるか、他の何かであるかに関係なく、問題を永続的に修正するには

  1. システムのウェイクアップが許可されているものを確認します。

gedit / proc / acpi / wakeup

次のような行が表示される場合があります。

EHC1 S3 *有効なpci:0000:00:xx.x

EHC2 S3 *有効なpci:0000:00:xx.x

XHC S3 *有効なpci:0000:00:xx.x

次に開きます:

sudo gedit /etc/rc.local

そして、これらの行(または上記の結果に応じて同様の行)を前に追加します exit 0

エコーEHC1> / proc / acpi / wakeup

エコーEHC2> / proc / acpi / wakeup

エコーXHC> / proc / acpi / wakeup


ああ、私はそれについて考えませんでした。もちろん、USB以外の別のポートでもかまいません。解決できてうれしいです。
パブロスセオドアー
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.