让你的Mac睡的更香最近Mac的睡眠让我感到不太舒服,明明已经合上盖子拔掉电源,可是它还在熬着夜!不好好睡觉真让人生气!

所以得好好调教一下,让他该睡觉的时候老老实实趴下,该干活的时候就得全力以赴工作。

Mac是怎么睡觉的Mac有两种睡觉有两个阶段,一开始是睡眠,在一定条件之后会从睡眠进入休眠。这两种睡觉方式就像我们人的小憩和睡大觉。小憩醒得快,睡大觉醒的就会慢一些。

在长时间无操作,或者把Macbook的盖子合上时以及手动点击进入睡眠时则进入睡眠状态,在睡眠状态下数据存储在内存中,此时的系统可以被快速唤醒,快速恢复到睡眠前的状态。

如果睡眠持续了一段时间之后,Mac会根据设定进入更深一层的休眠状态,此时Mac要根据你的配置来决定要不要把内存中的数据写入到磁盘中,然后会放弃对内存及设备的大部分供电,达到更加节省电量的目的。如果在休眠模式下唤醒,则Mac会将保存在硬盘中的数据再重新写入到内存之中并恢复程序运行,这样的话耗时比较长,速度比较慢。

pmset工具Apple 提供了一个工具叫pmset来管理Apple 设备的电源选项。pmset这个工具的名字来源于 Power Manager Setting(pmset) ,通过调整macos的睡眠计划,可以让Mac睡的更香。

pmset用法sudo pmset [-选项] <参数>

实例:

pmset -g cap: 查看当前供电方式下可以调节的参数

pmset -g custom : 查看全部供电方式下的电源参数信息

pmset restoredefaults : 还原自定义的设置

pmset常用选项

pmset -a : 全局调整睡眠电源计划

pmset -c : 仅调整外部供电时睡眠计划

pmset -b : 仅调整电池供电时睡眠计划

pmset -g : 查看当前供电方式下的睡眠计划

常用参数

sleep: 睡眠计时器,进入睡眠所需要的时间

hibernatemode: 睡眠模式

hibernatemode = 0 将数据保存在内存中持续为内存供电 非笔记本机器默认配置

hibernatemode = 3 safe sleep模式,数据保存在内存中并写入内存镜像到硬盘中备份。笔记本默认模式

hibernatemode = 25 将内存镜像直接写入到硬盘中

standby: 休眠计时器

highstandbythreshold: highstandbythreshold(电池剩余电量百分比)它是standbydelay模式选择阈值,默认 50% 电量。

高于阈值,采用standbydelayhigh计算时间。

低于阈值,采用standbydelaylow计算时间。

gpuswitch: 这个参数用来管理独立显卡的选择

gpuswitch=0 只使用集成显卡

gpuswitch=1 只使用独立显卡

gpuswitch=2 自动切换显卡

其他参数

lidwake:开盖时是否唤醒

tcpkeepalive:合盖时是否保存网络连接

displaysleep:屏幕休眠时间

disksleep:硬盘休眠时间

acwake:被同一 iCloud ID 下的设备唤醒

我的个人参数外部供电环境下:外部供电睡眠设置使用的是默认参数。

电池供电:

12345678910111213141516171819202122232425262728// 20分钟后睡眠sudo pmset -b sleep 20// 休眠模式使用3,在给内存供电的同时写入内存的镜像备份到磁盘中sudo pmset -b hibernatemode 3// 显示器15分钟后关闭sudo pmset -b displaysleep 15// 硬盘30分钟后休眠sudo pmset -b disksleep 30// 休眠后断网sudo pmset -b tcpkeepalive 0// 开盖唤醒sudo pmset -b lidwake 1// 关闭被同一 iCloud 下的设备唤醒sudo pmset -b acwake 0// gpuswitch 0 在使用电池的情况下只使用核心显卡sudo pmset -b gpuswitch 0// 在电池剩余电量高于75%的情况时,休眠计时器设定为2小时。低于75%的情况下1小时后进入休眠。sudo pmset -b highstandbythreshold 75sudo pmset -b standbydelayhigh 7200sudo pmset -b standbydelaylow 3600

参考文章:https://sspai.com/post/61379