SeaChest Utilities 工具,让你的硬盘功耗又低又长寿

SeaChest Utilities 希捷机械硬盘调优,让你的硬盘更快更省电



本文主要通过希捷官方提供的 SeaChest Utilities 工具,对希捷的机械硬盘进行调优以减少运行时功耗,并提高硬盘的寿命。

如果觉得本文对您有用,还请你留个赞留个关注!


前言

说到硬盘,现在大家可能更加注重固态硬盘。相比于固态硬盘,机械硬盘往往速度慢,而且声音大。但是机械硬盘的容量性价比,仍然是固态硬盘难以比肩的。

在不久前,笔者家中自行搭建了一台 All-in-one 的 nas 服务器,并且在机械硬盘的设置上遇到了棘手的性能问题。为了让硬盘能运行的快,同时又想要它尽可能的低功耗,笔者在这里做了不少功夫,也遇到了 APM 和 C1 门这样的问题。为了给后面的人一个提醒,笔者也写下此篇文章,记录自己的调优过程。


SeaChest Utilities

SeaChest Utilities 是希捷官方出的,专门针对希捷 Seagate 硬盘参数调整的命令行工具包。在这个工具包中,目前具有信息查看、硬盘测试、硬盘安全、SMART控制、硬盘格式化和硬盘清除等功能。

通过 SeaChest Utilities,我们可以做到许多普通的硬盘调整工具无法做到的事情,例如关闭希捷硬盘中的 EPC 功能等。如果读者对 Western Data 西数的硬盘比较熟悉的话,那么可以说 SeaChest Utilitilies 就相当于西数的 wdidle3。

SeaChest Utilities 的官方页面及安装页面:点击此处

下载并安装 SeaChest Utilities 的工具包,之后可以在桌面的快捷方式进入其命令行环境,或者在 windows 的管理员模式下将当前路径切换至安装目录下,再使用命令行操作。

目前的工具包中总共含有以下的工具:

工具名称功能
SeaChest_Basics基本状态设置
SeaChest_Configure其他设置
SeaChest_Erase硬盘清除
SeaChest_Firmware硬盘固件相关
SeaChest_GenericTests硬盘测试
SeaChest_Info硬盘信息
SeaChest_Lite轻量级的信息查询工具
SeaChest_NVMeNVMe相关
SeaChest_PowerControl硬盘能耗优化
SeaChest_Security硬盘安全相关
SeaChest_SMARTSMART相关

本文中只使用 SeaChest_PowerControl 工具对硬盘进行调整。

SeaChest_PowerControl 工具

Linux Usage
SeaChest_PowerControl [-d <sg_device>] {arguments} {options}

Linux 的例子

sudo SeaChest_PowerControl --scan
sudo SeaChest_PowerControl -d /dev/sg2 -i
sudo SeaChest_PowerControl -d /dev/sg1 --deviceInfo
sudo SeaChest_PowerControl -d /dev/sg3 --showEPCSettings
sudo SeaChest_PowerControl -d /dev/sg2 --idle_a 5000
sudo SeaChest_PowerControl -d /dev/sg1 --idle_b disable
sudo SeaChest_PowerControl -d /dev/sg3 --transitionPower standby_z
sudo SeaChest_PowerControl -d /dev/sg45 --idle_a 5000 --standby_z 30000 --idle_b enable --idle_c disable
Windows Usage(管理员模式)
SeaChest_PowerControl [-d <PD_device>] {arguments} {options}

Windows 的例子

SeaChest_PowerControl --scan
SeaChest_PowerControl -d PD0 -i
SeaChest_PowerControl -d PD1 --deviceInfo
SeaChest_PowerControl -d PD3 --showEPCSettings
SeaChest_PowerControl -d PD2 --idle_a 5000
SeaChest_PowerControl -d PD1 --idle_b disable
SeaChest_PowerControl -d PD3 --transitionPower standby_z
SeaChest_PowerControl -d PD45 --idle_a 5000 --standby_z 30000 --idle_b enable --idle_c disable
命令返回值

