详解Mac睡眠模式设置

原文链接:http://www.insanelymac.com/forum/index.php?showtopic=281945

需要说明的是,首先这篇文章是针对已经能够成功睡眠并唤醒的用户
如果你的睡眠目前还存有各式各样的问题,那么这篇文章可能并不是你现阶段最需要的
当然在下面,我也会提及到文中的一点或许会使你本不能睡眠的机器能够成功睡眠

检查现用设置

打开终端后,首先要做的便是确定你的Mac OS目前正在使用的睡眠模式,以防你需要设置回去

你可以通过Unix指令 pmset 来观察和更改睡眠模式

查看当前睡眠模式设置,在终端输入以下指令:

  1. pmset -g | grep hibernatemode

复制代码

你应该在终端中看到类似如下的结果:

  1. $ pmset -g | grep hibernatemodehibernatemode 3

复制代码

好的,现在我们就能知道你的机器正处于模式3

多亏Dashboard中一个十分方便的小插件 Deep Sleep 的说明书

我们能够正确的分别出各个睡眠模式的特点:

0-老式睡眠模式
睡眠期间内存加电,禁用safe sleep(安全睡眠),超快速唤醒

1-休眠模式

内存中的数据将写入到磁盘上,系统在所谓的“睡眠”时将完全关闭
因为需要读取先前保存在硬盘中的内存数据,所以唤醒较慢

3-睡眠模式(2005年秋季之后机器默认采用的)

睡眠过程中,内存保持通电状态,同时内存数据在进入睡眠模式之前同样要写入到硬盘

万一没有外接电源并且电池也完全没电了的话,系统将自动进入休眠模式

5-和模式1一样

但这是为了那些使用安全虚拟内存的用户  System Preferences -> Security(系统设置-安全)

7-和模式3一样

但同样是为了那些使用安全虚拟内存的用户

既然你已经知道自己目前所处的模式,那么做个记录吧

你也可以用下面的指令,一步到位:

  1. sudo pmset -g | grep hibernatemode > ~/Desktop/current_mode.txt

复制代码

这个指令会将pmset命令的结果除了最后的模式值其他的全部删除掉

然后将结果导出到桌面上名为current_mode.txt的文本文件

以防将来需要,保存好这个文件

注意:

在这里我是故意如此谨慎的

事实上,除非你曾经捣鼓过这个设置,不然的话你的Mac不是在模式0就是3或者7

如果你的是模式0的话,这个小提示对你就无所谓了,因为你的Mac仍然使用的是老式睡眠

保存一个存有3或7数字值的文本文件确实有些过了

但是至少将来你不会在纠结于初始的模式到底是3还是7了

改变睡眠模式设置

要改变睡眠模式,你又需要使用pmset指令了,还需要加上变量以及相对应的你想要改变的值

所以如果你想要回到老式睡眠模式(从上面可以知道是模式0),输入下列指令:

  1. sudo pmset -a hibernatemode 0

复制代码

按下回车,将会需要输入你的密码

输完之后回车,你的睡眠模式就更改完成了

如果你想使用原来的设置,用保存在current_mode.txt里面的值替代上述指令的“0”

当然,这也意味着你也可以设置你的机器直接进入休眠模式,方法就是最后的数值从0改为1

我发现了一个更简单的方法,那就是使用上文提及到的Deep Sleep插件

这个插件将会返回它在休眠模式之前的值,这也就是说

你可以使用这个插件进入休眠同时关闭盖子

(笔记本啦@[email protected])也能进入正常的睡眠模式

需要注意的是,上面的改动并不需要重启生效

释放一些磁盘空间

如果你的机器之前的设置是3或者7并且你已经设置了使用老式睡眠模式,你可以继续下一步:

释放在你改变睡眠模式之前睡眠时用于保存系统内存备份的那部分磁盘空间

在终端中输入如下两条指令,按下回车输入密码即可

  1. cd /var/vm
  2. sudo rm sleepimage

复制代码

如果你回到了新式睡眠模式

这个睡眠镜像文件(sleepimage)将会在你执行sudo pmset指令的时候自动创建

一执行指令就会创建,而不是第一次将机器进入睡眠模式的时候

总结

注明:以下"我"均指原文作者



个人来说,我认为新式睡眠更好,我也将我的机器设置为这个模式

但如果你更喜欢老式睡眠,你也已经知道如何设置了

是的,这确实需要在终端之路上进行一趟旅程

但是一旦当你决定踏上了旅程,你就会发现其实它也没有想象中的那么困难

p.H:

在读原文作者这篇帖子之前,我曾经详细查阅过pmset指令

所以对原文作者的内容,算是已经有一定了解了

下面给大家几点直观的使用感觉,比上述文字要直白许多

模式0,相比与其他的模式最大的区别就是进入睡眠极快

可以说是1秒钟之内,我的笔记本感觉就很直观了

我的系统默认的是模式3,点击睡眠之后,能够看到硬盘灯狂闪

原因上文有叙述,简单说就是把内存数据写入硬盘

所以要过个七八秒之后,才能看到电源灯呼吸闪烁

相较之下,模式0瞬间就看到电源灯呼吸闪烁,进入睡眠状态

而关于文章中提及的释放磁盘空间

我的内存是8G的,所以我特意进行了测试

执行前后,系统可用空间增加了8G多一点

实际上应该就是8G整,不过涉及到进制的问题,会有一些出入

插句题外话,windows同样有类似的操作方法,能够释放系统盘的空间(大小等于你的内存大小)

另外,我发现我的睡眠模式默认设置的是模式3

如果改成模式5的话,睡眠之后,短时间内没问题

但是可能过一段时间,系统会自动断电

完全断电的那种,开机就是那种正常的开机,没有任何唤醒

