admin管理员组

文章数量:1130349

debian/armbian 上硬盘休眠工具hdparm使用方法

查看硬盘是否支持写入缓存,有* (星号),表示支持

sudo hdparm -I /dev/sda | grep 'Write cache'

首先sudo hdparm -B /dev/sda查看硬盘是否支持高级电源管理(APM),只有支持APM的硬盘才能

debian@debian:~$ sudo hdparm -B /dev/sda

/dev/sda:
 APM_level      = 128

该值的取值范围为1~255,值越大,硬盘性能越高,其中255表示关闭硬盘/dev/sda的电源管理,254表示在开启电源管理下的最高性能,1表示最低的硬盘性能但最省电。
这个值在1 ~ 127区间时允许spin-down,在128 ~ 254这个区间则禁止spin-down。值越大性能越高,读写速度越快。
spin-down是指在闲置时挂起硬盘,停止转动,但是频繁的spin-down和spin-up会使硬盘寿命变短。

所以,即使你追求节能,减少发热量,也建议你将该值设为128,执行以下命令即可:

sudo hdparm -B 128 /dev/sda 

通过-S参数或/etc/hdparm.conf中设置spindown_time让硬盘自己控制相应时间不读写自动休眠
对于-S参数,测试发现使用的西数盘最少休眠延时时间是十分钟,希捷可以几秒钟。

机械硬盘‌:频繁启停会加速磁头臂机械磨损,建议设置15-30分钟空闲后休眠更合理。

debian@debian:~$ sudo hdparm -S 60 /dev/sda
 
/dev/sda:
 setting standby to 60 (5 minutes)

不支持-S参数的,可以用hdparm -y /dev/sda设置硬盘立即进入待机,还有一个hdparm -Y /dev/sda是让硬盘进入睡眠(进入工作状态需要发送reset命令,详见man hdparm),我们一般用待机就行了。使用hdparm -C /dev/sda查看硬盘状态(这里纠正下,此命令不会改变硬盘状态)。standby是待机,active是活动,sleep是睡眠。

debian@debian:~$ sudo hdparm -y /dev/sda1
 
/dev/sda:
 issuing standby command
 
 
debian@debian:~$ sudo hdparm -C /dev/sda
 
/dev/sda:
 drive state is:  standby

不支持APM的硬盘是否还可以使用hdparm设置进入低功耗模式呢,是可以的

在/etc/hdparm.conf中只要设置force_spindown_time倒计时时间就行了(不支持APM不要用spindown_time,详见cat /usr/share/doc/hdparm/README.Debian)

使用ls -l /dev/disk/by-id/命令可以查看硬盘的id

 ls -l /dev/disk/by-id/
total 0
lrwxrwxrwx 1 root root  9 Sep 26 19:41 ata-WDC_WD10JPVT-00A1YT0_WD-WXQ1C52H0000 -> ../../sda
lrwxrwxrwx 1 root root 10 Sep 26 19:43 ata-WDC_WD10JPVT-00A1YT0_WD-WXQ1C52H0000-part1 -> ../../sda1
nano hdparm.conf
  GNU nano 5.4                                                                hdparm.conf
# --security-unlock Unlock the drive's security
# security_unlock = PWD
# --security-set-pass Set security password
# security_pass = password
# --security-disable Disable drive locking
# security_disable
# --user-master Select password to use
# user-master = u
# --security-mode Set the security mode
# security_mode = h

## Blocks beginning with the keyword 'command_line' instead of a device
## identifier are not supported since the version 9.39-1 for backward
## compatibility by this version of hdparm. Options must be introduced
## by a correct device identifier instead, so that they will be applied
## when the device becomes available.

# Config examples:

#/dev/hda {
#       mult_sect_io = 16
#       write_cache = off
#       dma = on
#}

#/dev/disk/by-id/ata-WDC_WD10EFRX-68PJCN0_WD-WCC4J0998391 {
#        apm = 128
#        acoustic_management = 128
#        spindown_time = 240
#}

/dev/disk/by-id/ata-WDC_WD10JPVT-00A1YT0_WD-WXQ1C52H0000 {
        apm = 128
        spindown_time = 180
        write_cache = on
}

#/dev/cdroms/cdrom0 {
#       dma = on
#       interrupt_unmask = on
#       io32_support = 0
#}

大多数现代硬盘驱动器都具有减缓磁头移动速度以降低噪音的能力。-M参数是查看/设置(Get/set) Automatic Acoustic Management (AAM) 的。值如下:

0 (off)
128 (quiet)
254 (fast)

对应hdparm.conf项是acoustic_management 。介于128到254之间的值(0x80-0xFE)允许该属性,值越大声音越大,读写速度越快。

设置完hdparm.conf后需要重启服务生效,或重启机器也一样。hdparm重启服务的方法不同于一般的服务,官方说明是改用了udev,详见man hdparm.conf

sudo /usr/lib/pm-utils/power.d/95hdparm-apm resume

输出如下信息即可

/dev/sda:
 setting Advanced Power Management level to 0x80 (128)
 APM_level      = 128

/dev/sda:
 setting standby to 180 (15 minutes)

