Amongst the complaints I recently shared about my MacBook Pro was its tendency to slip into a coma. A reader shared the suggestion to change the MacBook’s power management settings such that the contents of memory are not saved to disk on sleep.

I did so, and man, hallelujah! Well, sort of. While flying home, my first battery ran out of power, so I did my usual Powerbook routine of sleeping the notebook and swapping batteries. Took me about 10 seconds total. And, when I opened up the laptop — nothing. The notebook was powered down.

Now, with my Powerbook, that never happened. Upon re-opening, it powered back up beautifully. With the MacBook Pro, however, I would open it up and it would be off. But, when you hit the power button, the contents of memory would be reanimated from disk. And, if you were lucky, you’d get back to work in a few minutes.

After changing my power management settings, however, you guessed it! You lose suspend-to-disk for memory and for whatever reason, the MacBook does not keep the system in sleep for any fraction of a second when you swap batteries. Add these two factors up, my friends, and you get complete data loss.


There are some who say, “Nah nah nah, I always save my files before sleep, what kind of idiot are you?” Of course I saved my files before I swapped batteries, but man, I sure miss the good ol’ days of the Powerbook just working. If only it weren’t slow as molasses…

10 thoughts on “The Danger of Mucking with OS X Sleep

  1. dude, it’s time to leave the dark side behind. come join me on ubuntu. your expectations will be really low. so even though things may not be as nice as they are on osx, if you look at things from a relative point of view, your level of satisfaction will really be much higher. 🙂

  2. Nice, I didn’t notice this before. I repro’d it on my machine. Lame work-around: re-enable hibernate prior to swap, disable again afterwards.

  3. rentzch: I’ve been giving this setting a try:

    “sudo pmset -a hibernatemode 3”

    Apparently, it’s only supposed to enter Safe Sleep if the battery is really low, and use normal sleep otherwise. I haven’t paid attention as to whether or not that’s the case, but it seems to be working okay.

  4. eitan: I *despise* Linux based on past bad experiences. I’ll have to give Ubuntu a try one of these days, though — I keep hearing good things about it.

    But as far as I can figure, Linux seems to be for people who either (a) have a religious problem using closed-source software or (b) value their time less than their money.

    I don’t fit into either of those camps. I will gladly pay a premium for stuff that “just works” and delegate much of my operating system’s behavior to Steve’s creative whims than the collective wisdom of hundreds of different hackers throughout the globe.

  5. IMHO, Ubuntu fits pretty well into the “just works” category. You should give it a shot when the 6.06 release comes out in June,

  6. Why would you not plug in a laptop when switching batteries and not powering down first?

    I think your expectations are unreasonable, and there isn’t an OS out there that will handle this flawlessly.

  7. Dilbert: Why would I do it? Because it worked flawlessly on OS X on the PowerBook G4; I’ve done it dozens of times.

    Because Apple didn’t advertise that it made a change to this aspect of power management when they switched to the MacBooks, I’m not sure saying that my expectations are unreasonable is a fair statement.

  8. yep, welcome to PC land, where elegance, style and innovation takes a back seat to raw integer performance.

  9. I’m not sure why your PowerBook ever did this, unless it was set to hibernate every time, which to me is just a pain. I’d much rather have 3 second wake ups and live without being able to swap batteries.

    Of course, I’ve just had the battery fail in my MacBook, which does make it a real pain (’till I get to an Apple store to swap it (again!))

    So I found a solution. There is an excellent widget called Deep Sleep. I can now sleep my Mac normally by shutting the lid, or if I want to hibernate, I hit [F12] and click on the moon.

    The Tech Doctor

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s