因为上文提到牵涉到虚拟内存,而我是关闭了Mac的虚拟内存

所以可能黑果对模式5和7的支持并不是太好,或者是因为我关闭了虚拟内存的缘故

除此之外,有的机器可能采用系统默认的模式3,5,7或1无法睡眠

但是改用了模式0之后,能够正常睡眠

当然这并不是通用的方法,但有可能

它会让你原本不能睡眠的机器能够很好地支持睡眠

综上,个人还是比较喜欢模式0

时间: 2024-10-13 00:51:30

详解Mac睡眠模式设置的相关文章

(5.2)uboot详解——省电模式(番外)

(5.2)uboot详解--省电模式(番外) 这篇文章将对uboot的省电模式进行分析,这里介绍的内容与uboot的启动其实关系不大,如果关心uboot的启动过程,可以跳过这节以及后面的小节,直接到第6章. 省电模式和cpu的工作模式(异常)其实关系也不大,省电模式主要是依靠时钟来分类的,因为外设的工作必须要时钟,当停止给外设提供时钟的时候,相应的外设也会停止工作,所以省电管理就是根据控制是否给相应的设备提供时钟或电源来达到节电的目的. ARM有四中节电模式: 普通模式:这种模式下,会给所有的外

SynchronousQueue原理详解-非公平模式

SynchronousQueue原理详解-非公平模式 开篇 说明:本文分析采用的是jdk1.8 约定:下面内容中Ref-xxx代表的是引用地址,引用对应的节点 前面已经讲解了公平模式的内容,今天来讲解下关于非公平模式下的SynchronousQueue是如何进行工作的,在源码分析的时候,先来简单看一下非公平模式的简单原理,它采用的栈这种FILO先进后出的方式进行非公平处理,它内部有三种状态,分别是REQUEST,DATA,FULFILLING,其中REQUEST代表的数据请求的操作也就是take

java多线程同步以及线程间通信详解&消费者生产者模式&死锁&Thread.join()(多线程编程之二)

本篇我们将讨论以下知识点: 1.线程同步问题的产生 什么是线程同步问题,我们先来看一段卖票系统的代码,然后再分析这个问题: [java] view plain copy print? package com.zejian.test; /** * @author zejian * @time 2016年3月12日 下午2:55:42 * @decrition 模拟卖票线程 */ public class Ticket implements Runnable { //当前拥有的票数 private 

Spark 在yarn上运行模式详解:cluster模式和client模式

1.    官方文档 http://spark.apache.org/docs/latest/running-on-yarn.html 2.    配置安装 2.1.安装hadoop:需要安装HDFS模块和YARN模块,HDFS必须安装,spark运行时要把jar包存放到HDFS上. 2.2.安装Spark:解压Spark安装程序到一台服务器上,修改spark-env.sh配置文件,spark程序将作为YARN的客户端用于提交任务 export JAVA_HOME=/usr/local/jdk1

col命令详解及sqlplus格式设置

实例: set linesize 200 col name format A30 col value format A20 select name,value from v$parameter where name='processes'; 设置sqlplus模式显示总行数(当前连接生效): show pagesize; --查看目前的pagesize set pagesize 300; --设置pagesize为300 设置sqlplus模式显示行宽度(当前连接生效): show linesi

Oracle-归档日志详解(运行模式、分类)

一.Oracle日志分类 分三大类: Alert log files--警报日志,Trace files--跟踪日志(用户和进程)和            redo log 重做日志(记录数据库的更改). 本文主要关注Oracle的重做日志. 重做日志分为在线重做日志和归档重做日志.    online Redo log files--在线重做日志,又称联机重做日志,指Oracle以SQL脚本的形式实时记录数据库的数据更新,换句话说,实时保存已执行的SQL脚本到在线日志文件中(按特定的格式). 

详解state状态模式及在C++设计模式编程中的使用实例

原文地址:http://www.jb51.net/article/80713.htm 这篇文章主要介绍了state状态模式及在C++设计模式编程中的使用实例,在设计模式中策略用来处理算法变化,而状态则是透明地处理状态变化,需要的朋友可以参考下 每个人.事物在不同的状态下会有不同表现(动作),而一个状态又会在不同的表现下转移到下一个不同的状态(State).最简单的一个生活中的例子就是:地铁入口处,如果你放入正确的地铁票,门就会打开让你通过.在出口处也是验票,如果正确你就可以 ok,否则就不让你通

详解:Linux Chrony 设置服务器集群同步时间

导读: Chrony是一个开源的自由软件,像CentOS 7或基于RHEL 7操作系统,已经是默认服务,默认配置文件在 /etc/chrony.conf 它能保持系统时间与时间服务器(NTP)同步,让时间始终保持同步.相对于NTP时间同步软件,占据很大优势.其用法也很简单. Chrony有两个核心组件,分别是:chronyd:是守护进程,主要用于调整内核中运行的系统时间和时间服务器同步.它确定计算机增减时间的比率,并对此进行调整补偿.chronyc:提供一个用户界面,用于监控性能并进行多样化的配

详解NXP?Cortex-M3加密设置

加密芯片是对内部集成了各类对称与非对称算法,自身具有极高安全等级,可以保证内部储存的密钥和信息数据不被非法读取与篡改的一类安全芯片的通称.使用到安全加密芯片的产品:银行加密U盾.刻录机.加密硬盘.PC锁.手机.智能门锁.公交地铁等.在使用到安全加密芯片这些产品中,储存在安全芯片里面的数据会进行高可靠性加密处理,使得这些数据很难被非法窃取. 如天嵌i.MX6UL核心板,CPU自带安全启动防窃取机制,可以使客户面向高度安全的应用进行设计,适用于交易类设备.embedsky.com下面说说NXP芯片的