0 = No Error Found
1 = Error in command line options
2 = Invalid Device Handle or Missing Device Handle
3 = Operation Failure
4 = Operation not supported
5 = Operation Aborted
6 = File Path Not Found
7 = Cannot Open File
8 = File Already Exists
9 = Need Elevated Privileges
Anything else = unknown error

工具基本选项
	--echoCommandLine
		Echo the command line entered into the utility on the screen.

	--enableLegacyUSBPassthrough
		Only use this option on old USB or IEEE1394 (Firewire)
		products that do not otherwise work with the tool.
		This option will enable a trial and error method that
		attempts sending various ATA Identify commands through
		vendor specific means. Because of this, certain products
		that may respond in unintended ways since they may interpret
		these commands differently than the bridge chip the command
		was designed for.

	--forceATA
		Using this option will force the current drive to
		be treated as a ATA drive. Only ATA commands will
		be used to talk to the drive.

	--forceATADMA	(SATA Only)
		Using this option will force the tool to issue SAT
		commands to ATA device using the protocol set to DMA
		whenever possible (on DMA commands).
		This option can be combined with --forceATA

	--forceATAPIO	(SATA Only)
		Using this option will force the tool to issue PIO
		commands to ATA device when possible. This option can
		be combined with --forceATA

	--forceATAUDMA	(SATA Only)
		Using this option will force the tool to issue SAT
		commands to ATA device using the protocol set to UDMA
		whenever possible (on DMA commands).
		This option can be combined with --forceATA

	--forceSCSI
		Using this option will force the current drive to
		be treated as a SCSI drive. Only SCSI commands will
		be used to talk to the drive.

	-h, --help
		Show utility options and example usage (this output you see now)
		Please report bugs/suggestions to seaboard@seagate.com.
		Include the output of --version information in the email.

	--license
		Display the Seagate End User License Agreement (EULA).

	--modelMatch [model Number]
		Use this option to run on all drives matching the provided
		model number. This option will provide a closest match although
		an exact match is preferred. Ex: ST500 will match ST500LM0001

	--onlyFW [firmware revision]
		Use this option to run on all drives matching the provided
		firmware revision. This option will only do an exact match.

	--onlySeagate
		Use this option to match only Seagate drives for the options
		provided

	-q, --quiet
		Run SeaChest_PowerControl in quiet mode. This is the same as
		-v 0 or --verbose 0

	-v [0-4], --verbose [0 | 1 | 2 | 3 | 4]
		Show verbose information. Verbosity levels are:
		0 - quiet
		1 - default
		2 - command descriptions
		3 - command descriptions and values
		4 - command descriptions, values, and data buffers
		Example: -v 3 or --verbose 3

	-V, --version
		Show SeaChest_PowerControl version and copyright information & exit
