当前位置:网站首页 > 更多 > 玩电脑 > 正文

[玩转系统] 在 Windows 中检查硬盘驱动器运行状况 (SMART)

作者:精品下载站 日期:2024-12-14 23:12:02 浏览:12 分类:玩电脑

在 Windows 中检查硬盘驱动器运行状况 (SMART)


当前的 Windows 版本通过 SMART 收集有关计算机中硬盘驱动器运行状况的信息,并可能在出现任何问题时通知用户。让我们看看有关硬盘驱动器物理问题的 Windows 通知是什么样的,以及如何使用内置工具(WMI 类、PowerShell 和命令提示符)获取有关磁盘运行状况的 SMART 信息。

大多数现代硬盘(包括HDD、SSD、NVMe SSD)都支持S.M.A.R.T(自我监控、分析和报告技术)。磁盘控制器估计磁盘的物理特性,Windows 可以通过 WMI 访问这些数据。

SMART 信息仅适用于本地物理磁盘(ATA/SATA 设备)。通过光纤通道、iSCSI、RAID 或共享驱动器连接的外部 LUN 不会报告 SMART 状态。

Windows 检测到硬盘问题

默认情况下,Windows 中启用逻辑磁盘管理器和诊断策略服务的磁盘监视。如果其中一个驱动器返回预测性故障状态,任务计划程序将运行 Microsoft-Windows-DiskDiagnosticResolver (\Microsoft\Windows\DiskDiagnostic) 任务,并显示以下错误消息:

Windows detected a hard disk problem
Back up your files immediately to prevent information loss, and then contact the computer manufacturer to determine if you need to repair the disk.

[玩转系统] 在 Windows 中检查硬盘驱动器运行状况 (SMART)

事件查看器日志中显示以下消息:

The driver has detected that device \Device\Harddisk1\DR1 has predicted that it will fail. Immediately back up your data and replace your hard disk drive. A failure may be imminent.
Windows Disk Diagnostic detected a S.M.A.R.T. fault on disk .......... (volumes E:\). This disk might fail; back up your computer now. All data on the hard disk, including files, documents, pictures, programs, and settings might be lost if your hard disk fails. To determine if the hard disk needs to be repaired or replaced, contact the manufacturer of your computer. If you can't back up (for example, you have no CDs or other backup media), you should shut down your computer and restart when you have backup media available. In the meantime, do not save any critical files to this disk.

预测性故障状态意味着磁盘特征之一(例如机械磨损)与参考值不匹配,并且可能会发生故障。

在这种情况下,建议将数据从磁盘备份到单独的介质。然后使用默认制造商 SMART 工具(或其他工具,如 CrystalDiskInfo)并使用 chkdsk 检查磁盘。

您可以使用单独的 GPO 选项磁盘诊断:配置执行级别显示或隐藏此消息,该选项位于 GPO 的管理模板 -> 系统 -> 故障排除和诊断 -> 磁盘诊断部分。

[玩转系统] 在 Windows 中检查硬盘驱动器运行状况 (SMART)

大多数情况下,第三方工具(如 CrystalDiskInfo、HDTune 等)用于获取有关 Windows 中磁盘运行状况的信息。这些程序提供了有关磁盘的大量信息。

[玩转系统] 在 Windows 中检查硬盘驱动器运行状况 (SMART)

例如,我可以获得SSD资源。主机写入总数的当前值为 507 GB。制造商保证我的 SSD 型号的最大写入资源 (TBW) 为 300 TB。因此磁盘磨损小于0.2%。该磁盘仅使用 108 小时。

通过 WMI 类和 PowerShell 检查硬盘的 SMART 属性

您可以使用Windows内置工具检查SMART磁盘数据。您可以通过控制面板(控制面板\系统和安全\安全和维护)查看有关计算机磁盘健康状况的信息。该部分还包含有关 Windows 错误报告服务状态的信息。

就我而言,磁盘正常,因为驱动器状态部分中有以下消息:

OK, All drives are working properly

[玩转系统] 在 Windows 中检查硬盘驱动器运行状况 (SMART)

如上所述,Windows 从磁盘收集 SMART 信息并允许使用 WMI 访问它。

必须在 BIOS/UEFI 设置中启用 SMART。

运行提升的命令提示符并使用以下命令获取所有磁盘的状态:

wmic diskdrive get status

[玩转系统] 在 Windows 中检查硬盘驱动器运行状况 (SMART)

在这种情况下,磁盘是正常的。否则,您将看到不良未知警告状态。

如果访问 WMI 时看到任何错误,请尝试修复 WMI 存储库。

您可以使用 MSStorageDriver_FailurePredictStatus WMI 类获取有关可能的硬盘驱动器故障的信息:

wmic /namespace:\root\wmi path MSStorageDriver_FailurePredictStatus

[玩转系统] 在 Windows 中检查硬盘驱动器运行状况 (SMART)

如果磁盘控制器未检测到任何磁盘问题,则 PredictFailure 值应为 FALSE

可以使用 PowerShell 查询同一类:

Get-WmiObject -namespace root\wmi -class MSStorageDriver_FailurePredictStatus

如果值为PredictFailure=True,请注意Reason参数中显示的错误代码。 PredictFailure 错误代码的含义取决于您的供应商。您可以在 wiki (https://en.wikipedia.org/wiki/S.M.A.R.T.#ATA_S.M.A.R.T._attributes) 中找到有关某些错误代码的信息。

您可以使用以下 PowerShell 命令获取某些可靠性计数器的值:

Get-Disk | foreach { $_ | Get-StorageReliabilityCounter | Format-List }

[玩转系统] 在 Windows 中检查硬盘驱动器运行状况 (SMART)

您只能显示有关某些 SMART 属性的信息:

Get-PhysicalDisk | Get-StorageReliabilityCounter | Select-Object -Property DeviceID, Wear, ReadErrorsTotal, ReadErrorsCorrected, WriteErrorsTotal, WriteErrorsUncorrected, Temperature, TemperatureMax | FT

此外,您还可以使用 Get-PhysicalDisk cmdlet 查看有关磁盘的一般信息:

$(Get-PhysicalDisk | Select *)[0]

[玩转系统] 在 Windows 中检查硬盘驱动器运行状况 (SMART)

之前我们展示了如何使用 Get-PhysicalDisk 获取有关 Windows Server S2D 中故障磁盘的信息并替换它:

Get-PhysicalDisk | Where-Object {$_.HealthStatus -ne 'Healthy'}

使用这些 WMI 类和 PowerShell cmdlet,您可以在用户计算机上配置磁盘运行状况数据收集,以主动跟踪其状态。您可以为监控系统(如 zabbix、nagios、icinga 等)创建警报,使用配置基线、PowerShell 期望状态配置 (DSC) 创建 SCCM 合规性报告,使用 PowerShell 远程处理(Invoke-Command cmdlet)从远程计算机查询 SMART 状态,或者使用您的方法。

您需要 登录账户 后才能发表评论

取消回复欢迎 发表评论:

关灯