現在進行中のプロジェクトでは、総容量、フォームファクタ、SSDまたはHDD、RPM、インターフェイスタイプなど、システムにインストールされているすべての情報をインポートする必要があります。
たくさん検索しましたが、これを行うコマンドを見つけることができます。比較すると、Windowsには私の要件を満たすいくつかのアプリケーションがあることがわかりました。彼らはどうしたのですか?
注目を集めるために、Linuxにも同様のことがありますか?
これら2つのオペレーティングシステムは主にサーバーで使用されるため、コンピュータはハードウェア情報よりもハードウェア情報がより重要な役割を果たす必要があると思います。
答え1
diskinfo
Solaris 11を使用している場合は、新しいコマンドがユーザーの要件を満たしていることを確認することをお勧めします。
私はSolaris 8でほとんどの情報を得るためにカーネルを照会できることを知っています。 sysinternalsの本にデータを得るためのCコード(? - 10年前のメモリ損失)の本もあると考えてみてください。
ハードウェアによっては、ILOMまたはXSCFからこのデータを取得できます。 Ops Centerの使用を検討することもできます。
答え2
問題は、ディスクがこの情報を共有する意図があるかどうかです。調べるならSCSIプロトコル、これは多くの情報を提供しません。これに関連する3つの主要なコマンドは次のとおりです。
- 読書能力おそらく自明でしょう。ブロック数を提供します。
- 尋ねるベンダー名、シリアル番号などを提供します。
- ログ検出おそらく最も興味深いのは、現在の温度、使用統計など、さまざまなディスク関連情報ページを提供することです。ただし、多くのページがディスクでサポートされていません。
これら3つのコマンドは、下位レベルのコマンドを使用して実行できます。sg3_utils
したがってsg_readcap
、sg_inq
コマンドを使用してくださいsg_logs
。このパッケージはLinuxで提供され、Solaris 11.2+に付属しています。
しかし、実際のディスクを提供できるものを見ると、sg_logs
それほど多くないことがわかります。
root@calypso-sparc31:~# sg_logs -p 0x0 /dev/rdsk/c0t5000CCA01248AAE0d0s2
HITACHI H106060SDSUN600G A2B0
Supported log pages:
0x00 Supported log pages
0x02 Error counters (write)
0x03 Error counters (read)
0x05 Error counters (verify)
0x06 Non-medium errors
0x0d Temperature
0x0e Start-stop cycle counter
0x0f Application client
0x10 Self-test results
0x15 Background scan results (sbc-3)
0x18 Protocol specific port
0x1a Power condition transition
0x2f Informational exceptions (SMART)
0x30 Performance counters (Hitachi)
0x37 Cache (Seagate), Miscellaneous (Hitachi)
また、ディスクがRAIDコントローラ(LSIなど)またはストレージサーバーの背後にある場合は、何も取得できません。
これはSCSIでのみ機能します。 ATAプロトコルファミリはまったく異なる獣です。