Hard drive sleep

To conserve energy, hard disk and optical drives are designed to spin-down after a specific period of inactivity. This is usually referred to as hard drive sleep, but the technical term is Standby mode.

In Standby mode, a hard disk drive is in a state of low energy consumption and its platters have ceased to spin. It is awaiting a read or write instruction — such as opening or saving a file — at which time the drive will spin-up its platters — wake up and enter Active mode — to perform the operation. Some drives take many seconds to spin up and switch from Standby to Active mode.

If you access a disk that is in Standby mode, such as by opening or saving a file, you may see the spinning wait cursor — aka the Spinning Beach Ball of Death (SBBOD) — while its platters spin-up and the disk switches to Active mode.

One might think that de-selecting Put the hard disk(s) to sleep when possible in Energy Saver preferences would prevent hard disks from ever sleeping. This actually depends on the version of Mac OS X you are using.

Energy Saver preferences are a Graphical User Interface (GUI) to the pmset Terminal command, used to modify power management settings. The disksleep argument of pmset specifies the minutes of inactivity after which the hard drive will sleep, i.e. enter Standby mode. [1]

When you select Put the hard disk(s) to sleep when possible in Energy Saver preferences, behind the scenes a pmset command is issued with the argument disksleep 10 where 10 indicates ten minutes of inactivity. In other words, the drive will enter Standby mode after ten minutes of inactivity.

When Put the hard disk(s) to sleep when possible is deselected in Energy Saver preferences, the value of the disksleep argument depends on the version of Mac OS X:

Mac OS X Version: disksleep argument:
Mac OS X 10.6 or later disksleep 0
Mac OS X 10.5 or earlier

disksleep 180

Here 0 means never and 180 indicates 180 minutes — three hours — of inactivity.

In Mac OS X 10.6 and later, this means that the hard drive will not spin down unless the Mac itself either enters idle sleep or is put into sleep mode.

In Mac OS X 10.5 and earlier, the hard drive will spin down after three hours of inactivity, even if Put the hard disk(s) to sleep when possible is deselected. This option works in this way to assure computer (idle) sleep works as expected in these earlier versions of Mac OS X. [2] To prevent hard drive sleep via Energy Saver preferences in these versions of Mac OS X, one must deselect Put the hard disk(s) to sleep when possible and set computer sleep (Put the computer to sleep when it is inactive for) to Never.

Another undocumented aspect of Put the hard disk(s) to sleep when possible is that this option generally applies only to the startup disk. Non-startup hard disk drives — external FireWire® or USB® drives or additional drives installed in a Mac desktop — may ignore this setting. Consequently, you may see the SBBOD when accessing a non-startup drive, despite having deselected Put the hard disk(s) to sleep when possible, for two reasons.

First, under Mac OS X 10.5 and earlier, deselecting Put the hard disk(s) to sleep when possible will still result in non-startup drives spinning down after three hours of inactivity.

Second, some non-startup drives simply ignore the setting of Put the hard disk(s) to sleep when possible and spin down on their own schedule. This appears to be a function of either the drive itself or, in the case of external drives, the firmware or chipset employed in the drive's enclosure. In such a case the drive's Standby behavior cannot be changed. One can contact the manufacturer of the drive or enclosure to see if a firmware update is available to improve its cooperation with Mac OS X power management.

Power management in Mac OS X, such as hard drive sleep, is complex. Readers wishing to learn more about this subject should consult the "Managing Power" chapter of the Apple® Developer Connection document I/O Kit Fundamentals.

Additional details about hard drive sleep are addressed in the "Hard Drive Sleep" chapter of our book, Troubleshooting Mac OS X.

Notes

[1] In Mac OS X 10.4 and later, disksleep replaced spindown as the pmset argument specifying the minutes of inactivity before hard drive sleep in Mac OS X 10.3 and earlier.

[2] This was documented in the source code for pmset at that time. In Mac OS X 10.5 and earlier, it is technically possible to use the pmset command to set disksleep 0 while setting the sleep argument — governing idle sleep — to a non-zero value. However, the pmset command will issue a warning that System sleep (idle sleep) may not behave as expected. For example, the following command sets hard drive sleep to never (disksleep 0) and System sleep to occur after 20 minutes of inactivity (sleep 20):

sudo pmset -a disksleep 0 sleep 20

Issuing that command in Terminal under Mac OS X 10.5 and earlier results in the alert highlighted in the following screen shot:

Did you find this FAQ helpful? You will find a wealth of additional advice for preventing or resolving Mac OS X problems in Dr. Smoke's book, Troubleshooting Mac® OS X.
Use of this site signifies your agreement to the terms of use.