首页 > 系统相关 >windows下解决机械硬盘Load_Cycle_Count过高的问题

windows下解决机械硬盘Load_Cycle_Count过高的问题

时间:2023-01-25 12:44:23浏览次数:58  
标签:Load Count windows dev Windows hdparm 设置 APM

        通常,硬盘制造商规定的Load_Cycle_Count数目上限是600,000次,要是超过300,000次就会影响到正常的读写,再多的话就差不多要报废了。windows下通过修改高级电源设置虽然可以减慢Load_Cycle_Count增长的速度,但是对于我的硬盘似乎没什么用处,在连接电源的情况下,Load_Cycle_Count的增长速度还是超过了60/小时。

        于是就想使用linux下的hdparm软件的windows移植版来直接修改APM参数。


环境:Windows 10 21H2

下面的截图是在 Windows 8 截取的,Windows 10 下面基本上没啥变化,看着改就行了。

Load_Cycle_Count 增长情况数据

条件:

  1. 没有开启 hdparm 软件。
  2. 在 Windows 电源设置里面把 "在此时间后关闭硬盘" 设置为了 "0" 分钟(也就是 "从不" )。

硬盘: Seagate 希捷酷鱼 2TB SMR 硬盘 ST2000DM008-2FR102时间跨度:从 2022-05-18 到 2023-01-24,总共 251 天。
使用 Victoria 软件采集到的 SMART 数据,包括历史值:Load/unload cycle count: 37744 -> 103316Power-on time: 7637h -> 10123h
没有使用任何软件调整 APM 参数的时候,"Load/unload cycle count" 增长率: (103316 - 37744) / (10123h - 7637h) = 26.38/h
作为对比,用了 hdparm 一天后,发现 "Load/unload cycle count" 只因为冷启动(关机之后开机)增加了 2,热启动(重启)不会增加这个数值。

1 下载安装 hdparm

下载安装包,并安装

这个应该是软件的官网: http://disablehddapm.blogspot.com/

2 Windows 10, 7, 8 and Vista需要修改兼容性设置

原始文章见这里注意:在 Windows 10 21H2 上测试发现,只是使用管理员权限运行程序,不设置成 Windows XP SP3 兼容模式的话,程序运行会报错。所以下面的步骤不能省略。

2.1 找到hdparam.exe文件,在兼容性设置中点击更改所有用户设置



2.2 如图所示进行

3 禁用掉hdparm安装后自带的设置apm的启动项

经过测试,这个启动项在睡眠和休眠恢复后解锁用户账户,并不会自动运行。而且它运行时会有烦人的提示信息。就直接删除掉,改用我下面提供的方法来自动修改APM好了。删除 C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp\Enable HDD APM (for max performance).lnk

4 找到正确的磁盘编号

hdparm使用Unix的方法表示磁盘。/dev/sda表示第一个sata设备,/dev/sdb表示第二个sata设备,以此类推。/dev/hda表示第一个IDE设备,/dev/hdb表示第二个IDE设备。可以依次运行hdparm -i /dev/sda, hdparm -i /dev/sdb,然后查看 Model=  后面的数据是否正确来检查这是不是你要设置的硬盘。

5 创建bat脚本

注意:经过测试,在 "任务计划程序" 里面创建直接调用 hdparm.exe 的任务,会执行失败。估计是这个程序依赖 cmd.exe 提供的终端的一些特性。所以创建这个 cmd 脚本是不能省略的。
echo off
hdparm -B 254 /dev/sda
将/dev/sda替换为第四步中找到的正确的磁盘编号将上述脚本保存到 C:\Program Files (x86)\hdparm\enable sda apm max performance.cmd

6 创建计划任务

6.1 打开 "任务计划程序"6.2 在 "操作" 菜单中点击 "创建任务"6.3 在弹出来的窗口的"常规"选项卡中,设置名称为apm,安全选项中选择以“SYSTEM”账户运行,并勾选使用最高权限运行,配置选择“Windows 10”
6.4 在“触发器”选项卡中,添加两个触发器,如下图所示