工具参数
	-d, --device deviceHandle
		Use this option with most commands to specify the device
		handle on which to perform an operation. Example: /dev/sg?

	-F, --scanFlags [option list]
		Use this option to control the output from scan with the
		options listed below. Multiple options can be combined.
			ata - show only ATA (SATA) devices
			usb - show only USB devices
			scsi - show only SCSI (SAS) devices
			nvme - show only NVMe devices
			interfaceATA - show devices on an ATA interface
			interfaceUSB - show devices on a USB interface
			interfaceSCSI - show devices on a SCSI or SAS interface
			interfaceNVME = show devices on an NVMe interface
			sd - show sd device handles
			sgtosd - show the sd and sg device handle mapping

	-i, --deviceInfo
		Show information and features for the storage device

	-s, --scan
		Scan the system and list all storage devices with logical
		/dev/sg? assignments. Shows model, serial and firmware
		numbers.  If your device is not listed on a scan  immediately
		after booting, then wait 10 seconds and run it again.

	-S, --Scan
		This option is the same as --scan or -s,
		however it will also perform a low level rescan to pick up
		other devices. This low level rescan may wake devices from low
		power states and may cause the OS to re-enumerate them.
		Use this option when a device is plugged in and not discovered in
		a normal scan.
		NOTE: A low-level rescan may not be available on all interfaces or
		all OSs. The low-level rescan is not guaranteed to find additional
		devices in the system when the device is unable to come to a ready state.

	--SATInfo
		Displays SATA device information on any interface
		using both SCSI Inquiry / VPD / Log reported data
		(translated according to SAT) and the ATA Identify / Log
		reported data.

	--testUnitReady
		Issues a SCSI Test Unit Ready command and displays the
		status. If the drive is not ready, the sense key, asc,
		ascq, and fru will be displayed and a human readable
		translation from the SPC spec will be displayed if one
		is available.

	--checkPowerMode
		Get the current power mode of a drive.
		On SCSI devices, this will only work if the drive has
		transitioned from active state to another state.

	--EPCfeature [enable | disable]
		Enables or disables Extended Power Conditions (EPC) support for
		devices. To disable EPC use --EPCfeature disable. Note that the
		EPC Feature Set is not supported on all devices.
		Use --deviceInfo option to see if EPC is supported.

		WARNING: The EPC settings may affect all LUNs/namespaces for devices
		         with multiple logical units or namespaces.

	--idle_a [ enable | disable | default | timerValueMilliseconds ]
		Use this setting to change the EPC Idle_A power mode settings.
		    enable  - enable the power state
		    disable - disable the power state
		    default - restore default settings for this power state
		    timerValue - number of milliseconds to set for the timer
		                 used in this power state. If a timer is provided
		                 the state will also be enabled, if not already.
		                 EPC spec timers are set in 100 millisecond increments.
		                 Timers will be truncated to fit 100 millisecond increments.

		WARNING: EPC Settings may affect all LUNs/namespaces for devices
		         with multiple logical units or namespaces.

	--idle_b [ enable | disable | default | timerValueMilliseconds ]
		Use this setting to change the EPC Idle_B power mode settings.
		    enable  - enable the power state
		    disable - disable the power state
		    default - restore default settings for this power state
		    timerValue - number of milliseconds to set for the timer
		                 used in this power state. If a timer is provided
		                 the state will also be enabled, if not already.
		                 EPC spec timers are set in 100 millisecond increments.
		                 Timers will be truncated to fit 100 millisecond increments.

		WARNING: EPC Settings may affect all LUNs/namespaces for devices
		         with multiple logical units or namespaces.

	--idle_c [ enable | disable | default | timerValueMilliseconds ]
		Use this setting to change the EPC Idle_C power mode settings.
		    enable  - enable the power state
		    disable - disable the power state
		    default - restore default settings for this power state
		    timerValue - number of milliseconds to set for the timer
		                 used in this power state. If a timer is provided
		                 the state will also be enabled, if not already.
		                 EPC spec timers are set in 100 millisecond increments.
		                 Timers will be truncated to fit 100 millisecond increments.

		WARNING: EPC Settings may affect all LUNs/namespaces for devices
		         with multiple logical units or namespaces.

	--powerMeasurementMode [all | 5 | 12]	(Seagate Only)
		Use this option along with --requestPowerMeasurement to specify
		which sources to measure power on for the requested time.
		 all - measure all power sources
		 5   - measure only the 5v power
		 12  - measure only the 12v power

	--requestPowerMeasurement [seconds to perform measurement]	(Seagate Only)
		This option is used to specify a time to perform a power
		measurement for. The minimum measurement time is 22 seconds
		and the maximum is 65535 seconds. If a time less than 22 seconds
		is provided, 22 seconds will be used by the drive. A value greater
		than 65535 will result in error.
		Use the --powerMeasurementMode option to specify which mode to measure.

	--powerBalanceFeature [ info | enable | disable ]	 (Seagate Only)
		Use this option to see the state of the Seagate Power Balance
		feature or to change its state.
		Seagate's PowerBalance feature will adjust drive performance during
		random operations to reduce power consumption of the drive.
		  info - will dump the state of the Power Balance feature on the screen
		  enable - use this to enable Power Balance
		  disable - use this to disable Power Balance
		Note: While this feature is available on some SAS products,
		it is recommended that the --setPowerConsumption option is
		used instead since it allows more levels of control.
		This option and the --setPowerConsumption option are incompatible
		because they use the same mode page fields (1Ah-01h).

		WARNING: Seagate Power Balance may affect all LUNs/namespaces for devices
		         with multiple logical units or namespaces.

	--showEPCSettings
		Use this option to show the current EPC settings on the screen.
		Only drives supporting the EPC feature will show this data and
		only supported power conditions will be shown.

	--showPowerTelemetry	(Seagate Only)
		Use this option to show the power telemetry data from
		a Seagate drive that supports the power telemetry feature
		If a measurement was not previously requested, this will show
		free-running mode data from the last 10 minutes.
		If this option is provided while a measurement is still
		in progress, this will show all data that is currently available
		Use the --requestPowerMeasurement option to request a power
		measurement with a set time window.

		NOTE: Power measurements are for the full device, not individual
		      logical units. All logical units will be measured for this data.

	--spinDown
		Removes power to the disk drive motor with the Standby Immediate
		command. Use this before moving a hard disk drive. The drive
		will spin back up if the operating system selects the drive.
		This means that an active drive will not stay spun down.

		WARNING: Spindown may affect all LUNs/namespaces for devices
		         with multiple logical units or namespaces.

	--standby [ enable | disable | default | timerValueMilliseconds ] 
		(Some settings are SAS only)
		Use this setting to change the standby power mode settings.
		NOTE: This is the legacy standby timer before EPC drives.
		      If this is used on an EPC drive, this will modify
		      the standby_z power state and timer values.
		    enable  - enable the power state	(SAS Only)
		    disable - disable the power state	(SAS Only)
		    default - restore default settings for this power state	(SAS Only)
		    timerValue - number of milliseconds to set for the timer
		                 used in this power state. If a timer is provided
		                 the state will also be enabled, if not already.
		                 Spec timers are set in 100 millisecond increments.
		                 Timers will be truncated to fit 100 millisecond increments.

		ATA drives can only change the standby timer, not disable it.
		On ATA drives, the standby timer set by this command is volatile
		and drive defaults are restored on next power cycle.

		WARNING: EPC Settings may affect all LUNs/namespaces for devices
		         with multiple logical units or namespaces.

	--standby_y [ enable | disable | default | timerValueMilliseconds ]
		Use this setting to change the EPC Standby_Y power mode settings.
		    enable  - enable the power state
		    disable - disable the power state
		    default - restore default settings for this power state
		    timerValue - number of milliseconds to set for the timer
		                 used in this power state. If a timer is provided
		                 the state will also be enabled, if not already.
		                 EPC spec timers are set in 100 millisecond increments.
		                 Timers will be truncated to fit 100 millisecond increments.

		WARNING: EPC Settings may affect all LUNs/namespaces for devices
		         with multiple logical units or namespaces.

	--standby_z [ enable | disable | default | timerValueMilliseconds ]
		Use this setting to change the EPC Standby_Z power mode settings.
		    enable  - enable the power state
		    disable - disable the power state
		    default - restore default settings for this power state
		    timerValue - number of milliseconds to set for the timer
		                 used in this power state. If a timer is provided
		                 the state will also be enabled, if not already.
		                 EPC spec timers are set in 100 millisecond increments.
		                 Timers will be truncated to fit 100 millisecond increments.

		WARNING: EPC Settings may affect all LUNs/namespaces for devices
		         with multiple logical units or namespaces.

	--transitionPower [active | idle | idleUnload | standby | idle_a | idle_b | idle_c 
			| standby_y | standby_z | sleep]
		Use this option to transition the drive to a specific power state.
		EPC and legacy power states are supported. EPC states are only available
		on devices supporting the EPC feature.
		Supported power states:
		  active
		  idle - idle mode (legacy mode equivalent to idle_a on EPC)
		  idleUnload - same as above, but heads are unloaded. This may not
		               be supported on all devices.
		  standby - standby mode (legacy mode equivalent to standby_z on EPC)
		  idle_a - EPC idle mode
		  idle_b - EPC lower power idle mode
		  idle_c - EPC lowest power idle mode
		  standby_y - EPC low power standby mode
		  standby_z - EPC lowest power standby mode
		  sleep - Sleep state. WARNING: This requires a reset to wake from.
		          Once in this state, this tool cannot wake the drive on its own.
		          The OS or adapter will need to issue a reset, 
		          which may or may not happen.

		WARNING: Transitioning power modes may affect all LUNs/namespaces
		         for devices with multiple logical units or namespaces.