debian/armbian 上硬盘休眠工具hdparm使用方法

查看硬盘是否支持写入缓存,有* (星号),表示支持

sudo hdparm -I /dev/sda | grep 'Write cache'

首先sudo hdparm -B /dev/sda查看硬盘是否支持高级电源管理(APM),只有支持APM的硬盘才能

debian@debian:~$ sudo hdparm -B /dev/sda

/dev/sda:
 APM_level      = 128

该值的取值范围为1~255,值越大,硬盘性能越高,其中255表示关闭硬盘/dev/sda的电源管理,254表示在开启电源管理下的最高性能,1表示最低的硬盘性能但最省电。
这个值在1 ~ 127区间时允许spin-down,在128 ~ 254这个区间则禁止spin-down。值越大性能越高,读写速度越快。
spin-down是指在闲置时挂起硬盘,停止转动,但是频繁的spin-down和spin-up会使硬盘寿命变短。

所以,即使你追求节能,减少发热量,也建议你将该值设为128,执行以下命令即可:

sudo hdparm -B 128 /dev/sda 

通过-S参数或/etc/hdparm.conf中设置spindown_time让硬盘自己控制相应时间不读写自动休眠
对于-S参数,测试发现使用的西数盘最少休眠延时时间是十分钟,希捷可以几秒钟。

机械硬盘‌:频繁启停会加速磁头臂机械磨损,建议设置15-30分钟空闲后休眠更合理。

debian@debian:~$ sudo hdparm -S 60 /dev/sda
 
/dev/sda:
 setting standby to 60 (5 minutes)

不支持-S参数的,可以用hdparm -y /dev/sda设置硬盘立即进入待机,还有一个hdparm -Y /dev/sda是让硬盘进入睡眠(进入工作状态需要发送reset命令,详见man hdparm),我们一般用待机就行了。使用hdparm -C /dev/sda查看硬盘状态(这里纠正下,此命令不会改变硬盘状态)。standby是待机,active是活动,sleep是睡眠。

debian@debian:~$ sudo hdparm -y /dev/sda1
 
/dev/sda:
 issuing standby command
 
 
debian@debian:~$ sudo hdparm -C /dev/sda
 
/dev/sda:
 drive state is:  standby

不支持APM的硬盘是否还可以使用hdparm设置进入低功耗模式呢,是可以的

在/etc/hdparm.conf中只要设置force_spindown_time倒计时时间就行了(不支持APM不要用spindown_time,详见cat /usr/share/doc/hdparm/README.Debian)

使用ls -l /dev/disk/by-id/命令可以查看硬盘的id

 ls -l /dev/disk/by-id/
total 0
lrwxrwxrwx 1 root root  9 Sep 26 19:41 ata-WDC_WD10JPVT-00A1YT0_WD-WXQ1C52H0000 -> ../../sda
lrwxrwxrwx 1 root root 10 Sep 26 19:43 ata-WDC_WD10JPVT-00A1YT0_WD-WXQ1C52H0000-part1 -> ../../sda1
nano hdparm.conf
  GNU nano 5.4                                                                hdparm.conf
# --security-unlock Unlock the drive's security
# security_unlock = PWD
# --security-set-pass Set security password
# security_pass = password
# --security-disable Disable drive locking
# security_disable
# --user-master Select password to use
# user-master = u
# --security-mode Set the security mode
# security_mode = h

## Blocks beginning with the keyword 'command_line' instead of a device
## identifier are not supported since the version 9.39-1 for backward
## compatibility by this version of hdparm. Options must be introduced
## by a correct device identifier instead, so that they will be applied
## when the device becomes available.

# Config examples:

#/dev/hda {
#       mult_sect_io = 16
#       write_cache = off
#       dma = on
#}

#/dev/disk/by-id/ata-WDC_WD10EFRX-68PJCN0_WD-WCC4J0998391 {
#        apm = 128
#        acoustic_management = 128
#        spindown_time = 240
#}

/dev/disk/by-id/ata-WDC_WD10JPVT-00A1YT0_WD-WXQ1C52H0000 {
        apm = 128
        spindown_time = 180
        write_cache = on
}

#/dev/cdroms/cdrom0 {
#       dma = on
#       interrupt_unmask = on
#       io32_support = 0
#}

大多数现代硬盘驱动器都具有减缓磁头移动速度以降低噪音的能力。-M参数是查看/设置(Get/set) Automatic Acoustic Management (AAM) 的。值如下:

0 (off)
128 (quiet)
254 (fast)

对应hdparm.conf项是acoustic_management 。介于128到254之间的值(0x80-0xFE)允许该属性,值越大声音越大,读写速度越快。

设置完hdparm.conf后需要重启服务生效,或重启机器也一样。hdparm重启服务的方法不同于一般的服务,官方说明是改用了udev,详见man hdparm.conf

sudo /usr/lib/pm-utils/power.d/95hdparm-apm resume

输出如下信息即可

/dev/sda:
 setting Advanced Power Management level to 0x80 (128)
 APM_level      = 128

/dev/sda:
 setting standby to 180 (15 minutes)

本文标签: 使用方法硬盘工具debianArmbian