Linux内部からハードウェアRAID情報を検出できますか?


15

Linuxの内部にいるとき、次の情報を取得できますlsblk(出力から関連のないドライブが削除されます)。

NAME  MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda     8:0    0   298G  0 disk 
sdb     8:16   0   2.7T  0 disk

サーバーからドライブを手動で引き出すと、次のドライブを物理的に使用していることがわかります。

0  Seagate 320GB
1  Seagate 320GB
2  Hitachi 1TB
3  Hitachi 1TB
4  Hitachi 1TB
5  Hitachi 1TB
6  [empty]
7  [empty]

サーバーの物理ストレージはLinuxの利用可能なスペースよりも多いため、これは明らかに何らかのRAIDシステムを使用していることを意味します。少しの計算で、どのタイプのRAIDシステムが使用されているのかをよく理解できます。

Linuxの内部からハードウェアRAIDを使用しているかどうかを検出し、サーバーの電源を切ったり、ドライブを物理的に引き出したりせずに、それに関するすべての情報(RAIDの種類、利用可能なドライブなど)把握する方法はありますか?ラベルを読んでいますか?

この情報をLinuxの内部から収集できますか、それともハードウェアRAIDのポイントが、基盤となるシステムをオペレーティングシステムから「見えない」ようにしますか?


それは完全にあなたが使用しているRAIDコントローラーとlinuxでのサポートに依存します。コントローラーに関する情報を提供する場合、ここでヘルプを見つけることができます。ここで必要な情報が得られない場合は、「model#linuxコマンド」のWeb検索を行うこともできます。
遺伝子

@Geneそれは残念です。繰り返しますが、特定のモデル番号を調べる必要はないが、使用しているハードウェアに関係なく使用できるソリューションがあることを望んでいました。
IQAndreas

異なるハードウェアは異なるRAIDを行い、異なるドライバーを持っています。多くの場合、システムの電源を落とす必要はありませんが、オペレーティングシステムからコントローラーを照会するコマンドを見つけるには、少なくともモデルコントローラーまたはチップセットの種類を知る必要があります。
ジーン

1
通常、コントローラまたはチップセットの情報は、dmesg、dmidecode、lspci、およびその他の同様のユーティリティを介して見つけることができます。マザーボードのRAIDがマザーボードに組み込まれている場合、マザーボードのメーカーとモデルを知っていれば、99%の道を歩むことができます。
ジーン

1
adds an answer explaining how to figure out which RAID controller is being used from inside of Linux -@IQAndreasしかし、それは問題ではありません。serverfaultでの回答は、尋ねられている質問に回答する必要があります。別の質問がある場合は、質問を編集する必要があります。その質問は、Googleで数分でほぼ間違いなく自分で答えることができます。とにかくそれに対する答えはlshw
ゾレダチェ

回答:


17

RAID情報を取得する方法は、使用しているRAIDコントローラーに完全に依存します。多くの場合、製造元には、Webサイトからダウンロードできるツールがあり、RAIDコントローラーを照会してこの情報を取得するために使用できます。

使用しているRAIDコントローラーを見つけるには、次のコマンドのいずれかを試してください。

lspci

# lspci -knn | grep 'RAID bus controller'
08:00.0 RAID bus controller [0104]: 3ware Inc 9690SA SAS/SATA-II RAID PCIe [13c1:1005] (rev 01)

ここで、探している情報は「3ware Inc 9690SA SAS / SATA-II RAID PCIe」です。

lsscsi

このコマンドはDebianおよびUbuntuでは使用できませんがsudo apt-get install lsscsi、リポジトリから簡単に取得できます。RAIDコントローラを使用していない場合、代わりにハードドライブの製造元とモデル番号がここに表示されます。

# lsscsi
[2:0:0:0]    disk    AMCC     9690SA-8I  DISK  4.08  /dev/sda 
[2:0:1:0]    disk    AMCC     9690SA-8I  DISK  4.08  /dev/sdb 

ここで、製造元は「AMCC」であり、RAIDカードのモデル番号は「9690SA-8I」であることがわかります。Googleで簡単に検索すると、このカードは「AMCC 3Ware 9690SA-8I」とも呼ばれています。

lshw

3番目の方法(かなりの量の出力データを提供する)は、lshwコマンドを使用することです。lshw -class diskルートとして実行して、ハードドライブに関する詳細(RAID情報を含む)のみを表示します。

RAIDコントローラーツールを見つける

製造元とモデル番号がわかったので、Webサイトでツールを見つけるか、少なくとも特定のコントローラーのツールを見つけて使用する方法についてGoogleで詳細を確認できるようにする必要があります。

製造元がこのリストに表示されている場合、カードのRAID情報を取得する方法の詳細については、次の回答を参照してください。


5

のようなものを実行しますlspci -knn | grep 'RAID bus controller'

その出力を使用して、Googleは(たとえば)を使用しますLSI Logic / Symbios Logic MegaRAID SAS 2208

storcliユーティリティを使用してRAIDコントローラーに問い合わせます。

ダウンロードしてインストールします。

storcli64 show コントローラーのモデル、およびコントローラーインデックス、ドライブグループの数、仮想ドライブを具体的に示します。

storcli64 /c0/d0 show最初のコントローラー、最初のドライブグループが表示されます。ネストを含むレイドレベルを示します。

storcli64 /c0/eall/sall show all すべてのディスク上のすべての情報を表示します。

これらのコマンドの詳細なリファレンスデータは、次の場所にあります。

http://mycusthelp.info/LSI/_cs/AnswerPreview.aspx?sSessionID=&inc=8275

あなたがしなければならないすべてである必要があります。Linuxで通常のハードウェアイントロスペクションを使用し、次にGoogleを使用してから、それに対応するユーティリティをダウンロードしてインストールします。