仅限 SATA 的参数
	--disableAPM   (SATA Only)
		Use this option to disable the APM feature on a device.
		Note: This command is optional and some device may not
		      disabling the APM feature.

	--sataDAPSfeature [info | enable | disable]	(SATA Only)
		Use this option to enable or disable the SATA Device Automatic
		Partial To Slumber Transitions (DAPS) feature. Use the "info"
		option to see the current state of the DIPM feature on the device.
		The use of this feature requires that the DIPM feature is enabled.
		NOTE: Please ensure that the host adapter/controller/driver can
		handle this before enabling it, otherwise the drive link may
		go down and the device will not be able to communicate.

	--sataDIPMfeature [info | enable | disable]	(SATA Only)
		Use this option to enable or disable the SATA Device Initiated
		Power Management (DIPM) feature. Use the "info" option to see
		the current state of the DIPM feature on the device.
		NOTE: Please ensure that the host adapter/controller/driver can
		handle this before enabling it, otherwise the drive link may
		go down and the device will not be able to communicate.

	--setAPMLevel [1 - 254]   (SATA Only)
		Use this option to set the APM level of a device.
		Valid values are between 1 and 254.
		    1 = Minimum power consumption with standby mode
		    2-127 = Intermediate power management with standby
		        mode
		    128 = Minimum power consumption without standby mode
		    129-253 = Intermediate power management without
		        standby mode
		    254 = Maximum Performance.

	--showAPMLevel   (SATA Only)
		Use this option to show the current APM level of a device
