Mengapa MacBook Pro saya tidak akan otomatis tidur?

16

Saya mengatur MacBook saya untuk tidur setelah 2 menit dengan baterai (melalui panel preferensi Energy Saver.) Namun, ketika saya membiarkannya menganggur, ia hanya mematikan layar — ia tidak benar-benar tidur. Ini berarti bahwa jika saya meninggalkannya dan lupa untuk menutup tutupnya, selalu berakhir dengan baterai mati.

Sistem tidur dengan benar jika dipicu secara manual ( - Tidur) atau dengan menutup tutupnya. Saya telah mengujinya tanpa perangkat USB yang terhubung dan pada akun pengguna baru, jika program latar belakang mencegah tidur. Tidak ada informasi yang relevan dicetak ke Konsol pada saat sistem harus tidur.

Saya telah melakukan reset PRAM dan SMC tetapi tidak berhasil, serta Perizinan Disk Verifikasi yang dipercaya takhayul.

Apakah ada hal lain yang harus saya coba sebelum menginstal ulang OS X?

Ini adalah MacBookPro5,5OS yang berjalan 10.6.6.

Perlu dicatat bahwa saya menderita masalah ini beberapa waktu yang lalu karena ada bug di daemon pembantu untuk produk Things , tetapi masalah ini sedikit berbeda dan melibatkan tampilan sleep. Juga, saya telah memverifikasi bahwa daemon helper tidak berjalan selama pengujian saya.

Informasi tambahan:

Saya mulai bekerja melalui dokumen Apple berjudul " Mengapa Mac Anda mungkin tidak tidur atau tetap dalam mode tidur. " Saya menemukan bahwa masalah ini tidak muncul ketika saya Safe Boot komputer saya. Saya diffproses mendaftar dan menemukan bahwa program-program berikut ini hanya berjalan ketika di boot normal, dan dengan demikian kemungkinan penyebabnya:

  • Quick Look Helper
  • cvmsComp_x86_64
  • kextcache
  • launchd
  • mdworker
  • mdworker
  • nmblookup
  • vmnet-bridge
  • vmnet-dhcpd
  • vmnet-dhcpd
  • vmnet-natd
  • vmnet-netifup
  • vmnet-netifup
Phil Calvin
sumber
Pastikan Anda mengatur Tidur Komputer dan tidak Menampilkan tidur. Foto di sini: imgur.com/yVGb4.png
Nathan Greenstein
1
Karena penasaran, dapatkah Anda mencoba mengatur Tampilan Tidur menjadi sesuatu setelah Tidur Komputer? Mungkin kita akan menemukan bug. Hal lain yang terlintas dalam pikiran: Mungkin screensaver Anda mengaktifkan dan menjaga sesuatu dari tidur (ini juga akan menjadi bug). Coba ubah pengaturan hingga berjalan lancar, Screen Saver, Display Sleep, Computer Sleep, dengan setidaknya satu menit di antaranya.
Nathan Greenstein
1
Panel preferensi mencegah Anda dari mengatur Tampilan Tidur ke setelah Tidur Komputer. Saya memang mencobanya karena keduanya sama dan berbeda (berpikir bahwa yang pertama mungkin memiliki bug.) Saya juga baru mencoba Screen Saver, Display Sleep, dan Computer Sleep dengan satu menit di antara mereka, tetapi tidak ada dadu.
Phil Calvin
1
@ Martin Wickman: Saya mungkin telah menyelesaikan ini. Saya memiliki ruang kosong kurang dari 5% pada volume Sistem saya, yang sedang login ke log sistem (tetapi tidak dengan cara yang menjelaskan ada hubungan.) Membebaskan 50GB memecahkan masalah. Apakah Anda juga kekurangan ruang kosong?
Phil Calvin
1
Saya baru tahu tentang pmset -g assertionsyang menunjukkan beberapa info tentang proses apa (atau sesuatu) yang mencegah tidur. Coba lihat.
Martin Wickman

Jawaban:

5

Untuk membantu men-debug masalah tidur, coba pmsetperintah di terminal:

$ 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" 

Dalam hal ini, ini adalah proses 2520 yang kacau. Lihat di monitor aktivitas dan bunuh (/ usr / sbin / coreaudiod dimulai oleh iTunes).

Setelah itu, jalankan perintah lagi:

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

Tidak ada bendera untuk PreventUserIdleSystemSleep.

Martin Wickman
sumber
Ini adalah penggunaan fantastis yang pmsettidak saya ketahui. Terima kasih sudah membawa ini padaku.
Phil Calvin
Apa yang Anda lakukan jika proses tidak berjalan dan PreventUserIdleDisplaySleepmasih diatur ke 1?
Abhi Beckert
4

Saya memiliki masalah yang sama dengan MacBook Pro 3,1 saya. Ini sangat membuat frustrasi. Saya melangkah sejauh menginstal ulang OS X, yang tidak menyelesaikan masalah. Ini membuat saya percaya bahwa kemungkinan masalah perangkat keras dalam kasus saya.

Saya sudah menyerah mengatasi masalah dan hanya menggunakan PleaseSleep .

