我的目标是在电池和交流电上产生以下行为:
- 合上盖子或闲置几分钟后,计算机就会照常进入睡眠状态。
- 如果计算机处于睡眠状态 5 分钟,就会进入休眠状态。
让它休眠的原因是为了提高安全性(以及使用电池时的电池寿命)。(有关为什么这会提高安全性的信息,请参阅这里。)但我不想让它立即进入休眠状态,这样当我合上盖子走到下一个房间时,我就可以唤醒它,而不必等待 RAM 内容从磁盘加载。
当笔记本电脑使用电池供电时,我成功地可靠地产生了这种行为,但当使用交流电源时,它永远不会休眠。我在 pmset 中使用以下设置来实现这一点:
- 将休眠模式设置为 3
- 将待机设置为 1
- 将 standbydelay 设置为 300(以秒为单位,因此意味着 5 分钟)
这会导致机器立即存储睡眠图像但让 RAM 保持通电状态;然后在 300 秒后待机启动并导致机器关闭 RAM 的电源。不过,当交流电连接时,最后一部分不会发生。因此,似乎有某种原因导致待机在使用交流电时以不同的方式运行。
这两个设置不会出现在电池 pmset 配置文件中,但会出现在 AC 配置文件中:
womp 0
networkoversleep 0
唯一的其他区别是:
gpuswitch 0 (1 when on battery)
disksleep 10 (5 when on battery)
以下是两者的完整 pmset 配置文件:
Battery Power:
lidwake 1
autopoweroff 0
autopoweroffdelay 0
standbydelay 300
standby 1
ttyskeepawake 1
hibernatemode 3
darkwakes 0
gpuswitch 1
hibernatefile /var/vm/sleepimage
displaysleep 10
sleep 15
acwake 0
halfdim 1
lessbright 1
disksleep 5
SleepServices 0
AC Power:
lidwake 1
autopoweroff 0
autopoweroffdelay 0
standbydelay 300
standby 1
ttyskeepawake 1
hibernatemode 3
darkwakes 0
gpuswitch 0
hibernatefile /var/vm/sleepimage
womp 0
displaysleep 10
networkoversleep 0
sleep 15
acwake 0
halfdim 1
disksleep 10
SleepServices 0
我尝试使用 autopoweroff 和 autopoweroffdelay,因为当机器连接到电源时该设置似乎是相关的,但是当我到目前为止这样做时,它似乎不会导致正常睡眠以外的任何事情。
非常感谢!
MacBook Pro(Retina,15 英寸,2013 年初),OS X Yosemite(10.10.1)
答案1
不幸的是,一旦 MBP 进入睡眠状态...它就无法唤醒进入休眠状态。最好的办法是简单地禁用合上盖子时的睡眠功能,并在空闲 XXX 时间后启用休眠功能。当盖子合上时,功耗会显著下降...(背光本身就消耗相当多的电量)