ハードウェアRAIDコントローラの背後にあるハードディスク情報は何ですか?

ハードウェアRAIDコントローラの背後にあるハードディスク情報は何ですか?

実行すると、次smartctl -i /dev/sdbのような正しいディスク情報が得られます。シリアル番号そしてドライブモデル。ただし、これは JBOD というラベルの付いたディスクに適用されます。

~のためNドライブはRAIDに設定され(私の場合はLSI RAIDカードを使用)、組み立てられたボリュームが例のdev/sdaようにLinuxに表示されます。次に、sda1予想サイズでパーティションを作成します...非常に簡単です。

ラベルのモデルとシリアル情報を表示するためにサーバーの電源を切り、各ドライブを取り外す必要はありません。1つのディスクに結合されたRAIDカードの背後にある個々のディスクをそれぞれ見る方法はありますか?仮想光学ドライブ、RAIDディスクに関する基本情報を取得しますか?

答え1

私はLSI RAIDカードに言及したので、MegaRAIDデバイスであるとします。この場合、以下を実行して各プライマリドライブに関する情報を取得できます。

smartctl -i -d megaraid,0 /dev/sda

適切に交換し/dev/sda(システムに表示されるRAIDドライブのデバイスノードと一致する必要があります)0(各ドライブを表示するにはそれを増やします。)

マンページには、smartctlサポートされているさまざまな種類のコントローラとそれを解決するための構文がリストされています。

答え2

私は特定のコントローラに動作するものを追加したいと思います。

SCSIストレージコントローラ:LSI Logic / Symbios Logic SAS1068 PCI-X Fusion-MPT SAS(rev 01)システムはDell Precision 690ワークステーションで、コントローラはマザーボードにあります。これはUbuntu 18.04 64ビットにあります。

まず、私のアプローチがあなたに合わない場合に効果があるかもしれないいくつかの点に言及したいと思います。

  • LSI には lsiutil というユーティリティがあります。
  • storcliを試してみてください。使用方法に関するいくつかのガイドがあります。
  • Dellのperccliを試してみることはできますが、rpmパッケージで提供され、Alienコマンド(apt install Alienを介してインストールされている)を使用してスクリプトを許可する必要があります。
  • メガエイドを試してみて、いくつかのガイドがありますが、私の特定のコントローラはメガエイドコントローラではありません。私はそれがperc5iだと思います(わからない)。
  • DellのracadmまたはOpenManageツールを試してみることはできますが、私は自分で試したことがありません。

私のルートbashの記録:どのくらい必要かわかりません(#は私の説明です)。

apt install mpt-status
man mpt-status #it has notes about a kernel module needed mptctl see also mptsas
mpt-status #you should see the array and individual drives, if not continue
modprobe mpt3sas #loads this module into the kernel
modprobe sg #loads sg driver
cat /proc/scsi/sg/device_strs #where X is equal to the row number of the table starting with 0
smartctl -a /dev/sgX #smartctl commands work now and /dev/sg0 for example takes the place of /dev/sda for the purposes of smartctl

lsmodは、megaraid、mptctl、mpt3sas、mptsas、mptbaseなどの追加モジュールをロードしたさまざまなソリューションを試してみました。

編集:このページはmptsasが必須モジュールであることを示唆しています。https://wiki.debian.org/LinuxRaidForAdmins#mpt2sas

起動すると、起動時にモジュールがロードされるように設定する必要があります。

答え3

コントローラがstorcliをサポートしている場合は、出力を確認してくださいstorcli /call/vall show all。たとえば、/dev/sdb に関するいくつかの情報を取得するには、次のように入力します。

storcli /call/vall show all|sed -n '/^\/c/h;/^-/,/^$/H;/Drive Name = \/dev\/sdb/{g;p}'

次に、コマンドにDID(デバイスID)を使用します。smartctl -i -d megaraid,<DID> /

私のテストでは、smartctlはコマンドラインのすべてのパス(/dev/sda、/dev/sdb、または単に/)を無視し、DID番号にのみ焦点を当てます。

関連情報