仅限 SAS 的参数
	--idle [ enable | disable | default | timerValueMilliseconds ]	(SAS Only)
		Use this setting to change the idle power mode settings.
		NOTE: This is the legacy idle timer before EPC drives.
		      If this is used on an EPC drive, this will modify
		      the idle_a power state and timer values.
		    enable  - enable the power state
		    disable - disable the power state
		    default - restore default settings for this power state
		    timerValue - number of milliseconds to set for the timer
		                 used in this power state. If a timer is provided
		                 the state will also be enabled, if not already.
		                 Spec timers are set in 100 millisecond increments.
		                 Timers will be truncated to fit 100 millisecond increments.

		This is only available on SAS/SCSI drives as ATA drives did not
		have a separate configurable idle timer.

		WARNING: EPC Settings may affect all LUNs/namespaces for devices
		         with multiple logical units or namespaces.

	--sasPhy [phy number] (SAS Only)
		Use this option to specify a specific phy to use
		with another option that uses a phy identifier value.
		Some tool options will assume all SAS Phys when this
		option is not present. Others will produce an error when
		a specific phy is needed for an operation.
		Use the -i option to learn more about the supported phys.

	--sasPhyPartial [info | enable | disable] (SAS Only)
		Use this option to enable or disable the partial phy power
		condition. This is from the enhanced phy control mode page.
		Use the --sasPhy option to specify an individual phy,
		otherwise this will be changed on all phys.
		WARNING: Configuring this setting may cause the drive to be
		undetectable by other hardware if this power condition is not
		supported by a controller or expander.

		WARNING: Changing SAS Phy partial may affect all LUNs/namespaces for devices
		         with multiple logical units or namespaces.

	--sasPhySlumber [info | enable | disable] (SAS Only)
		Use this option to enable or disable the slumber phy power
		condition. This is from the enhanced phy control mode page.
		Use the --sasPhy option to specify an individual phy,
		otherwise this will be changed on all phys.
		WARNING: Configuring this setting may cause the drive to be
		undetectable by other hardware if this power condition is not
		supported by a controller or expander.

		WARNING: Changing SAS Phy slumber may affect all LUNs/namespaces for devices
		         with multiple logical units or namespaces.

	--setPowerConsumption [default | highest | intermediate | lowest | watt value]	
		(SAS Only) (Seagate Only)
		This option will set the power consumption rate of
		the device to the value input.
		Options:
		-default - sets the device back to default settings
		-highest - sets the active level to "highest"
		-intermediate - sets the active level to "intermediate"
		-lowest - sets the active level to "lowest"
		-watt value - sets the device to a nearest watt value
		less than or equal to the value entered.
		Power consumption watt values are listed with the
		--showPowerConsumption command line option.

	--showPowerConsumption	(SAS Only)
		This option will show the power consumption
		rates supported by the device and the current power
		consumption rate of the device. Use a supported watt value
		with the --setPowerConsumption option to set the
		power consumption to that value.