PleaseSleep adalah perangkat lunak utilitas yang dirancang untuk Mac OS X yang membantu membuat komputer Anda tidur ketika Anda tahu beberapa aplikasi lain mencegah Mac Anda untuk tidur.

PleaseSleep duduk di latar belakang dan menunggu pengatur waktu tidur yang Anda atur di panel preferensi Energy Saver. Bergantung pada preferensi yang Anda atur, PleaseSleep akan mencoba untuk membuat komputer Anda tidur ketika timer tidur yang dijadwalkan dimulai. PleaseSleep sangat mudah dikonfigurasi, Anda dapat mengaktifkan, menonaktifkan, dan mengakses preferensi melalui ikon bilah menu sistem. Anda dapat memilih agar PleaseSleep mengaktifkan fungsi tidur setiap saat, atau Anda dapat memberitahu PleaseSleep untuk mengaktifkan fungsi tidur hanya ketika aplikasi tertentu sedang berjalan.

Graham
sumber
Ini menakutkan! Jika saya tidak dapat menemukan solusi "benar", saya pasti akan mencoba produk ini dan menerima jawaban Anda. Namun, saya keras kepala dan belum mau menyerah dulu. =)
Phil Calvin
Tidak bekerja pada 10.8
sorin
3

Saya akhirnya memiliki sistem saya idle-sleep lagi. Saya mengubah tiga hal untuk mencapai titik ini, yang semuanya saya yakini sebagai kontributor:

  • Ruang disk saya rendah (kurang dari 5% gratis) pada volume utama saya. Kernel mengeluh tentang hal ini kepada system.log(dapat dilihat di Console.app) tentang waktu seharusnya tidur.

  • Saya menonaktifkan Dropbox, yang sering mengakses disk dan menjengkelkan, dan dilaporkan mencegah tidur di Snow Leopard.

  • Saya memutakhirkan dari Chromium tua yang memalukan, dan sekarang saya menggunakan 11.0.658.0 (73560) . Ada beberapa bug yang terbuka tentang Chrome / Chromium ini yang mencegah sleep idle. Namun, saya menemukan ini hanya setelah mendapatkan sistem idle sleep setelah reboot tanpa ada program yang berjalan.

Observasi teknis mengikuti:

Perlu dicatat bahwa panel preferensi Penghemat Energi terletak sedikit. Saya mengaturnya untuk tidur dan mematikan layar setelah 1 menit, tetapi sistem tidak benar-benar pergi tidur selama 3 menit dan 30 detik, memberi atau mengambil beberapa detik untuk menulis gambar Safe Sleep. Layar sebenarnya membutuhkan waktu 2 menit untuk tidur. Saya menduga ini adalah kasus Apple yang lebih tahu daripada kita — 1 menit mungkin terlalu cepat. Bagaimanapun, ini membuat masalah debugging seperti ini sulit karena Anda harus menunggu lebih lama daripada yang ditunjukkan untuk melihat apakah sistem benar-benar akan tidur.

Bahwa kedua aplikasi ini adalah kontributor meskipun tidak melakukan sesuatu yang intensif menunjukkan bahwa Snow Leopard mengubah sesuatu tentang bagaimana sistem memutuskan apakah sleep idle dapat terjadi. Ada API yang terdokumentasi untuk menonaktifkan sleep idle, tetapi juga tampak bahwa aktivitas disk (khusus menulis) lebih dari satu menit sekali juga me-reset timer tidur dan dengan demikian menunda sleep. Setiap aplikasi yang sering menulis adalah kemungkinan penyebabnya. sudo fs_usage -e grep -f filesys | grep -e writedi jendela Terminal dapat membantu mengungkap pelakunya.

Phil Calvin
sumber
1
Penggunaan perintah di sini mungkin seharusnya: sudo fs_usage -e grep -f filesys | grep tulis Tanpa -e, itu hanya akan memuntahkan grep menulis. Tidak membantu.
Dominic Hopton
Menarik! Tidak ada muntah terjadi ketika saya menguji ini pada Snow Leopard, tetapi itu terjadi pada Lion. Tetap.
Phil Calvin
Ada utas yang cukup panjang di forum diskusi Apple yang menyarankan Lion memperkenalkan beberapa masalah tidur baru yang mungkin terkait dengan printer dan pembagian jaringan. Lebih banyak hal untuk dicoba jika Anda, seperti saya, pada akhir kecerdasan.
Phil Calvin
0

Mungkin pengindeksan Spotlight. Anda dapat menguji ini dengan masuk ke System Preferences> Spotlight> Hasil Pencarian dan hapus centang semuanya. Kemudian lihat apakah MacBook Anda tertidur.

Conorgriffin
sumber
Saya menonaktifkan pengindeksan menggunakan mdutil -a -i off, tetapi masalah tetap ada. Harap beri tahu saya jika itu tidak secara fungsional setara dengan saran Anda.
Phil Calvin
Saya tidak tahu apakah secara fungsional sama. Tapi ini cepat untuk diuji jadi mengapa tidak mencobanya seperti yang dijelaskan?
conorgriffin
Apakah kamu punya skype?
Martin Marconcini
@ martin-marconcini - Anda bertanya pada @ Phil-Calvin atau saya?
conorgriffin