This is an old revision of the document!
http://thatlinuxbox.com/blog/article.php/lsi-megaraid-megacli
Install MegaCLI:
wget ftp://tsupport:tsupport@ftp0.lsil.com/private/MegaRAID/downloads/8.00.23_Linux_MegaCLI.zip unzip 8.00.23_Linux_MegaCLI.zip rpm -Uvh Lib_Utils-1.00-08.noarch.rpm MegaCli-8.00.23-1.i386.rpm
The path to MegaCLI may not be added during installation, so you might just change into the directory containing the binaries and preface commands with “./”:
cd /opt/MegaRAID/MegaCli/
In the following examples, we assume only one controller is installed and use
-aALL
.
Silence an alarm:
./MegaCli -AdpSetProp -AlarmSilence -aALL
You have to escape the brackets and braces needed by some commands.
To manipulate a particular physical device, address it by enclosure and slot:
E | Enclosure Device ID |
S | Slot Number |
Disk info for drive on port 6:
./MegaCli -pdInfo -PhysDrv \[252:6\] -aALL
Display all information about all RAID adapter / settings:
./MegaCli -AdpAllinfo -aALL
Display information about all physical drives:
./MegaCli -PDList -aALL
Display information about all logical / virtual drives:
./MegaCli -LDGetProp -LALL -aALL
Removing a drive and putting it right back onto the same RAID controller will cause the drive to marked as “Foreign”. A drive in the “Foreign” state is not usable in an array.
See the detailed section here: http://thatlinuxbox.com/blog/article.php/lsi-megaraid-megacli
Summary:
Find the drive that is not “Online” which should be the newly replaced drive by showing the first few lines of output for each drive to help locate the one that is in a “Foreign” state:
./MegaCli -PDList -aALL | grep –before-context=12 Firmware
./MegaCli -PDMakeGood -PhysDrv \[E:S\] -aALL
./MegaCli -CfgForeign -Clear -aALL
./MegaCli -PDHSP -Set -PhysDrv \[E:S\] -aALL # make this unconfigured drive a hot spare