1

我可以使用 C# 来确认计算机是否有硬盘袭击吗?WMI 只能知道计算机上有多少个硬盘。没有关键字可以知道电脑有没有raid。

4

1 回答 1

5

一般来说,没有。

Windows 确实提供了一种软件 RAID 的实现,称为“动态磁盘”,但它并不常用。

当消费级机器和笔记本电脑使用 RAID 时,通常会在主板芯片组中内置 RAID 控制器。在服务器和工作站中,它通常由专用的附加卡(LSI、Adaptec 等)提供,它通常提供附加功能,例如带有备用电池的大型非易失性缓存,并且可以将计算机连接到外部 SAN或直接连接的存储系统(想想:一个装满硬盘的机架,用一根粗大的电缆连接——这不是 eSATA)。

在这两种情况下,硬件 RAID 控制器将 RAID 卷作为通用卷呈现给操作系统。操作系统确实需要驱动程序来使用控制器,但不能保证驱动程序提供必要的元数据来使用 WMI 或虚拟磁盘服务之类的东西查询 RAID 状态。我操作的所有戴尔 PowerEdge 服务器都是这种情况——它们有自己的 RAID 管理系统,根本没有与 Windows 集成(事实上,太糟糕了,我无法阻止 Windows Server 抱怨磁盘缓存设置)。

但我有一个问题:你为什么关心用户是否使用 RAID 卷?例如,有人可能正在使用 RAID0,它提供零保护(只是性能提升)。

您可以通过根据已知 RAID 控制器的数据库检查控制器名称来检测 RAID 的存在,但这需要定期维护。

于 2012-11-07T08:03:52.257 回答