8

I am trying to enable Windows-like hibernation (powering off the device) on an M1 Mac mini. Current power mode configuration of any Mac can be displayed with pmset -g command, and this command's output does not include a hibernatemode entry. I try to enable hibernation with sudo pmset -a hibernatemode 25 where 25 indicates power-off hibernation. Unfortunately this doesn't power the device off because the power light is still on when I put the device to sleep. Curiously enough, running pmset -g again still does not include a hibernatemode entry.

Is hibernation removed in new M1 Macs or macOS Big Sur? If not, what is the correct way to enable it?

3
  • 1
    Why is hibernation, as opposed to other forms of sleep, important on a desktop? Any reason you can't just shut it down?
    – benwiggy
    Commented Mar 19, 2021 at 22:16
  • I don't know if hibernate mode is removed on M1 Macs, but it is there for Intel Big Sur. Mode 25 (even if it were to work) has not been advised for many years and there are potential FileVault issues.
    – Gilby
    Commented Mar 19, 2021 at 22:54
  • The light is not a sleep indicator. It is a power on indicator. forums.macrumors.com/threads/…
    – Gilby
    Commented Mar 19, 2021 at 22:55

2 Answers 2

6

Hibernation on Mac m1 just released yesterday. Just update your mac to MacOS Big Sur 11.3 to enable hibernation.

You can see the change log here:

https://support.apple.com/en-us/HT211896

to enable it you can use this command:

sudo pmset -a hibernatemode 25

just for your information based on man pmset

SAFE SLEEP ARGUMENTS
     hibernatemode supports values of 0, 3, or 25. Whether or not a hibernation image gets written is also dependent on the values of standby
     and autopoweroff

     For example, on desktops that support standby a hibernation image will be written after the specified standbydelay time. To disable
     hibernation images completely, ensure hibernatemode standby and autopoweroff are all set to 0.

     hibernatemode = 0 by default on desktops. The system will not back memory up to persistent storage. The system must wake from the
     contents of memory; the system will lose context on power loss. This is, historically, plain old sleep.

     hibernatemode = 3 by default on portables. The system will store a copy of memory to persistent storage (the disk), and will power memory
     during sleep. The system will wake from memory, unless a power loss forces it to restore from hibernate image.

     hibernatemode = 25 is only settable via pmset. The system will store a copy of memory to persistent storage (the disk), and will remove
     power to memory. The system will restore from disk image. If you want "hibernation" - slower sleeps, slower wakes, and better battery
     life, you should use this setting.

     Please note that hibernatefile may only point to a file located on the root volume.

So by default, the hibernate mode for a MacBook is 3, other device(imac, mac mini) is 0.

Actually, 3 is safe mode and uses very low energy also wake up faster, my MacBook can live for weeks just using this mode. So I recommended staying in default mode.

3
  • How can I use your answer "to enable hibernation on M1 Mac"?
    – Mihai
    Commented Dec 12, 2022 at 10:04
  • @Mihai I updated my answer, hope that answers the question. Commented Dec 14, 2022 at 0:37
  • Hi, I tried issuing this command, but in the output of pmset -g there is still no hibernatemode. I am on an M1 Mac mini with Sonoma 14.5. Commented May 30 at 16:34
2

See the attached image to create a shorcut in the Shorcuts app and add a keyboard shorcut to run it. This can be done in the (i) Menu -> Details Tab

How to create a MacOS Hibernate Shortcut

SCRIPT UPDATE

# Stopping services conflicting with hibernate
pkill SIGSTOP AMPDeviceDiscoveryAgent
pkill SIGSTOP AMPDevicesAgent
tmutil stopbackup

# Change pmset settings
sudo pmset -a hibernatemode 25
sudo pmset -a ttyskeepawake 0
sudo pmset -a tcpkeepalive 0
sudo pmset -a womp 0
sudo pmset -a powernap 0
sudo pmset -a networkoversleep 0

# Wait for OS sync new settings
sleep 3

# Call hibernate process
pmset sleepnow
# Wait 30 sec or more for macOS to hibernate

# Stops execution and continues when waking up. 
sleep 15

# Set pmset hibernatemode back
sudo pmset -a hibernatemode 3

# Loading stopped services
launchctl start com.apple.AMPDevicesAgent
killall Finder

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .