MacBook Proが自動的にスリープしないのはなぜですか?


16

MacBookはバッテリーで2分後にスリープするように設定しています(「省エネルギー」環境設定パネルを使用)。ただし、アイドル状態のままにすると、画面がオフになるだけで、実際にはスリープしません。これは、私がそれを離れて蓋を閉めるのを忘れると、常に電池切れになってしまうことを意味します。

システムが手動でトリガーされた場合(–スリープ)、または蓋を閉じた場合、システムは正しくスリープします。バックグラウンドプログラムがスリープを妨げている可能性があるため、USBデバイスを接続せず、新しいユーザーアカウントでテストしました。システムがスリープする必要があるときにコンソールに出力される関連情報はありません。

PRAMとSMCのリセットを実行しましたが、通常の迷信的なディスクのアクセス許可の検証も行いません。

OS Xを再インストールする前に、他に試すべきことはありますか?

これはMacBookPro5,5実行中のOS 10.6.6です。

製品Thingsのヘルパーデーモンのバグが原因でこの問題に悩まされたことは注目に値しますが、この問題は少し異なり、ディスプレイのスリープに関係していました。また、テスト中にヘルパーデーモンが実行されていないことを確認しました。

追加情報:

なぜMacがスリープしないか、スリープモードに留まらないのか」というタイトルのAppleのドキュメントを読み始めました。コンピュータをセーフブートしても、この問題は発生しません。私diffはプロセスをリストしましたが、次のプログラムは通常の起動時にのみ実行されているため、原因となっている可能性があります。

  • Quick Look Helper
  • cvmsComp_x86_64
  • kextcache
  • launchd
  • mdworker
  • mdworker
  • nmblookup
  • vmnet-bridge
  • vmnet-dhcpd
  • vmnet-dhcpd
  • vmnet-natd
  • vmnet-netifup
  • vmnet-netifup

[スリープの表示]ではなく[コンピューターのスリープ]を設定していることを確認してください。写真はこちら:imgur.com/yVGb4.png
ネイサングリーンスタイン

1
好奇心から、コンピューターのスリープ後にディスプレイのスリープを何かに設定してみてください。バグを見つけるかもしれません。もう1つ思い浮かぶことは、スクリーンセーバーがアクティブ化され、何かがスリープ状態にならないようにすることです(これもバグです)。少なくとも1分おきに、スクリーンセーバー、ディスプレイスリープ、コンピュータースリープなど、スムーズに設定が変更されるまで設定を変更してみてください。
ネイサングリーンスタイン

1
環境設定ペインでは、コンピューターのスリープ後に[スリープの表示]を設定できません。私はそれらを同じものと異なるものの両方で試しました(前者にはバグがあるかもしれないと考えています)。スクリーンセーバー、ディスプレイスリープ、およびコンピュータースリープも試しました。
フィルカルバン

1
@マーティンウィックマン:私はこれを解決したかもしれません。システムボリュームに5%未満の空き領域があり、システムログに記録されていました(ただし、関係があることを明確にする方法ではありませんでした)。空き容量も少ないですか?
フィルカルバン

1
pmset -g assertionsどのプロセス(または何か)が睡眠を妨げているかについての情報を表示していることがわかりました。見てみな。
マーティンウィックマン

回答:


5

スリープの問題をデバッグするにpmsetは、ターミナルでコマンドを試してください:

$ pmset -g assertions

Assertion status system-wide:
   ChargeInhibit                           0
   PreventUserIdleDisplaySleep             0
   PreventUserIdleSystemSleep              1
   NoRealPowerSources_debug                0
   CPUBoundAssertion                       0
   EnableIdleSleep                         1
   PreventSystemSleep                      0
   DisableInflow                           0
   DisableLowPowerBatteryWarnings          0
   ExternalMedia                           0

Listed by owning process:
  pid 2520: [0x0000012c000009d8] PreventUserIdleSystemSleep named: "com.apple.audio.'AppleHDAEngineOutput:1B,0,1,2:0'.noidlesleep" 

この場合、プロセスは失敗します。アクティビティモニターで確認し、強制終了します(iTunesが起動した/ usr / sbin / coreaudiod)。

その後、コマンドを再度実行します。

Assertion status system-wide:
   ChargeInhibit                           0
   PreventUserIdleDisplaySleep             0
   PreventUserIdleSystemSleep              0
   NoRealPowerSources_debug                0
   CPUBoundAssertion                       0
   EnableIdleSleep                         1
   PreventSystemSleep                      0
   DisableInflow                           0
   DisableLowPowerBatteryWarnings          0
   ExternalMedia                           0

PreventUserIdleSystemSleepのフラグはありません。


これはpmset私が知らなかった素晴らしい使用法です。これに注意を払ってくれてありがとう。
フィルカルバン

