一、巡讀
1、 MegaCli -adppr -enblauto -a0,立即啟用。
2、MegaCli -adppr -enblman -a0 設定成手動模式,需要用MegaCli -adppr -start –a0 來啟用。
3、用MegaCli -adppr -info -a0來查看巡讀的模式,本次巡讀結束與下一次開始巡讀的間隔,目前狀態等資訊。
4、MegaCli -fwtermlog -dsply -a0可以查看巡讀的進度
5、MegaCli -adppr -stop -a0 結束巡讀,在巡讀過程中,多次運用MegaCli -adppr -stop -a0或MegaCli -adppr -start -a0會使疊代數增加,此時可能不能開始或結束巡讀,用MegaCli -adppr -dsbl -a0來禁止巡讀,重新開始。
6、MegaCli -adppr -setdelay val -a0設定本次巡讀結束與下一次巡讀開始的時間間隔,預設是168小時,當val=0時, 本次巡讀結束後,立即開始下一次巡讀
7、MegaCli -AdpSetProp -PrCorrectUncfgdAreas -val -a0 巡讀時是否糾正媒介錯誤
8、設定定時巡讀 MegaCli -AdpPR -SetStartTime yyyymmdd hh -a0,yyyymmdd hh,具體含義如下:20120108 16表示2012年01月08日16點
二、cc校正
1、立即開始cc校正, MegaCli -ldcc -start -L0 –a0 (L0表示Target ID 為0的raid組),如果沒有完全初始化或後台初始化。The virtual disk has not been initialized、 Running a consistency check may result in inconsistent messages in the log。可以用MegaCli -ldcc -start -force –L0 –a0強行cc校正。
2、MegaCli -ldcc -progdsply -L0 -a0 顯示當前cc校正的進度。
3、MegaCli -ldcc -abort -L0 -a0 關掉當前的cc校正
4、計劃cc校正
a) 如果模式為disable,(MegaCli -adpccsched -info -a0來查看),則下一次開始時間為07/28/2135, 02:00:00,狀態為 Stopped,延期為168個小時。
b) 只有模式為Sequential和Concurrent模式時,才可以設定定期時間,所以要首先設定模式,MegaCli -adpccsched -modeconc -a0或MegaCli -adpccsched -modeseq -a0,然後設定開始時間,MegaCli -adpccsched setstarttime 20101122 18 -a0,設定本次cc校正結束和下次cc校正開始的時間間隔,MegaCli -adpccsched -setdelay 2 -a0。
i、 如果模式為Sequential時,所有虛擬磁碟組順序進行cc校正
ii、 如果模式為Concurrent時,所有虛擬磁碟組同時進行cc校正
5、MegaCli -AdpCcSched -dsbl -a0 禁止計劃cc校正
6、MegaCli -adpsetprop -AbortCCOnError -1 -a0 設定錯誤發生時放棄cc校正
7、查看cc校正的事件記錄,MegaCli -AdpEventLog -GetCCIncon –f filename –L0 –a0
8、如果設定延期時間為0,本次cc校正結束後,下一次cc校正會立即開始
三、快速初始化和完全初始化
1、MegaCli -LDInit -start –L0 -a0 快速初始化
2、MegaCli -LDInit -start -full –L0 -a0 完全初始化
3、MegaCli -LDInit -progdsply -L0 -a0 顯示初始化的進度
4、MegaCli -LDInit -abort -L0 -a0 結束完全初始化
5、快速初始化值是往raid組的前8M和後8M寫0
四、後台初始化
1、禁止後台初始化 MegaCli -LDBI -dsbl -L0 -a0
2、結束進行中的後台初始化 MegaCli -LDBI -abort -L0 -a0
3、查看後台初始化的設定 MegaCli -LDBI -getsetting -L0 -a0
4、顯示後台初始化進度 MegaCli -LDBI -progdsply -L0 -a0
5、Raid5 需要5個資料盤才可以後台初始化(5個盤中不包含熱備盤)
6、後台初始化是建立raid後5分鐘開始的(好像有時不是這樣的)
7、後台初始化和cc校正不同的地方是,後台初始化可以自動開始
8、改變後台初始化率時,需要停止後台初始化,否則沒有效果
五、copyback
1、開啟或禁用copyback, MegaCli -AdpSetProp –CopyBackDsbl -0 -a0 (開啟)
2、顯示copyback設定情況 MegaCli –AdpGetProp -CopyBackDsbl –a0
3、當設定copyback為enable時,拔出壞盤,換上一個UNCONF的新盤,先用熱備盤進行重建,然後進行copyback操作,如果copyback為disable時,不進行copyback操作,可以設定copyback為enable,然後用MegaCli -PDCpyBk -Start -PhysDrv[E0:S0,E1:S1] –a0開始copyback操作,其中[E0:S0]是raid組中的磁碟(來源硬碟),而[E1:S1]不是raid組中的磁碟(目的盤)
4、MegaCli -AdpGetProp SMARTCpyBkEnbl -a0 當某個盤出現第一個smart錯誤時,可以在這個盤和熱備盤之間進行copyback操作,熱備盤做為目的盤,完成了copyback操作時,smart錯誤盤才標記為failed狀態。
5、如果在copyback時,raid組刪除,目的盤迴到熱備盤狀態或Unconfigured Good
六、日誌
1、查看所有的information日誌,MegaCli -adpalilog -a0
2、查看韌體調試日誌(韌體終端日誌)MegaCli -fwtermlog -dsply -a0
3、查看raid卡日誌 MegaCli -adpeventlog -getevents -f filename -a0
4、清除日誌MegaCli -AdpEventLog -Clear –a0
七、擴容
1、MegaCli -LDRecon -Start -r5 -Add -Physdrv[E0:S0] -L0 -a0(raid5的擴容)
2、MegaCli -LDRecon -progdsply -L0 –a0 查看擴容的進度
八、層級遷移
1、MegaCli -cfgldadd -r0[117:1,117:3,117:11] -a0 ,建立了三個盤的raid 0,增加一個盤[117:14],轉換到raid5, MegaCli -ldrecon -start -r5 -add -physdrv[117:14] -l0 -a0
2、在遷移過程中,轉換前的raid的一個盤下線,轉換前raid的所有盤都下線
3、支援的類型 RAID 0 to RAID 1,RAID 0 to RAID 5,RAID 0 to RAID 6,RAID 1 to RAID 0,RAID 1 to RAID 5,RAID 1 to RAID 6,RAID 5 to RAID 0,RAID 5 to RAID 6,RAID 6 to RAID 0,RAID 6 to RAID 5
九、升級
1、從低版本到高版本升級MegaCli -adpfwflash -f x.rom -a0
2、從高版本到低版本降級MegaCli -adpfwflash -f x.rom -noverchk -a0,加上noverchk忽略版本的檢查,升級以後需要重啟才生效
十、串連方式
1、Raid對內有兩個介面,即connector0和connector1。得到連接器的狀態MegaCli -adpgetconnectormode -connector0 -a0
2、如果連接器的模式為internal時,jbod的磁碟全部看不到,如果連接器的模式為external時,主柜上的磁碟全部看不到
十一、外來配置
1、MegaCli -cfgforeign -scan -a0 掃描外來配置的個數
2、MegaCli -cfgforeign -preview -a0 查看當前的磁碟在normal時的位置
3、MegaCli -cfgforeign -import -a0 來匯入配置,恢複虛擬磁碟組
4、MegaCli -cfgforeign -clear -a0 清除外來配置
5、MegaCli -cfgforeign -dsply -a0 顯示出現外來配置(磁碟插入的順序)的過程
十二、物理磁碟的處理
1、MegaCli -PDMakeGood -PhysDrv[E0:S0] –a0磁碟的狀態由FAULTY變成CONF
2、磁碟上線 MegaCli -PDOnline -PhysDrv[E0:S0,E1:S1,...] –a0
3、磁碟下線 MegaCli -PDOffline -PhysDrv[E0:S0,E1:S1,...] –a0 (failed狀態的盤可以下線),然後用MegaCli -pdmarkmissing -physdrv[E0:S0] -a0讓磁碟踢盤,讓其他的UNCONF狀態的磁碟來替代這個盤MegaCli -PdReplaceMissing -physdrv[E0:S0] -arrayA, -rowB -a0
4、MegaCli -PdPrpRmv -physdrv[E0:S0] –a0此時磁碟處於Spun down狀態,如果用此磁碟來建立raid,則磁碟的狀態自動變成Spun Up
5、MegaCli -pdclear -start -physdrv[E:S] -a0 清除單個磁碟
6、MegaCli -AdpSetProp –DsblSpinDownHSP -val –a0 設定熱備盤的節電策略
7、MegaCli -AdpSetProp –EnblSpinDownUnConfigDrvs -val –a0 設定空閑盤的節電策略
8、MegaCli -PDList –a0 擷取所有磁碟的詳細資料
9、MegaCli -pdInfo -PhysDrv[E0:S0] –a0 擷取單個盤的詳細資料
十三、Adpsetprop,設定屬性
1、RebuildRate ,PatrolReadRate,BgiRate,CCRate,ReconRate,表示進行重建,巡讀,後台初始化,cc校正,擴容等所佔有的系統資源率,提高速度
2、CoercionMode(強制模式),分成三種形式,None,128M,1G,當為1G時,每個磁碟比沒有設定的時減少了1G的空間。
3、PredFailPollInterval,輪詢預測失敗的時間間隔。Predictive Failure Count就是smart錯誤
4、MaintainPdFailHistoryEnbl 儲存壞盤的記錄。當為enable時,當一個盤掉線並重新上線。需要清除配置資訊,添加為熱備盤才可以重建當為disable時。當一個盤掉線並重新上線,自動重建
5、MegaCli -AdpSetProp ClusterEnable -0 -a0 設定Cluster模式,目前不支援,只能設定為disbale
6、MegaCli -AdpSetProp -EnableJBOD -1 -a0 設定jbod模式,針對raid0有效,對單個盤讀寫,即先寫第一個盤,寫滿了在寫第二個盤。MegaCli -PDMakeJBOD -physdrv[E0:S0,E1:S1] -a0 可以設定jbod模式(目前不支援)
7、MegaCli -AdpSetProp ExposeEnclDevicesEnbl -1 -a0, 讓裝置驅動暴露enclosure devices
十四、NCQ
8、顯示NCQ的設定情況 MegaCli -adpgetprop -NCQdsply -a0
9、設定開啟NCQ MegaCli -adpsetprop -NCQenbl -a0
10、 關閉NCQ MegaCli -adpsetprop -NCQdsbl -a0
Native Command Queuing (NCQ)對硬碟的讀寫命令的順序進行最佳化。帶NCQ技術的硬碟在接到讀寫指令後,會根據指令對訪問地址進行重新排序。比如根據指令,硬碟需要訪問330扇區、980扇區、340扇區,由於資料在磁碟上分布位置不同,普通硬碟只會按部就班地依次訪問。而NCQ硬碟對指令進行最佳化排列之後,就可以先讀取330扇區,接著讀取340扇區,然後再讀取980扇區。這樣做的好處就是減少了磁頭臂來回移動的時間,使資料讀取更有效,同時有效地延長了硬碟的使用壽命。
十五、添加和移除熱備盤
1、MegaCli -PDHSP -Set -Dedicated -Array0 -physdrv[E:S] -a0 添加局部熱備盤,其中array0表示第0個raid
2、MegaCli -pdhsp -set -physdrv[E:S] -a0 添加全域熱備盤
3、MegaCli -pdhsp -rmv -physdrv[E:S] -a0 移除全域和熱備局部熱備
十六、重建
1、MegaCli -pdrbld -progdsply -physdrv[E:S] -a0 查看重建的進度
2、MegaCli -AdpSetProp RebuildRate -val -a0 調快重建的速度
3、MegaCli -AdpAutoRbld -Enbl -a0 設定自動重建,當一個盤壞掉時,熱備盤可以自動重建,代替壞的盤
4、MegaCli -PDRbld -Start -PhysDrv [E0:S0] -a0 手動開始重建,E0:S0表示壞的盤
十七、恢復出廠預設值
1、MegaCli -AdpFacDefSet –a0 恢複出廠的預設配置
十八、警示
1、MegaCli -AdpSetProp -AlarmSilence –a0 臨時關閉,重啟又變成開啟
2、MegaCli -AdpSetProp -AlarmDsbl –a0 永久關閉,重啟後還是關閉
3、MegaCli -AdpSetProp -Alarmenbl –a0 開啟
4、MegaCli -AdpgetProp -Alarmdsply –a0 查看警示的狀態
十九、配置相關
1、MegaCli -CfgDsply -a0 可以查看一組磁碟上的多個raid的配置
2、MegaCli -CfgSave -f filename -a0 儲存設定檔
3、MegaCli -CfgRestore -f filename -a0 匯入設定檔,Raid組的設定檔放在最後,放在每個磁碟的最後512M,主要包含資料從哪裡開始寫的配置和用來Migration 的swap檔案
4、MegaCli -AdpSetProp -AutoEnhancedImportEnbl -a0 啟動時恢複外來配置
5、MegaCli -AdpSetVerify -f fileName -a0 驗證設定檔和檔案的內容
二十、Raid卡相關
1、MegaCli -adpallinfo -a0 查看raid的配置資訊
2、MegaCli -adpShutDown -a0 關閉raid卡
3、MegaCli -adpGetTime -a0 擷取raid的時間
4、MegaCli -AdpDiag val -a0 對raid進行診斷
5、MegaCli -AdpSetProp –LoadBalanceMode -val –a0 設定負載平衡,Raid卡對終端裝置採用多重路徑訪問,一半的裝置通過一條路徑,另一半的裝置通過另一條路徑,一條途徑有盤插入和移除時,啟動Server Load Balancer,避免裝置有重用
6、MegaCli –adpCount 擷取raid卡的個數
7、MegaCli -AdpGetPciInfo -a0 擷取pci資訊
8、MegaCli -AdpSetProp DisableOCR -val -a0 Raid卡的線上重設,fw重設raid卡控制器晶片
9、MegaCli -ShowSummary -f filename -a0 顯示raid卡,系統等的一些簡單資訊
10、 MegaCli -PhyErrorCounters -a0 顯示每個phy的錯誤數
二十一、Enclosure的資訊
1、MegaCli -encinfo -a0 查看機櫃的相關資訊
2、MegaCli -encstatus -a0 查看機櫃的狀態
二十二、BIOS相關
1、MegaCli –AdpBIOS –BE –a0 在啟動時要按任意鍵才可以啟動這種情況設定這個參數。但是首先要確保bios處於enable狀態。通過MegaCli -AdpBIOS -dsply -a0可以查看。如果不是,先用MegaCli -AdpBIOS -enbl -a0來設定
2、MegaCli –AdpBootDrive -set -L0 -a0 把當前的Raid組做為啟動
二十三、背板相關
1、MegaCli -AdpSetProp -AutoDetectBackPlaneDsbl -val –a0如果背板disable時,會自動的去檢測背板
二十四、啟動時上電
1、MegaCli -AdpSetProp SpinupDriveCount -val -a0 設定一次上電的磁碟的個數
2、MegaCli -AdpSetProp SpinupDelay -val -a0 設定上電的延遲時間
二十五、重新整理緩衝
1、MegaCli -AdpCacheFlush –a0 重新整理raid卡緩衝
2、MegaCli -AdpSetProp CacheFlushInterval –val –a0 刷緩衝的時間間隔
二十六、讓硬碟LED燈閃爍
1、MegaCli -AdpSetProp UseDiskActivityforLocate -1 -a0
2、MegaCli -PdLocate -start –physdrv[E:S] -a0 讓硬碟LED燈閃爍
3、MegaCli -PdLocate -stopt –physdrv[E:S] -a0 停掉硬碟LED燈
二十七、電池警示
1、MegaCli -AdpSetProp BatWarnDsbl -val -a0 電池警示
二十八、錯誤修正碼相關
1、MegaCli -AdpSetProp EccBucketSize -val -a0 設定錯誤修正碼漏桶的位元組數
二十九、後台初始化,完全初始化,cc校正,巡讀等之間的關係
1、後台初始化和完全初始化,cc校正時不能進行巡讀
2、巡讀時可以後台初始化和完全初始化,此時巡讀結束
3、在後台初始化和cc校正時,不能開始完全初始化
4、擴容時不能建raid,不能添加熱備盤
5、rebuild的優先順序高於copyback
三十、Raid的建立與刪除
1、建立raid 0,1,5,6
MegaCli -CfgLdAdd -rX[E0:S0,E1:S1,...] [WT|WB] [NORA|RA|ADRA] [Direct|Cached] [CachedBadBBU|NoCachedBadBBU] [-szXXX [-szYYY ...]] [-strpszM] [-Hsp[E0:S0,...]] [-AfterLdX] [-Force]|[FDE|CtrlBased] -a0 可以設定寫入模式(wt,wb),讀模式(ra,nora,adra),緩衝模式(direct,cached),大小(sz),條塊大小(strpszM)等。比如1000G,只用指定盤的一部分(sz1000G),設定條塊的大小strpsz(設定為16k,則為strpsz16)
MegaCli -cfgldadd -r5[117:1,117:3,117:11] -wb -ra -cached -cachedbadbbu -force -a0
2、建立raid 10,50,60
MegaCli -CfgSpanAdd -rX-Array0[E0:S0,E1:S1] -Array1[E0:S0,E1:S1] [-ArrayX[E0:S0,E1:S1] ...] [WT|WB] [NORA|RA|ADRA] [Direct|Cached] [CachedBadBBU| NoCachedBadBBU] [-szXXX[-szYYY ...]][-strpszM]
[-AfterLdX][-Force] |[FDE|CtrlBased] -aN
MegaCli -CfgSpanAdd -r10 -Array0[245:0,245:1] Array1[245:2,245:3] -WB -RA -Cached -Cachedbadbbu -a0
3、大量建立raid0
MegaCli -CfgEachDskRaid0 -wb -ra -cached -cachedbadbbu -a0把每個槽位的磁碟都建立為只有一個盤的raid0
4、把所有的空閑盤都加入到raid中
MegaCli -CfgAllFreeDrv -r5 -SATAOnly -wb -ra -cached -cachedbadbbu -a0
5、刪除raid組
MegaCli -cfgclr -a0 清除所有的raid組的配置
MegaCli -cfglddel -L0 -a0 刪除指定的raid組(Target Id: 0)的raid組
三十一、設定raid組的屬性
1、MegaCli -ldsetprop -name dg -L0 -a0 設定raid組的名字
2、MegaCli -ldsetprop -rw -L0 -a0 設定存取原則為讀寫,MegaCli -ldsetprop -blocked -L0 -a0設定存取原則為阻塞,此時raid組的裝置不可以訪問,fdisk -l不能發現裝置
3、MegaCli -ldsetprop -wt -L0 -a0 設定寫策略為wt(直寫),直接寫入到硬碟上,然後再返回。wb模式是寫入到緩衝中就返回,設定wb模式寫速度有顯著的改善,提高到12倍
4、MegaCli -ldsetprop -ra -L0 -a0 設定讀策略為ra(預先讀出一定的資料),還有nora模式,ra模式讀可以提高到2倍左右
5、MegaCli -ldsetprop -cached -L0 -a0 設定緩衝策略為cached。
6、MegaCli -ldsetprop -endskcache -L0 -a0 開啟磁碟的緩衝,對寫速度有一定的提高(1.4倍)
測試參數:dd ,bs=1M,99999M的資料測試,裸盤測試