由於有時os x系統sleep的時候會自動喚醒,隔一會再sleep,隔一會再自動喚醒,不斷的切斷硬件電源、再接通電源,等於一個夜裏就重啓100屢次,mac的壽命可想而知網絡
因而有了下面的研究、參數的測試、推薦的設置less
Apple公司默認設定以下:ide
10分鐘後關閉顯示器、硬盤測試
1分鐘後sleepspa
sleep 4小時後進入poweroffhibernate
sleep 3小時後進入standbyrest
那麼使用系統設置裏的Energy Saver和pmset命令的區別在哪?ip
pmset modifies the same file that System Preferences Energy Saver modifies.內存
autopoweroff,man裏有說明it
the system will write a hibernation p_w_picpath 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 p_w_picpath 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