プロセスが実行PreventUserIdleDisplaySleepされておらず、まだ1に設定されている場合はどうしますか?
アブヒベッカー

4

MacBook Pro 3,1でも同じ問題が発生しました。とてもイライラします。OS Xを完全に再インストールするまで行ったが、問題は解決しなかった。これにより、私の場合はハードウェアの問題である可能性が高いと考えられます。

私は問題のトラブルシューティングをあきらめ、PleaseSleepを使用しています

PleaseSleepは、Mac OS X用に設計されたユーティリティソフトウェアで、他のアプリがMacのスリープを妨げていることがわかっている場合に、コンピュータをスリープ状態にするのに役立ちます。

PleaseSleepはバックグラウンドで動作し、「省エネルギー」環境設定パネルで設定したスリープタイマーを待ちます。PleaseSleepは、設定した設定に応じて、スケジュールされたスリープタイマーが作動すると、コンピューターをスリープ状態にしようとします。PleaseSleepの設定は非常に簡単で、システムメニューバーアイコンから設定を有効化、無効化、およびアクセスできます。PleaseSleepで常にスリープ機能を有効にするか、特定のアプリの実行中にのみスリープ機能を有効にするようにPleaseSleepに指示することができます。


これは怖い!「真の」解決策が見つからない場合、この製品を試してみて、あなたの答えを受け入れます。しかし、私は頑固で、まだあきらめません。=)
フィルカルバン

10.8で動作しない
ソリン

3

最後に、システムを確実に再びアイドルスリープ状態にします。私はこの点に到達するために3つのことを変更しましたが、すべてが貢献者であると信じています。

  • プライマリボリュームのディスク領域が不足していました(空き容量が5%未満)。カーネルは、これについてsystem.log(Console.appで表示可能)に、スリープする時間について不平を言っていました。

  • Dropboxを無効にしました。Dropboxはディスクに頻繁にかつ不愉快にアクセスし、Snow Leopardでの睡眠を妨げる報告されています。

  • 毎晩、恥ずかしいほど古いChromiumからアップグレードして、今では11.0.658.0(73560)になっています。あり、いくつかのバグオープンこのクロム/クロムがアイドル睡眠を防止については。ただし、プログラムを実行せずに再起動した後、システムをアイドルスリープ状態にした後にのみ、これを発見しました。

技術的観察は次のとおりです。

省エネルギー設定パネルが少し横になっていることに注意してください。1分後にスリープして画面をオフにするように設定しましたが、システムは実際に3分30秒間スリープ状態にならず、セーフスリープ画像を書き込むのに数秒かかります。画面が実際にスリープ状態になるまでに2分かかります。これはAppleが私たちよりもよく知っているケースだと思う。1分はおそらく速すぎる。とにかく、これにより、システムが実際にスリープ状態になるかどうかを確認するために、指示よりも長く待たなければならないため、このようなデバッグの問題が難しくなります。

これら2つのアプリケーションが特に集中的に何もしなかったにもかかわらず貢献者であったということは、Snow Leopardがアイドルスリープが発生するかどうかをシステムが決定する方法について何かを変えたことを示唆しています。アイドルスリープを無効にするための文書化されたAPIがありますが、ディスクアクティビティ(具体的には書き込み)が1分間に複数回行われるとスリープタイマーもリセットされ、スリープが遅延するようです。したがって、頻繁に書き込むアプリケーションが原因である可能性があります。sudo fs_usage -e grep -f filesys | grep -e writeターミナルウィンドウで犯人を明らかにするのに役立ちます。


1
ここでのコマンドの使用法は、おそらく次のとおりです。sudo fs_usage -e grep -f filesys | grep write -eを指定しないと、grepの書き込みが吐き出されます。役に立たない。
ドミニクホプトン

面白い!Snow Leopardでこれをテストしていたときに嘔吐は発生しませんでしたが、Lionでは発生します。修繕。
フィルカルバン

Appleのディスカッションフォーラムにはかなり長いスレッドがあり、Lionがプリンタとネットワーク共有に関連する可能性のある新しいスリープ問題を紹介することを示唆しています。私がそうであったように、あなたが知人であるなら、もっと試してみてください。
フィルカルバン

0

Spotlightインデックス作成の可能性があります。これをテストするには、[システム環境設定]> [Spotlight]> [検索結果]に移動し、すべてのチェックを外します。次に、MacBookがスリープ状態になるかどうかを確認します。


を使用してインデックス作成を無効mdutil -a -i offにしましたが、問題は解決しませんでした。それがあなたの提案と機能的に同等でない場合はお知らせください。
フィルカルバン

機能的に同じかどうかはわかりません。しかし、テストは簡単ですので、説明どおりに試してみませんか?
コノルグリフィン

Skypeを持ってますか?
マーティンマルコンチーニ

@ martin-marconcini-@ Phil-Calvinまたは私に尋ねますか?
コノルグリフィン
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.