仅限 NVMe 的参数
	--transitionPowerState [new power state]	(NVMe Only)
		Use this option to transition to a specific power state.
		HINT:
		  Use --deviceInfo to show number of supported states

个人优化过程

查看硬盘

在进行操作前,需要先 scan 一下,获得目前的硬盘及其 Handle:

> SeaChest_PowerControl_x64_windows.exe --scan
Vendor   Handle       Model Number            Serial Number          FwRev
SATA     PD0          ST16000NM001G-2KK103    ZL2G57KM               SN02
SATA     PD1          ST16000NM001G-2KK103    ZL2FMG93               SN02
SATA     PD2          J.ZAO 3 SERIES 2.5 INCH 240GB SATA SSD MFM307T000750          V4.15.0
NVMe     PD3          SAMSUNG MZVL21T0HCLR-00B00 S676NF0T505944         GXA7601Q

例如此处笔者有4个硬盘,之后我们会以 PD0 这个硬盘为例进行调整。

调整 APM

APM 又称 Advanced Power Management。大多数时候,APM 能起到自动管理电源的能力,因此如果你没有特殊需求的话,实际上不需要太管这个选项。

但是这又得提一下C1门事件,所谓 C1 门就是在各大硬盘信息查看软件中能看到的 SMART 信息的 C1 项,也叫 Load/Unload Cycle Count,记录着硬盘磁头的归位次数。通常而言每个硬盘的这个商家质保上限是 600K 次,对于正常使用的硬盘而言是足够了。但是在硬盘出现诡异状况时,或者是设置不当时,由于磁头频繁归位,不仅降低了硬盘的性能,也减少了磁头的寿命,因此两头不讨好。

在 SeaChest_PowerControl 中,我们可以使用 --disableAPM 参数关闭 APM 功能,或者使用 --setAPMLevel 参数调整 APM 的等级,并用 --showAPMLevel 查看硬盘的 APM 等级。

更改硬盘 EPC 策略

在希捷的一些大硬盘中,通常使用了 Seagate PowerChoice 功能(中文文档),启用了 EPC(Extended Power Conditions)。EPC 功能简单来说,就是能使硬盘在不同状况下,切换工作模式,以减小功耗。

目前大多数希捷硬盘所支持的 EPC 选项如下:

EPC Mode描述
Idle_A禁用多数伺服系统,减少处理器和通道功耗;磁盘全速 (7200RPM) 转动
Idle_B禁用多数伺服系统,减少处理器和通道功耗;磁头卸载到硬盘斜坡;磁盘全速 (7200RPM) 转动
Idle_C/Standby_Y(仅 SAS)禁用多数伺服系统,减少处理器和通道功耗;磁头卸载到硬盘斜坡;硬盘速度降至较低 RPM(降低的 RPM)
Standby_Z磁头卸载到硬盘斜坡;硬盘马达停转;硬盘仍可对非磁碟访问主机命令作出响应。

