HD-IDLE(8)
πΈ NAME πΈ
hd-idle β bestie, it's the utility that spins down your idle hard disks so they can finally take a nap π€
β¨ SYNOPSIS β¨
hd-idle [options]
π¦ DESCRIPTION π¦
okay so hd-idle is a utility program for spinning down external disks after a period of idle time. the whole reason it exists? most external IDE disk enclosures literally don't support setting the IDE idle timer, so you need a program like hd-idle to spin down idle disks automatically. it's giving "fine, I'll do it myself" π
β οΈ a word of caution, and I mean this with my whole chest: hard disks don't like spinning up too often. laptop disks are more robust in this respect than desktop disks, but if you set your disks to spin down after a few seconds you may damage the disk over time due to the stress the spin-up causes on the spindle motor and bearings π it seems that manufacturers recommend a minimum idle time of 3-5 minutes, and the default in hd-idle is 10 minutes. so likeβ¦ don't be impatient with your disk, she's doing her best π«Ά
π OPTIONS π
-aname β set device name of disks for subsequent idle-time parameters (-i). this parameter is optional in the sense that there's a default entry for all disks which are not named otherwise by using this parameter. this can also be a symlink (e.g./dev/disk/by-uuid/...) π-iidle_time β idle time in seconds for the currently named disk(s) (-a<name>) or for all disks. setting this value to"0"will never spin down the disk(s). zero means she stays awake forever, no cap π-ccommand_type β api call to stop the device. possible values are"scsi"(the default value) and"ata".-ppower_condition β power condition to send with the issued SCSI START STOP UNIT command. possible values are"0-15"(inclusive). the default value of"0"works fine for disks accessible via the SCSI layer (USB, IEEE1394, ...), but it will *NOT* work as intended with real SCSI / SAS disks π a stopped SAS disk will not start up automatically on access, but requires a startup command for reactivation. useful values for SAS disks are"2"for idle and"3"for standby. write that down π-ssymlink_policy β set the policy to resolve symlinks for devices. if set to"0", symlinks are resolve only on start. if set to"1", symlinks are also resolved on runtime until success. by default symlinks are only resolve on start. if the symlink doesn't resolve to a device, the default configuration will be applied.-llogfile β name of logfile (written only after a disk has spun up). please note that this option might cause the disk which holds the logfile to spin up just because another disk had some activity π¬ this option should not be used on systems with more than one disk except for tuning purposes. on single-disk systems, this option should not cause any additional spinups.-tdisk β spin-down the specified disk immediately and exit. it can be used in combination with-cto specify the command type. immediate. no waiting. bye girl π-dβ debug mode. it will print debugging info to stdout/stderr (/var/log/syslogif started as withsystemctl).-hβ print usage information.
π DISK SELECTION π
the parameter -a can be used to set a filter on the disk's device name (omit /dev/) for subsequent idle-time settings. the default is all disks:
- a
-ioption before the first-aoption will set the default idle time. - in order to disable spin-down of disks per default, and then re-enable spin-down on selected disks, set the default idle time to
0.
π EXAMPLE π
hd-idle -i 0 -a sda -i 300 -a sdb -i 1200
this example sets the default idle time to 0 (meaning hd-idle will never try to spin down a disk) and default "scsi" api command, then sets explicit idle times for disks which have the string "sda" or "sdb" in their device name. periodt β¨
π EXAMPLE π
hd-idle -i 0 -c ata -a sda -i 300 -a sdb -i 1200 -c scsi
this example sets the default idle time to 0 (meaning hd-idle will never try to spin down a disk) and default "ata" api command, then sets explicit idle times for disks which have the string "sda" or "sdb" in their device name and sets "sdb" to use "ata" api command.
the option -c allows to set the api call that sends the spindown command. possible values are "scsi" (the default value) or "ata". iykyk π
π«Ά AUTHOR π«Ά
hd-idle was written by Andoni del Olmo <andoni.delolmo@gmail> based on Chistian Mueller's <chris@mumac.de> work. iconic collaboration fr fr π
this manual page was written by Christian Mueller <chris@mumac.de>, for the Debian project (and may be used by others).
modified by Andoni del Olmo <andoni.delolmo@gmail.com>.
and that's the whole page bestie π
this one's from the System Manager's Manual, HD-IDLE(8) era, dated September 8, 2019 β go forth and let your disks rest, they've earned it πΈπ€
π¦ where this page comes from
- alpine 3.24: hd-idle-doc 1.22-r8 Β· GPL-3.0-only
- debian trixie: hd-idle 1.21+ds-1+b8 Β· GPL-3.0-or-later
- nixos 26.05: hd-idle 1.22
- nixpkgs unstable: hd-idle 1.22
- ubuntu questing: hd-idle 1.21+ds-1
- ubuntu resolute: hd-idle 1.21+ds-1build1 Β· GPL-3.0-or-later
- ubuntu stonking: hd-idle 1.21+ds-1build1 Β· GPL-3.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms