====== MegaRAID MegaCli ======
MegaCli is a command line tool provided by MegaRAID to configure/monitor their hardware RAID controllers. Currently all hard drives on [[user:oak|Oak]] are controlled by a MegaRAID SAS 8708EM2 w/ 256Mb RAM.
===== Installation =====
MegaCli is available as a RPM for RedHat Linux from [[http://www.lsi.com/storage_home/products_home/internal_raid/megaraid_sas/value_line/megaraid_sas_8708em2/index.html|LSI MegaRAID 8708EM2]]. The file name is: **4.00.11_Linux_MegaCLI.zip**
For installation on Ubuntu, first we need to install ''alien'' for package format conversion:
$ sudo apt-get install alien
There are two possible ways to perform the actual installation:
==== 1. masker ====
$ unzip 4.00.11_Linux_MegaCLI.zip
Archive: 4.00.11_Linux_MegaCLI.zip
extracting: MegaCliLin.zip
inflating: 4.00.11_Linux_MegaCLI.txt
$ unzip MegaCliLin.zip
Archive: MegaCliLin.zip
inflating: MegaCli-4.00.11-1.i386.rpm
$ alien -g MegaCli-4.00.11-1.i386.rpm
....
Directories MegaCli-4.00.11 and MegaCli-4.00.11.orig prepared.
$ mv MegaCli-4.00.11/debian MegaCli-4.00.11/DEBIAN
$ vi MegaCli-4.00.11/DEBIAN control
Change ** Orignal "control" **
Source: megacli
Section: alien
Priority: extra
Maintainer: MyName
Package: megacli
Architecture: i386
Depends: ${shlibs:Depends}
Description: MegaCli SAS RAID Management Utility.
MegaCli is used to manage SAS RAID controllers.
.
(Converted from a rpm package by alien version 8.79.)
to ** Modified "control" **
Source: megacli
Section: alien
Priority: extra
Maintainer: MyName
Package: megacli
Architecture: amd64
Depends:
Description: MegaCli SAS RAID Management Utility. MegaCli is used to manage SAS RAID controllers.
Version: 4.00.11
(including blank line)
$ dpkg -b MegaCli-4.00.11
$ sudo dpkg -i MegaCli-4.00.11.deb
==== 2. chkuo ====
$ sudo alien --to-tgz MegaCli-4.00.11-1.i386.rpm
$ tar -xvfz MegaCli-4.00.11.tgz
===== Usage =====
A quick reference sheet can be found at [[http://tools.rapidsoft.de/perc/perc-cheat-sheet.html]]
Some commonly used commands:
==== Get Info ====
To see all adapter info:
sudo /opt/MegaRAID/MegaCli/MegaCli64 -AdpAllInfo -aALL
To see RAID configuration info of adapter 0:
sudo /opt/MegaRAID/MegaCli/MegaCli64 -CfgDsply -a0
To see enclosure info of adapter 0:
sudo /opt/MegaRAID/MegaCli/MegaCli64 -EncInfo -a0
To see virtual drives info of adapter 0:
sudo /opt/MegaRAID/MegaCli/MegaCli64 -LDInfo -Lall -a0
To see a list of physical drives of adapter 0:
sudo /opt/MegaRAID/MegaCli/MegaCli64 -PDList -a0
==== To Replace a Hard Drive ====
**WARNING: The following procedure has not been verified yet!!**
The example here assumes that the one of the physical hard drive (Enclosure 252, Slot 6, Adapter 0; marked as Physical Disk 2 in Span Reference 0x00) has failed and needs to be replaced.
1. Set the drive offline if it is still online
sudo /opt/MegaRAID/MegaCli/MegaCli64 -PDOffline -PhysDrv [252:6] -a0
2. Mark the drive as missing
sudo /opt/MegaRAID/MegaCli/MegaCli64 -PDMarkMissing -PhysDrv [252:6] -a0
3. Prepare drive for removal
sudo /opt/MegaRAID/MegaCli/MegaCli64 -PDPrpRmv -PhysDrv [252:6] -a0
4. Replace the failed hard drive
5. If the replaced hard drive is listed as ''Unconfigured(bad)'', change the state
sudo /opt/MegaRAID/MegaCli/MegaCli64 -PDMakeGood -PhysDrv [252:6] -a0
6. Add the physical drive back to the virtual drive
sudo /opt/MegaRAID/MegaCli/MegaCli64 -PdReplaceMissing -PhysDrv [252:6] -Array0 -row2 -a0
7. Start the rebuid
sudo /opt/MegaRAID/MegaCli/MegaCli64 -PDRbld -Start -PhysDrv [252:6] -a0
8. Check the rebuild progress
sudo /opt/MegaRAID/MegaCli/MegaCli64 -PDRbld -ShowProg -PhysDrv [252:6] -a0