hd-idle - spin down idle hard disks

NAME  SYNOPSIS  DESCRIPTION  OPTIONS  DISK SELECTION  EXAMPLE  EXAMPLE  AUTHOR 

NAME

hd-idle − spin down idle hard disks

SYNOPSIS

hd-idle [options]

DESCRIPTION

hd-idle is a utility program for spinning down external disks after a period of idle time. Since most external IDE disk enclosures don’t support setting the IDE idle timer, a program like hd-idle is required to spin down idle disks automatically.

A word of caution: 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, the default in hd-idle is 10 minutes.

OPTIONS

−a name

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/...)

−i idle_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).

−c command_type

Api call to stop the device. Possible values are "scsi" (default value) and "ata".

−p power_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.

−s symlink_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.

−l logfile

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.

−t disk

Spin-down the specified disk immediately and exit. It can be used in combination with −c to specify the command type.

−d

Debug mode. It will print debugging info to stdout/stderr (/var/log/syslog if started as with systemctl)

−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:

1)

A −i option before the first −a option will set the default idle time.

2)

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.

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".

AUTHOR

hd-idle was written by Andoni del Olmo <andoni.delolmo@gmail> based on Chistian Mueller’s <[email protected]> work.

This manual page was written by Christian Mueller <[email protected]>, for the Debian project (and may be used by others).

Modified by Andoni del Olmo <[email protected]>.


Updated 2024-01-29 - jenkler.se | uex.se