1. 程式人生 > >Linux下檢視Raid磁碟陣列資訊的方法

Linux下檢視Raid磁碟陣列資訊的方法

Linux下檢視軟、硬raid資訊的方法

軟體raid:只能通過Linux系統本身來檢視

cat /proc/mdstat

可以看到raid級別,狀態等資訊。

硬體raid: 最佳的辦法是通過已安裝的raid廠商的管理工具來檢視,有cmdline,也有圖形介面。如Adaptec公司的硬體卡就可以通過下面的命令進行檢視:

# /usr/dpt/raidutil -L all

可以看到非常詳細的資訊。

當然更多情況是沒有安裝相應的管理工具,只能依靠Linux本身的話一般我知道的是兩種方式:

# dmesg |grep -i raid

# cat /proc/scsi/scsi

顯示的資訊差不多,raid的廠商,型號,級別,但無法檢視各塊硬碟的資訊。

另外經過實際測試,Dell的伺服器可以通過命令來顯示,而HP、IBM等的伺服器通過上面的命令是顯示不出的。只能夠通過裝硬體廠商的管理工具來檢視DELL的BMC可以檢視。

cat /proc/scsi/scsi

可以看到是SCSI上的裝置。一般情況可以看到RAID級別。lspci可以看到RAID卡的型號。

==========================================================

rpm -ivh MegaCli-1.01.09-0.i386.rpm

命令使用:
MegaCli -LDInfo -Lall -aALL 查raid級別
MegaCli -AdpAllInfo -aALL 查raid卡資訊
MegaCli -PDList -aALL 檢視硬碟資訊
MegaCli -AdpBbuCmd -aAll 檢視電池資訊
MegaCli -FwTermLog -Dsply -aALL 檢視raid卡日誌

MegaCli常用引數介紹
MegaCli -adpCount 【顯示介面卡個數】
MegaCli -AdpGetTime –aALL 【顯示介面卡時間】
MegaCli -AdpAllInfo -aAll 【顯示所有介面卡資訊】
MegaCli -LDInfo -LALL -aAll 【顯示所有邏輯磁碟組資訊】
MegaCli -PDList -aAll 【顯示所有的物理資訊】
MegaCli -AdpBbuCmd -GetBbuStatus -aALL |grep ‘Charger Status’ 【檢視充電狀態】
MegaCli -AdpBbuCmd -GetBbuStatus -aALL【顯示BBU狀態資訊】
MegaCli -AdpBbuCmd -GetBbuCapacityInfo -aALL【顯示BBU容量資訊】
MegaCli -AdpBbuCmd -GetBbuDesignInfo -aALL 【顯示BBU設計引數】
MegaCli -AdpBbuCmd -GetBbuProperties -aALL 【顯示當前BBU屬性】
MegaCli -cfgdsply -aALL 【顯示Raid卡型號,Raid設定,Disk相關資訊】

磁帶狀態的變化,從拔盤,到插盤的過程中。
Device |Normal|Damage|Rebuild|Normal
Virtual Drive |Optimal|Degraded|Degraded|Optimal
Physical Drive |Online|Failed –> Unconfigured|Rebuild|Online

============================================

MegaCli 常見用法
2008-10-24 09:32
1、準備

新版本的 MegaCli-1.01.24-0.i386.rpm 會把程式安裝在/opt下,可以自定義安裝目錄,例如:

rpm –relocate /opt/=/usr/sbin/ -i MegaCli-1.01.24-0.i386.rpm

即把安裝目錄 /opt 替換成 /usr/sbin。
檢視所有物理磁碟資訊

MegaCli -PDList -aALL

Adapter #0

Enclosure Number: 1
Slot Number: 5
Device Id: 5
Sequence Number: 2
Media Error Count: 0
Other Error Count: 0
Predictive Failure Count: 0
Last Predictive Failure Event Seq Number: 0
Raw Size: 140014MB [0x11177328 Sectors]
Non Coerced Size: 139502MB [0x11077328 Sectors]
Coerced Size: 139392MB [0x11040000 Sectors]
Firmware state: Hotspare
SAS Address(0): 0x5000c50008e5cca9
SAS Address(1): 0×0
Inquiry Data: SEAGATE ST3146855SS S5273LN4Y1X0
…..

