3wareのRAIDカード「9650SE」に刺さっているSATAドライブのSMART情報が見られることがわかった。使ったOSはCentOS 5.2(x86_64)。なんとなく、RAIDカードの向こうにあるドライブのSMART情報って見えないような気がしていたんだけども。

で、SMART情報をチラ見するのに使うのはsmartctl。

普通のIDEドライブ(PATA)が刺さってるLinuxマシンだと、こんな感じでSMART情報が見られる(ま、ドライブがSMARTに対応していることが前提だけど)

smartctl -a /dev/sda

コマンドを実行すると情報がずらずらと出てくる。IDEドライブなんだから、なんとなく/dev/hdaのような気がするけど、コマンドの確認を使ったマシンがsdaになっていた。

で、余談だけど、IDEドライブがなんで/dev/sdaで見えるのか、ってことを調べてみたら、こちらに書いてあった。なるほどねぇ。

もとい。SATAドライブでSMART情報を見ようとすると、「-d ata」を付けてみたらってアドバイスされる。

In Linux, SATA disks accessed via libata are only supported by smartmontools for kernel versions 2.6.15 and above. Try an additional ‘-d ata’ argument.

そんなわけで、「-d ata」を付けると、普通にSMART情報がずらっと取得できる。

smartctl -d ata -a /dev/sda

で、3wareの9650SEに刺さっているSATAドライブの場合は、「-d」で指定するデバイス名が3wareになる。加えて、3wareのカードに刺さっているディスクは複数なので、どのポートに刺さってるドライブのSMART情報を見るかって番号を必要になる。例えば、9650SE上の0番ポートに刺さってるドライブを参照したい場合は

-d 3ware,0

って感じになると。

普通のドライブであれば「/dev/sda」とか指定していたデバイスの指定のところに、「/dev/twa0」を指定すると、晴れてSMART情報が参照できた。9650SEを複数枚刺していると、「/dev/twa1」とか「/dev/twa2」とか増えていくのかもしれない。で、結局、9650SEの0番目のポートに刺さってるSATAドライブのSMARTは、以下のようなコマンドで見られた。

smartctl -d 3ware,0 -a /dev/twa0

ま、SMART情報が見られたところで、温度とか再割り当てセクタの数など、いくつか項目しか理解できないけど、見られないよりはマシかな…ということで。