参照サイト:http://www.cyberciti.biz/faq/linux-checking-sas-sata-disks-behind-adaptec-raid-controllers/
注: ここでは他のハードウェアメーカーによって製造されたハードウェアRAIDコントローラーですが、例としてAdaptecを使用しています。
ソフトウェアをインストールします:
apt- get install smartmontools
RAIDコントローラーがどの会社のものか知りたいですか?
お持ちのRAIDコントローラーを確認してください:
lspci | grep 'RAID'
Result: 01:00.0 RAID bus controller: Adaptec Device 028b (rev 01)
#コントローラーがサポートされているかどうか、およびコントローラーが認識しているデバイスを確認します:
smartctl --scan
出力例:
/dev/sda -d scsi [SCSI]
/dev/sdb -d scsi [SCSI]
ドライブのSMART全体のヘルステストを確認します:
smartctl -d scsi -H /dev/sda | grep 'SMART'
smartctl -d scsi -H /dev/sdb | grep 'SMART'
結果の例:
/dev/sda: SMART Health Status: OK
/dev/sdb: SMART Health Status: OK
RAIDコントローラーの背後にある個々のドライブの確認
コントローラーの背後にある個々のドライブには、通常、シミュレートされたドライブの順序に従って順番に名前が付けられます。
例:
/ dev / sda (コントローラーの後ろに2台のドライブ): / dev / sg1 / dev / sg2
/ dev / sdb (コントローラーの後ろに2台のドライブ): / dev / sg3 / dev / sg4
これらのチェックを実行するためのコマンド:
smartctl -d scsi --all -T permissive /dev/sg1
smartctl -d scsi --all -T permissive /dev/sg2
smartctl -d scsi --all -T permissive /dev/sg3
smartctl -d scsi --all -T permissive /dev/sg4
cronによって定期的に実行されるスクリプトを作成し、結果を電子メールで送信します:
スクリプト:
#!/bin/bash
# Name: SMART-report.sh
# Purpose: Sends report of SMART status of RAID hard disks
# Syntax: SMART-report.sh
#--------------------------------------------------------
(. ~/.bashrc
echo -n "/dev/sda: "
smartctl -d scsi -H /dev/sda | grep 'SMART'
echo -n "/dev/sdb: "
smartctl -d scsi -H /dev/sdb | grep SMART
echo "Individual drives behind the RAID controller";echo
echo "============== /dev/sda ===> /dev/sg1 ============="
smartctl -d scsi --all -T permissive /dev/sg1 | grep 'SMART';echo
echo "============== /dev/sda ===> /dev/sg2 ============="
smartctl -d scsi --all -T permissive /dev/sg2 | grep 'SMART';echo
echo "============== /dev/sdb ===> /dev/sg3 ============="
smartctl -d scsi --all -T permissive /dev/sg3 | grep 'SMART';echo
echo "============== /dev/sdb ===> /dev/sg4 ============="
smartctl -d scsi --all -T permissive /dev/sg4 | grep 'SMART'
) | mail -s "SMART Result of $(hostname -f)" [email protected]