我如何监控硬盘是否/何时以及待机多长时间?
我有一台 Windows Server,它有一个 RAID5(软件)用于存储数据,还有另一个安装操作系统的常规磁盘。我想确保当没有读取数据时 RAID 进入待机状态(即,我目前不知道的后台任务不会访问驱动器并破坏其待机状态)。
理想情况下,我希望看到某种图表,其中 x 轴表示最近几个小时,y 轴表示磁盘状态(忙碌、空闲、待机)。
是否有可以实现此目的的工具,还是我需要自己编写代码?如果是这样,我可以通过命令行工具访问此信息吗?还是我需要深入了解 Windows API?
编辑:如果这样的工具可以记录哪个进程中断了待机,那当然会非常棒。
答案1
如果您只是希望能够查看窗口并查看磁盘是否正在被访问,资源监视器(可通过任务管理器访问)将让您查看哪些进程正在读取/写入哪些文件(从那里您可以看到文件位于哪个分区)。如果您希望记录它,我相信这应该可以通过在可靠性和性能监视器中创建日志来实现,尽管除了向您指出这个方向之外,我无法提供分步过程。
答案2
您可以使用 hdparm 的 Windows 端口查看/修改单个驱动器的电源状态。(hdparm -C)- Cygwin 包对我来说很好用。请注意,询问您的 RAID 是否处于待机状态(因为它在软件中)没有任何意义,只有组件磁盘才有意义。
使用特定于供应商的驱动工具可能会有更好的运气。
就漂亮的图片而言,性能监视器 -> LogicalDisk 提供程序非常灵活。
至于跟踪导致磁盘访问的程序,您可以使用类似 diskmon 的程序。
如果你能将所有这些整合到一个地方,我认为这将是一个非常酷的工具。