6.5 在“操作”选项卡中,新建一个操作,如下图所示。操作类型为启动程序,程序或脚本填写   "enable sda apm max performance.cmd"  注意包括双引号,起始于填写   C:\Program Files (x86)\hdparm\

6.6 如下图所示设置条件选项卡

6.7 如下图所示设置“设置”选项卡

7 测试设置是否生效

在 Windows 10 21H2 下面,`hdparm -I /dev/sda` 命令已经没法正确检测 `Advanced power management level` 信息了,必须使用第三方软件来检测设置是否生效。比如可以使用 "Crystal Disk Info",在 "菜单栏 - 功能 - 高级设置 - AAM/APM 控制" 里面,应该能看到 APM 的值被改成了 "FEh"。
测试下,在下面的情况下是否会正确调整 APM 参数:
  • 睡眠后重新唤醒
  • 重启。重启就是关机+开机,所以不用单独测试冷启动的场景。
  • 休眠后唤醒。如果你用到休眠功能的话,也测试下。现在 Windows 10 系统默认不提供休眠的选项了。

现在不管使用电池还是连接电源,Load_Cycle_Count都不会疯涨了。

标签:Load,Count,windows,dev,Windows,hdparm,设置,APM
From: https://www.cnblogs.com/cmicat/p/17066850.html

相关文章

  • 【Windows】笔记本查看电池报告
    ✨笔记本查看电池报告可以使用如下命令生成电池报告powercfg/batteryreport使用浏览器打开生成的html文件即可查看关于此设备详细的电池报告默认保存在用户目录下,保......
  • 【Windows】VMware Workstation 不可恢复错误 (vcpu-1)解决方案
    ✨报错提示✨解决方案查看log并无头绪,通过搜索引擎寻求解决方案此问题网络上有较多解决方案这里推荐最好的解决方案是安装VMwareWorkstationPro16或者更高版本......
  • windows 常用快捷键
    复制ctrl+c粘贴ctrl+v全选ctrl+a裁剪ctrl+x撤销ctrl+z保存ctrl+s关闭窗口alt+f4永久删除shift+delete远行windows+r打开文件管理windows+......
  • CSharp: Lazy Load Pattern in donet core 6
     usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Text;usingSystem.Threading.Tasks;namespaceGeovin.Du.DuLazyLoad.DuGhost......
  • Windows11系统下配置JAVA环境变量(JDK-19版本)
    JDK下载1、访问oracle官网https://www.oracle.com/2、点击导航条中的Resources,点击DeveloperDownlads进入3、继续点击Java进入4、继续点击Java(JDK)for......
  • 微软将于1月31日停止销售Windows 10线上下载版
    微软将在本月晚些时候取消Windows10家庭版和专业版的线上下载渠道的销售。这些下载包括Windows10的许可证密钥(激活和使用下载的必要条件),这些内容还会在微软于2025年10月1......
  • Windows 设置显示亮度代码【msdn】
    ​​GetPhysicalMonitorsFromHMONITORfunction​​Microsoftcode:HMONITORhMonitor=NULL;DWORDcPhysicalMonitors;LPPHYSICAL_MONITORpPhysicalMonitors=NULL;//Ge......
  • CountdownEvent
    CountdownEventSystem.Threading.CountdownEventisasynchronizationprimitivethatunblocksitswaitingthreadsafterithasbeensignaledacertainnumberof......
  • 【Windows】应用软件注册表位置
    ✨应用软件注册表位置搜索注册表编辑器或者regedit在注册表编辑器中,定位到HKEY_CURRENT_USER\Software大部分用户安装的应用软件注册表都在这个地方可以根据软件名......
  • POJ--2386 Lake Counting(DFS)
    记录0:332023-1-24http://poj.org/problem?id=3617reference:《挑战程序设计竞赛(第2版)》2.2.3p43DescriptionFJisabouttotakehisN(1≤N≤2,000)cows......