C#を使用して、コンピューターにハードディスクRAIDがあるかどうかを確認できますか?WMIは、コンピューター上のハードディスクの数のみを知ることができます。コンピュータがレイドを持っているかどうかを知ることができるキーワードはありません。
1 に答える
一般的に言って、いいえ。
Windowsは、「ダイナミックディスク」と呼ばれるソフトウェアRAIDの実装を提供しますが、一般的には使用されていません。
民生用のマシンやラップトップがRAIDを使用する場合、通常はマザーボードのチップセットにRAIDコントローラーが組み込まれています。サーバーやワークステーションでは、専用のアドインカード(LSI、Adaptecなど)によって提供されることが多く、バックアップバッテリーを備えた大容量の不揮発性キャッシュなどの追加機能を提供し、コンピューターを外部SANに接続できます。または直接接続ストレージシステム(たとえば、大量のケーブルで接続されたHDDでいっぱいのラック-これはeSATAではありません)。
どちらの場合も、ハードウェアRAIDコントローラーはRAIDボリュームを汎用ボリュームとしてOSに提示します。OSはコントローラーを使用するためにドライバーを必要としますが、ドライバーがWMIや仮想ディスクサービスなどを使用してRAIDステータスを照会するために必要なメタデータを提供するという保証はありません。これは、私が運用しているすべてのDell PowerEdgeサーバーに当てはまります。これらのサーバーには、Windowsとまったく統合されていない独自のRAID管理システムがあります(実際、WindowsServerがディスクキャッシングについて不平を言うのを止めることはできません。設定)。
しかし、質問があります。ユーザーがRAIDボリュームを使用しているかどうかを気にするのはなぜですか。たとえば、誰かがRAID0を使用している可能性があります。これは、保護がゼロです(パフォーマンスが向上するだけです)。
コントローラ名を既知のRAIDコントローラのデータベースと照合することで、RAIDの存在を検出できますが、定期的なメンテナンスが必要になります。