Mac Bug之三 不能睡眠,能睡眠時又自動喚醒

因爲有時os x系統sleep的時候會自動喚醒,隔一會再sleep,隔一會再自動喚醒,不斷的切斷硬件電源、再接通電源,等於一個夜裏就重啓100多次,mac的壽命可想而知

於是有了下面的研究、參數的測試、推薦的設置


Apple公司默認設定如下:

10分鐘後關閉顯示器、硬盤

1分鐘後sleep

sleep 4小時後進入poweroff

sleep 3小時後進入standby


那麼使用系統設置裏的Energy Saver和pmset命令的區別在哪?

pmset modifies the same file that System Preferences Energy Saver modifies.


autopoweroff,man裏有說明

the system will write a hibernation image and go into a lower power chipset sleep.

系統產生休眠文件,進入低耗電模式,關閉除內存外的硬件

The system will not auto power off if any external devices are connected, if the system is on battery power, or if the system is bound to a network and wake for network access is enabled.

系統不會進入power off模式,如果有任何外設在連接狀態,如果在使用電池供電,如果有網絡活動同時開啓了網絡喚醒


standby,仍然看man的說明

writing the hibernation image to disk and powering off memory for Standby

把休眠文件寫入硬盤,並且關閉內存

standby only works if hibernation is turned on to hibernatemode 3 or 25

爲3或25才能standby


情形1

在電源模式下,選中第一項,取消第二三四項的情況下

a 點擊Sleep,會自動喚醒

b 合盒子,有時不會自動喚醒,用測試程序發現10分鐘和4小時10分鐘的兩個時間點都有一次喚醒,即displaysleep和autopoweroffdelay

c 合盒子,有時不會睡眠,直至撥了電源、離開藍牙鍵盤和trackpad


情形1的結論:

在電源供電 而且有藍牙、有wifi連接的情況下,居然在sleep 4小時的時候執行了一次poweroff,與蘋果公司的聲明的"系統不會進入power off模式,如果有任何外設在連接狀態,如果在使用電池供電,如果有網絡活動同時開啓了網絡喚醒" 完全相悖

不會睡眠 或者自動喚醒連顯示器都亮了 是許多人遇到的bug

看看網上的反饋,os x的bug很多,而且不出現問題一切很好、出現問題多數情況下是無法解決的


情形2

全局設定

sudo pmset restoredefaults

sudo pmset -a womp 0 darkwakes 0 lessbright 0 halfdim 0 autopoweroff 1 standby 1


sudo pmset -a displaysleep 1 disksleep 0 sleep 0 autopoweroffdelay 7200 standbydelay 180000

有效 1分鐘後顯示器關閉,短期沒有再亮(時間不準,可能不是按秒計數的,最多誤差1分鐘而已)

sudo pmset -a displaysleep 0 disksleep 1 sleep 0 autopoweroffdelay 7200 standbydelay 180000

看不到效果 無法測試(能證實的就是在保持寫入的情況下沒有關閉)

sudo pmset -a displaysleep 0 disksleep 1 sleep 1 autopoweroffdelay 7200 standbydelay 180000

無效 等了3分鐘還沒有睡眠

sudo pmset -a displaysleep 1 disksleep 1 sleep 1 autopoweroffdelay 7200 standbydelay 180000

有效 1分鐘後顯示器關閉,2分鐘後測試腳本停止,Sleep至少持續3分鐘 未出現自動喚醒(然後被手動喚醒)

sudo pmset -a displaysleep 1 disksleep 2 sleep 1 autopoweroffdelay 7200 standbydelay 180000

有效 1分鐘後顯示器關閉,2分鐘後測試腳本停止,Sleep至少持續3分鐘 未出現自動喚醒(然後被手動喚醒)

sudo pmset -a displaysleep 1 disksleep 1 sleep 3 autopoweroffdelay 7200 standbydelay 180000

有效 1分鐘後顯示器關閉,4分鐘後測試腳本停止,Sleep至少持續3分鐘 未出現自動喚醒(然後被手動喚醒)

sudo pmset -a displaysleep 1 disksleep 1 sleep 1 autopoweroffdelay 180 standbydelay 180000

看不到poweroff效果 可能無效 因爲如果筆記本電腦要進入待機模式,則其必須使用電池電量供電,且沒有任何外部連接(如以太網、USB、Thunderbolt、SD 卡、顯示器、藍牙等)。

sudo pmset -a displaysleep 1 disksleep 1 sleep 0 autopoweroffdelay 180 standbydelay 180000

無效

sudo pmset -a displaysleep 1 disksleep 1 sleep 0 autopoweroffdelay 120 standbydelay 180000

  sudo pmset sleepnow

sleep有效,poweroff看不到效果

sudo pmset -a displaysleep 1 disksleep 1 sleep 0 autopoweroffdelay 120 standbydelay 180000

  合蓋子

sleep有效,poweroff應該是無效,測試腳本顯示沒有出現之前情形1的4小時一次喚醒動作(又是一bug,同樣的合蓋子,沒有出現預期的poweroff喚醒一次)

sudo pmset -a displaysleep 1 disksleep 1 sleep 0 autopoweroffdelay 7200 standbydelay 120

  sudo pmset sleepnow

sleep有效,standby應該是無效,測試腳本顯示沒有出現喚醒動作


情形2的結論:

displaysleep 有效

disksleep 無法測試, 官網上聲明僅適用於外部連接的機械驅動器

sleep 淺睡眠模式,必須在前兩者已經sleep纔有效,時間從顯示器sleep之後再開始計時,sleep時立即寫hibernatefile

poweroff 深睡眠模式

standby 深睡眠模式

兩個深睡眠模式, 筆記本電腦要進入待機模式,則其必須使用電池電量供電,且沒有任何外部連接(如以太網、USB、Thunderbolt、SD 卡、顯示器、藍牙等)。但是有bug的時候連着電源、usb設備、wifi也會執行poweroff,因爲mac os x的bug很多


面對bug很多無法解決的os x,勉爲其難的設置:

sudo pmset restoredefaults

先關閉網絡喚醒等,10分鐘關閉顯示器,開啓深睡眠模式

sudo pmset -a womp 0 darkwakes 0 lessbright 0 halfdim 0 displaysleep 10 disksleep 10 autopoweroff 1 standby 1

無操作2小時sleep,sleep後50小時standby,sleep後51小時poweroff,電池模式下爲21分鐘sleep

sudo pmset -a sleep 110 autopoweroffdelay 183600 standbydelay 180000

sudo pmset -b sleep 11


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章