How to determine RAID controller type in Linux

Most servers are equipped with RAID. There are two main types of RAID: software or hardware.

Software RAID

If you’re not sure what configuration is used, check in the /proc/mdstat file. The /proc is area used by the kernel for keeping various system parameters.

Here’s an example output from the Debian 8 server running 2 discs in RAID 1

admin@arf:/proc$ cat mdstat

Personalities : [raid1]
md1 : active raid1 sda2[0] sdb2[1]
      467568320 blocks super 1.2 [2/2] [UU]

md0 : active raid1 sda1[0] sdb1[1]
      1048512 blocks [2/2] [UU]

unused devices: <none>

admin@arf:/proc$

You can run df -h to get more information about the discs.

Hardware RAID

If you know the server is configured with RAID but you find the /proc/mdstat is empty

[root@arf ~]# cd /proc
[root@arf1 proc]# cat mdstat
Personalities :
unused devices: <none>
[root@arf proc]#

then you’re dealing with a hardware RAID controller. Install lshw and lspci if the server supplier can not / will not provide details about the hardware.

Debian / Ubuntu

apt-get install lshw pciutils

CentOS

yum install lshw pciutils

From the shell run lspci

[root@arf proc]# lspci
00:00.0 Host bridge: Intel Corporation Xeon E3-1200 v3 Processor DRAM Controller (rev 06)
00:01.0 PCI bridge: Intel Corporation Xeon E3-1200 v3/4th Gen Core Processor PCI Express x16 Controller (rev 06)
00:01.1 PCI bridge: Intel Corporation Xeon E3-1200 v3/4th Gen Core Processor PCI Express x8 Controller (rev 06)
00:14.0 USB controller: Intel Corporation 8 Series/C220 Series Chipset Family USB xHCI (rev 05)
00:1a.0 USB controller: Intel Corporation 8 Series/C220 Series Chipset Family USB EHCI #2 (rev 05)
00:1c.0 PCI bridge: Intel Corporation 8 Series/C220 Series Chipset Family PCI Express Root Port #1 (rev d5)
00:1c.2 PCI bridge: Intel Corporation 8 Series/C220 Series Chipset Family PCI Express Root Port #3 (rev d5)
00:1c.3 PCI bridge: Intel Corporation 8 Series/C220 Series Chipset Family PCI Express Root Port #4 (rev d5)
00:1d.0 USB controller: Intel Corporation 8 Series/C220 Series Chipset Family USB EHCI #1 (rev 05)
00:1f.0 ISA bridge: Intel Corporation C222 Series Chipset Family Server Essential SKU LPC Controller (rev 05)
00:1f.3 SMBus: Intel Corporation 8 Series/C220 Series Chipset Family SMBus Controller (rev 05)
00:1f.6 Signal processing controller: Intel Corporation 8 Series Chipset Family Thermal Management Controller (rev 05)
01:00.0 RAID bus controller: Adaptec AAC-RAID (rev 09)
02:00.0 Serial Attached SCSI controller: LSI Logic / Symbios Logic SAS2308 PCI-Express Fusion-MPT SAS-2 (rev 05)
03:00.0 PCI bridge: ASPEED Technology, Inc. AST1150 PCI-to-PCI Bridge (rev 03)
04:00.0 VGA compatible controller: ASPEED Technology, Inc. ASPEED Graphics Family (rev 30)
05:00.0 Ethernet controller: Intel Corporation I210 Gigabit Network Connection (rev 03)
06:00.0 Ethernet controller: Intel Corporation I210 Gigabit Network Connection (rev 03)
[root@arf proc]#

You might find it easier to pipe the results in to grep like this

[root@arf proc]# lspci | grep -i raid
01:00.0 RAID bus controller: Adaptec AAC-RAID (rev 09)
[root@arf proc]#

Vendors have their own monitoring tools. Monitoring will be covered in a separate post.

You May Also Like