检查目标硬盘的 APM 设置

通过 CrystalDiskInfosmartmontools 可以检查目标硬盘的 APM 设置是否过于激进

通过 CrystalDiskInfo 查看

check-apm-setting-in-crystaldiskinfo

如果 APM 的值为 “01h”,说明该硬盘的 APM 设置过于激进

如果 APM 的值为 “00h” 或其他较大的数值(如 “FEh”),则无需进行操作

通过 smartctltools 查看

注意:需使用管理员权限运行终端

扫描硬盘,输出中应包含目标硬盘,获取其设备名称(如 “/dev/sdb”)

smartctl.exe --scan

查看 APM 设置,替换 “/dev/sdX” 为目标硬盘

smartctl.exe -g apm /dev/sdX

如果输出类似 “APM level is: 1 (minimum power consumption with standby)”,说明该硬盘的 APM 设置过于激进

如果输出类似 “APM feature is: Disabled” 或 “APM level is: 254 (maximum performance)”,则无需进行操作

禁用 APM

通过注册表

请优先考虑通过注册表禁用 APM,若无效则使用后文的 smartmontools 方法

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services 下分别查看 iaStorACiaStorAVCiaStorV 几项,若其含有 Parameters\Device 项,则在 Device 项中新建 DWORD,名为 EnableAPM,值为 0

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\storahci 项中新建 DWORD,名为 EnableAPM,值为 0

设置完成后可能需要重启计算机以生效

通过 smartmontools

请优先考虑 通过注册表 禁用 APM

安装 smartmontools

下载链接:https://www.smartmontools.org/wiki/Download#InstalltheWindowspackage

推荐安装时使用 Extract files only 选项,仅解压出必要的程序(smartctl.exe 等)

install-smartmontools

设置计划任务

运行 taskschd.msc,在左侧 “任务计划程序库” 创建新文件夹

在创建的文件夹中创建基本任务

名称与描述随意填写

“触发器” 选择 计算机启动时

“操作” 选择 启动程序

“程序或脚本” 选择已安装的 smartctl.exe

“添加参数” 设置为 -s apm,off /dev/sdX(将 “/dev/sdX” 替换为目标硬盘)

成功创建任务后,右键其选择属性

点击 “更改用户或组”,输入 SYSTEM,点击 “检查名称” 并确定

(用户账户应变为 NT AUTHORITY\SYSTEM

启用 “使用最高权限运行”

最终设置应如下图所示:

scheduled-task-settings

右键运行一次设置的任务,若 “上次运行结果” 变为 “操作成功完成。(0x0)” 说明设置无误,此时通过 CrystalDiskInfo 或 smartmontools 进行检查应该可以看到目标硬盘的 APM 功能已被禁用

Categories: 系统管理

1 Comment

pap · 2020-03-04 at 21:33

好!

pap进行回复 取消回复

Avatar placeholder

您的电子邮箱地址不会被公开。 必填项已用*标注