@Geneの提案とコメントは完全にスポットオンです。

この回答は、lspciコマンドから得られる出力と、製造元を特定して正しいコマンドラインツールを取得するGoogle検索の機能に完全に固有のものです。

しかし、マシンを停止したり、ケースを開いたり、ドライブを引っ張ったりせずに、コマンドラインでサーバーからこのすべてを取得できることを示しています。


私の質問に対する答えはハードウェア固有のものになるので、私がしことは、使用しているRAIDコントローラーを見つける方法に関するコミュニティwikiの回答を追加することでした。この回答は、特定のコントローラーまたはメーカーの詳細を提供する回答(あなたのものも含む)へのリンクです。
IQAndreas

これを反映するように回答の形式を更新する場合、それは良いことですが、厳密に必要というわけではありません。
–IQAndreas

2

これは万能の答えではなく、必要なすべての情報を提供するわけではありませんが、使用したAdaptecハードウェアRAIDコントローラーの1つでは、特別なデバイス/ devを介してドライブ自体にアクセスできます。 / sg1 / dev / sg2など。smartctl-a / dev / sg1を実行して、製造元、モデル番号、インターフェイス、シリアル番号、サイズ、その他のデータなど、その物理ドライブに関する多くの情報を取得できます。

どのコントローラーが使用されているかを把握する限り、dmidecode、dmesg、およびlspciについてのGeneのコメントに同意します。これらも最初に試してみてください。


1

ストレージプロファイルを作成するには、lspci何かを実行またはダウンロードする前に次のことを行います。

# cat /etc/fstab         What partitions get mounted at boot?

# sudo pvs               Are you running LVM? List the physical volumes

# cat /proc/mdstat       List software RAID devices & status

# for D in /dev/sd?; do parted $D print; done
                         If hardware RAID is being used, the "Model" field will list
                         the Mfr. name, otherwise the hard drive Mfr.

0

3ware

これは、次のRAIDコントローラーでテスト済みです: 9690SA-8I

ご使用の特定のコントローラーで機能したかどうか、またはモデルの手順を更新する必要がある場合は、コメントでお知らせください。

ダウンロード中

まず、ツールをダウンロードする必要がありますtw_cli。これは、アバゴテクノロジーのWebサイト*で確認できます。

*心配しないでください、サードパーティのウェブサイトではありません。3wareはAMCCによって購入され、その後LSI Corporationに売却されました。LSICorporationは後にAvagoの一部になりました[ ソース ]。そのこれまで、ノートバックアップするには3ware.com上の関連ページへのリダイレクトをavagotech.com

tw_cli検索バーに入力し、名前の付いたダウンロードが見つかるまで移動しますCLI Linux - from the 10.2.2.1/9.5.5.1 code sets(最新のバージョン番号は、ここに記載されているものと異なる場合があります)

zipファイルを解凍し、中のいずれかx86またはx86_64あなたは見つけるでしょうtw_cli、あなたが必要とするバイナリを。このバイナリをサーバーまたはコンピューターに保存します。

tw_cliの実行

注:(1)コマンドラインユーティリティをルートとして実行する必要がある場合があります。(2)パスに追加するか、を使用して現在のディレクトリから直接実行することにより、他のバイナリと同様に実行します./tw_cli

まず、実行tw_cli showして、システムで使用可能なRAIDコントローラーをリストします。

# tw_cli show
Ctl   Model        (V)Ports  Drives   Units   NotOpt  RRate   VRate  BBU
------------------------------------------------------------------------
c2    9690SA-8I    6         6        2       0       1       1      Charging 

ここでは、IDがc2(このIDを思い出してください!)という1つのコントローラーが接続されており、6つの物理ドライブが接続されています。ユニットに接続されているドライブの詳細を取得するには、次を実行しますtw_cli /c2 show/c2コントローラーのIDと置き換えます):

# tw_cli /c2 show
Unit  UnitType  Status         %RCmpl  %V/I/M  Stripe  Size(GB)  Cache  AVrfy
------------------------------------------------------------------------------
u0    RAID-1    OK             -       -       -       298.013   Ri     ON     
u1    RAID-5    OK             -       -       64K     2793.94   Ri     ON     

VPort Status         Unit Size      Type  Phy Encl-Slot    Model
------------------------------------------------------------------------------
p0    OK             u0   298.09 GB SATA  0   -            ST3320613AS         
p1    OK             u0   298.09 GB SATA  1   -            ST3320613AS         
p2    OK             u1   931.51 GB SATA  2   -            Hitachi HDS721010CL 
p3    OK             u1   931.51 GB SATA  3   -            Hitachi HDS721010CL 
p4    OK             u1   931.51 GB SATA  4   -            Hitachi HDS721010CL 
p5    OK             u1   931.51 GB SATA  5   -            Hitachi HDS721010CL 

最初のグループは、使用されているRAIDセットアップを示しています。2番目のグループは、現在サーバーに物理的に接続されているドライブを示します。

この特定のケースでは、2つのRAID構成があります。

  • u0->ドライブp0p1、どちらも同じメーカーの300 GBドライブで、RAID-1を使用するように設定されています(相互の正確なミラー)
  • u1-> RAID-5を使用して4台の1TB日立ドライブ(p2p5)をセットアップしています(「ドライブの1つ」を使用して、他のドライブのいずれかが故障した場合にデータを保持します)。これは、(上からわかるように)u13TB(または、むしろ2793.94 GB)の使用可能なデータがあることを意味します。

tw_cli /c2/u0 showまたはを実行すると、ドライブの状態と正常性に関するさらに詳しい情報を見つけることができますtw_cli /c2/p0 show。詳細およびコマンドについては、マニュアルページを参照してください。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.