linux kernel configuration for software raid

From thelinuxwiki
Jump to: navigation, search

Contents

Versions

Kernel 3.10.17 was reference in the writing of this guide.

Check for support

If your system has RAID support, you should have a file called /proc/mdstat. If you do not have that file, maybe your kernel does not have RAID support.

Also, gentoo & archlinux users can run...

# zcat /proc/config.gz |grep CONFIG_BLK_DEV_MD
CONFIG_BLK_DEV_MD=y

The above option is required for any / all software raid

And

# zcat /proc/config.gz |grep MD_RAID 
CONFIG_MD_RAID0=y
CONFIG_MD_RAID1=y
CONFIG_MD_RAID10=y
CONFIG_MD_RAID456=y

All or one of the above required.

if you see something like...

# CONFIG_BLK_DEV_MD is not set

for an option you need, then you need to reconfigure your kernel and enable it.

menuconfig / kconfig info

We assume you know how to configure your kernel. This section details the specific,minimum menuconfig options for basic software raid functionality. Refernce you distro's documentation for kernel configuration if needed. For general info on configuring linux kernels, archlinux has a good guide here... Kernels/Compilation/Traditional

Multiple devices driver support (required)

Symbol: BLK_DEV_MD [=y]  
Type  : tristate  
Prompt: RAID support  
  Location:  
    -> Device Drivers  
(1)   -> Multiple devices driver support (RAID and LVM) (MD [=y])  
  Defined at drivers/md/Kconfig:14  
  Depends on: MD [=y]  
  Selected by: DM_RAID [=m] && MD [=y] && BLK_DEV_DM [=m]

Help text:

Support multiple physical spindles through a single logical device. Required for RAID and logical volume management.


at least of of the following required

Enable all or one of the options below depending on what kind of raid you plan to do.

Symbol: MD_RAID1 [=y]  
Type  : tristate  
Prompt: RAID-1 (mirroring) mode  
  Location:  
    -> Device Drivers  
      -> Multiple devices driver support (RAID and LVM) (MD [=y])  
(2)     -> RAID support (BLK_DEV_MD [=y])  
  Defined at drivers/md/Kconfig:80  
  Depends on: MD [=y] && BLK_DEV_MD [=y]  
  Selected by: DM_RAID [=m] && MD [=y] && BLK_DEV_DM [=m]  
Symbol: MD_RAID0 [=y]  
Type  : tristate  
Prompt: RAID-0 (striping) mode  
  Location:  
    -> Device Drivers  
      -> Multiple devices driver support (RAID and LVM) (MD [=y])  
(3)     -> RAID support (BLK_DEV_MD [=y])  
  Defined at drivers/md/Kconfig:60  
  Depends on: MD [=y] && BLK_DEV_MD [=y]   
Symbol: MD_RAID456 [=y]  
Type  : tristate  
Prompt: RAID-4/RAID-5/RAID-6 mode  
   Location:  
     -> Device Drivers  
       -> Multiple devices driver support (RAID and LVM) (MD [=y])  
         -> RAID support (BLK_DEV_MD [=y])  
   Defined at drivers/md/Kconfig:121  
   Depends on: MD [=y] && BLK_DEV_MD [=y]  
   Selects: RAID6_PQ [=y] && ASYNC_MEMCPY [=y] && ASYNC_XOR [=y] && ASYNC_PQ [=y] && ASYNC_RAID6_RECOV [=y]  
   Selected by: DM_RAID [=m] && MD [=y] && BLK_DEV_DM [=m]
Symbol: MD_RAID10 [=y]  
Type  : tristate  
Prompt: RAID-10 (mirrored striping) mode  
  Location:  
    -> Device Drivers  
      -> Multiple devices driver support (RAID and LVM) (MD [=y])  
(4)     -> RAID support (BLK_DEV_MD [=y])  
  Defined at drivers/md/Kconfig:102  
  Depends on: MD [=y] && BLK_DEV_MD [=y]  
  Selected by: DM_RAID [=m] && MD [=y] && BLK_DEV_DM [=m]

Links

this guide is recommended by the linux kernel help... [Software RAID HOWTO]