2、檢視磁碟快取策略

MegaCli -LDGetProp -Cache -L0 -a0

Adapter 0-VD 0: Cache Policy:WriteBack, ReadAheadNone, Direct

or

MegaCli -LDGetProp -Cache -L1 -a0

Adapter 0-VD 1: Cache Policy:WriteBack, ReadAheadNone, Direct

or

MegaCli -LDGetProp -Cache -LALL -a0

Adapter 0-VD 0: Cache Policy:WriteBack, ReadAheadNone, Direct
Adapter 0-VD 1: Cache Policy:WriteBack, ReadAheadNone, Direct

or

MegaCli -LDGetProp -Cache -LALL -aALL

Adapter 0-VD 0: Cache Policy:WriteBack, ReadAheadNone, Direct
Adapter 0-VD 1: Cache Policy:WriteBack, ReadAheadNone, Direct

or

MegaCli -LDGetProp -DskCache -LALL -aALL

Adapter 0-VD 0: Disk Write Cache : Disk’s Default
Adapter 0-VD 1: Disk Write Cache : Disk’s Default

3、設定磁碟快取策略

快取策略解釋:

WT (Write through
WB (Write back)
NORA (No read ahead)
RA (Read ahead)
ADRA (Adaptive read ahead)
Cached
Direct

例子:

MegaCli -LDSetProp WT|WB|NORA|RA|ADRA -L0 -a0

or

MegaCli -LDSetProp -Cached|-Direct -L0 -a0

or

enable / disable disk cache

MegaCli -LDSetProp -EnDskCache|-DisDskCache -L0 -a0

4、建立/刪除 陣列
4.1 建立一個 raid5 陣列,由物理盤 2,3,4 構成,該陣列的熱備盤是物理盤 5

MegaCli -CfgLdAdd -r5 [1:2,1:3,1:4] WB Direct -Hsp[1:5] -a0

4.2 建立陣列,不指定熱備

MegaCli -CfgLdAdd -r5 [1:2,1:3,1:4] WB Direct -a0

4.3 刪除陣列

MegaCli -CfgLdDel -L1 -a0

4.4 線上新增磁碟

MegaCli -LDRecon -Start -r5 -Add -PhysDrv[1:4] -L1 -a0

意思是,重建邏輯磁碟組1,raid級別是5,新增物理磁碟號:1:4。重建完後,新新增的物理磁碟會自動處於重建(同步)狀態,這個 時候 fdisk -l是看不到陣列的空間變大的,只有在系統重啟後才能看見。如果該陣列下只有一個分割槽的話,那麼該分割槽也直接增大,如果有多個分割槽,不知道該怎麼分配新增空間了?有空試試看,呵呵
5、檢視陣列初始化資訊
5.1 陣列建立完後,會有一個初始化同步塊的過程,可以看看其進度。

MegaCli -LDInit -ShowProg -LALL -aALL

或者以動態視覺化文字介面顯示

MegaCli -LDInit -ProgDsply -LALL -aALL

5.2 檢視陣列後臺初始化進度

MegaCli -LDBI -ShowProg -LALL -aALL

或者以動態視覺化文字介面顯示

MegaCli -LDBI -ProgDsply -LALL -aALL

6、建立全域性熱備

指定第 5 塊盤作為全域性熱備

MegaCli -PDHSP -Set [-EnclAffinity] [-nonRevertible] -PhysDrv[1:5] -a0

也可以指定為某個陣列的專用熱備

MegaCli -PDHSP -Set [-Dedicated [-Array1]] [-EnclAffinity] [-nonRevertible] -PhysDrv[1:5] -a0

7、刪除全域性熱備

MegaCli -PDHSP -Rmv -PhysDrv[1:5] -a0

8、將某塊物理盤下線/上線

MegaCli -PDOffline -PhysDrv [1:4] -a0

MegaCli -PDOnline -PhysDrv [1:4] -a0

9、檢視物理磁碟重建進度

MegaCli -PDRbld -ShowProg -PhysDrv [1:5] -a0

或者以動態視覺化文字介面顯示

MegaCli -PDRbld -ProgDsply -PhysDrv [1:5] -a0

下載地址: http://gcolpart.evolix.net/debian/misc/dell/MegaCli-1.01.24-0.i386.rpm

=============================================

Dell 各系列的機器,只要是 PERC 的RAID控制器,都可以用 MegaRC 這個命令列工具來檢測

http://www.lsi.com/files/support/rsa/utilities/megaconf/ut_win_megarc_1.10.zip

解壓縮後,就是 megarc.exe

MegaRC for Linux

http://www.lsi.com/files/support/rsa/utilities/megaconf/ut_linux_megarc_1.11.zip

用 unzip 解壓縮出來後,再 chmod 700 megarc*

Windows 和 Linux 下的引數都一樣:

megarc -dispcfg -a0
./megarc -dispcfg -a0

輸出結果如下:

Logical Drive : 0( Adapter: 0 ): Status: OPTIMAL
—————————————————
SpanDepth :01 RaidLevel: 5 RdAhead : Adaptive Cache
StripSz :064KB Stripes : 4 WrPolicy: WriteBack

Logical Drive 0 : SpanLevel_0 Disks
Chnl Target StartBlock Blocks Physical Target St
—- —— ———- —— ——————
0 00 0×00000000 0x0887c000 ONLINE
0 01 0×00000000 0x0887c000 ONLINE
0 02 0×00000000 0x0887c000 ONLINE
0 03 0×00000000 0x0887c000 ONLINE

如果想要通過圖形介面來檢視,必須裝那個大傢伙了: Dell OpenManage Server Administrator
Linux下有90多M,Win下的有100多M。

Dell 在 Linux 下還有一個更好的工具:raidmon (for win 的目前還沒發現)

目前支援 IDE / EIDE, SCSI RAID: LSI Logic CERC ATA 100, PERC 4/DC, PERC 4/Di, PERC 4/SC, LSI Logic (formerly AMI) PERC3/DC, PERC3/DCL, PERC3/QC, PERC3/SC

perc-cerc-apps-6.03-A06.tar.gz

http://support.dell.com/support/downloads/download.aspx?c=us&l=en&s=gen&releaseid=R71524&formatcnt=2&fileid=92846

解包下來後,有個 Megamon-4.0-0a.i386.rpm

安裝結束後 /etc/init.d/raidmon start

# tail -f /var/log/megaserv.log 就可以看到檢測報告。有問題的時候,此log中會有體現。

還可以編輯 /etc/megamon.conf ,將管理員的信箱加在檔案末尾,這樣檢測到錯誤的時候,會自動傳送郵件。
(mail.35.cn 好象當成垃圾郵件過濾掉了)

因此建議 megarc(手工) 配合 raidmon(自動) 是個比較好的解決方案。

Dell 1950 的 PERC 5/i SAS RAID 控制器用這個命令列工具:

MegaCLI for Linux

http://www.lsi.com/support/downloads/megaraid/miscellaneous/Linux_MegaCLI_1.01.24.zip

MegaCLI for Windows

http://www.lsi.com/support/downloads/megaraid/miscellaneous/Windows_MegaCLI_1.01.25.zip

# unzip Linux_MegaCLI_1.01.24.zip
# unzip MegaCliLin.zip
# rpm -ivh MegaCli-1.01.24-0.i386.rpm

# /opt/MegaCli -CfgDsply -aALL

輸出如下:

==============================================================================
Adapter: 0
Product Name: PERC 5/i Integrated
Memory: 256MB
BBU: Present
Serial No: 12345
==============================================================================

RAID Level: Primary-1, Secondary-0, RAID Level Qualifier-0
Size:285568MB
State: Optimal

Physical Disk: 0
Media Error Count: 0
Other Error Count: 0
Firmware state: Online

Physical Disk: 1
Media Error Count: 0
Other Error Count: 0
Firmware state: Online

來源:http://xuun.net/2009/12/20/check-raid-status-by-megacli/