2014年底买的一块2TB希捷机械硬盘ST2000DM001-1ER164,用了两年更换了主板、CPU等,后来出现开机不识别的情况,具体表现为:关机后开机,找不到硬盘,就进入BIOS了,只要在BIOS状态下待机半分钟左右再重启,硬盘就会出现。进入系统后,重启(这个过程中主板对硬盘始终处于供电状态),也不会出现不识别硬盘的现象。就好像是硬盘或主板上某个电容坏了一样,刚开始给硬盘通电的N秒钟内电容未能充电到正常电压,所以硬盘无法正常工作,主板识别不出来,等过了N秒钟后,电容可以充电到正常电压了,硬盘才可以识别;重启的过程中因为硬盘没有断电,所以一直保持在可识别状态。
再后来又添加了一块固态硬盘SSD,开机从SSD启动,就免了每次浪费半钟在BIOS等待识别硬盘。但进入系统后机械硬盘依然不显示,还得手动到硬件管理器中刷新一下才行。于是想到用批处理+硬件扫描小工具自动刷新的方法。系统为Win7x64,从网上找了个decon.exe ,再在同目录下写个批处理文件:
@rem 把此批处理文件和devcon.exe放在一起并设置批处理文件为开机启动即可
@for /l %%i in (40,-1,1) do cls && @echo. && @echo %%i秒后扫描硬件... && @ping -n 2 127.1>nul
@cls
@echo.
devcon /rescan
@echo.
@echo 扫描完成.
@ping -n 3 127.1>nul