通常来说,希捷的硬盘初始只会启用 Idle_A 和 Idle_B 阶段,但是对于一些长时间无访问的硬盘,例如备份硬盘和负载较低的场景等,则最好启用 Idle_C 和 Standby_Z 的模式。

在开始调优前,先查看硬盘的 EPC 状况:

> SeaChest_PowerControl_x64_windows.exe -d PD0 --showEPCSettings
===EPC Settings===
        * = timer is enabled
        C column = Changeable
        S column = Savable
        All times are in 100 milliseconds

Name       Current Timer Default Timer Saved Timer   Recovery Time C S
Idle A     *1            *1            *1            1             Y Y
Idle B     *1200         *1200         *1200         4             Y Y
Idle C     0              6000         0             20            Y Y
Standby Z  0              9000         0             110           Y Y

可见,初始时候只有 Idle_A 和 Idle_B 是启用的,注意到命令中的时间是以 100ms(0.1s)为单位的,结合 Seagate PowerChoice 的文档,可知对我的硬盘,各个 EPC 模式的在硬盘无读写后的进入时间为:

  • Idle A:瞬时
  • Idle B:2 分钟
  • Idle C:未开启,默认为 10 分钟
  • Standby Z:未开启,默认为 15 分钟

为降低功耗,同时考虑到我可能有一部分定时任务,我选择将 Idle B 阶段设为 15 分钟,Idle C 阶段设为半小时,Standby Z 阶段设为一小时,命令如下:

SeaChest_PowerControl_x64_windows.exe -d PD0 --idle_b 900000
SeaChest_PowerControl_x64_windows.exe -d PD0 --idle_c 1800000
SeaChest_PowerControl_x64_windows.exe -d PD0 --standby_z 3600000

然后再查看一下当前设置,看是否成功:

> SeaChest_PowerControl_x64_windows.exe -d PD0 --showEPCSettings
===EPC Settings===
        * = timer is enabled
        C column = Changeable
        S column = Savable
        All times are in 100 milliseconds

Name       Current Timer Default Timer Saved Timer   Recovery Time C S
Idle A     *1            *1            *1            1             Y Y
Idle B     *9000         *1200         *9000         4             Y Y
Idle C     *18000         6000         *18000        20            Y Y
Standby Z  *36000         9000         *36000        110           Y Y

大功告成!这样子在硬盘限制的时候,功率就会大大减小咯!

如果想查看当前硬盘的状况,可以使用下面的命令:

> SeaChest_PowerControl_x64_windows.exe -d PD0 --checkPowerMode
Device is in the PM1: Idle state and the device is in the Idle_a power condition

可见此时硬盘位于 Idle A 模式。

PowerBalance 模式改善随机读写

希捷的一些高级产品中可能会支持 PowerBalance 模式,据其官方所说,此模式能提高硬盘的随机读写能力,并且减少随机读写时的功耗。但是据网友反应,这个模式下虽然随机读写能力提升,但是顺序读写能力将大幅下降,因此不建议开启。

有需要的读者可以通过 --powerBalanceFeature 选项开启。


总结

这篇文章简要的介绍了 SeaChest Utilities 中的 PowerControl 功能,通过此功能能减少硬盘的功耗,增加硬盘的寿命。

本文是笔者在捣腾家用 NAS 服务器后的总结文章,如果您觉得此文章对你有用,还请你点个赞留个评论,之后我将更新一期使用 SSD 固态硬盘来为 HDD 机械硬盘做读写缓存层的文章,以弥补 HDD 随机读写能力不足的缺陷,还请各位关注!

  • 3
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 6
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

林地宁宁

谢谢你给宁宁打米哦!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值