Dies ist eine alte Version des Dokuments!
Ein RAID dient dazu aus mehreren physikalischen Festplatten oder Speichermedien ein logisches Volume aufzubauen. Das kann aus mehreren Motivationen heraus geschehen, zB um den Datendurchsatz des Volumes zu erhöhen (RAID 0) oder um eine Platte zu spiegeln, um die Ausfallsicherheit zu erhöhen (RAID 1) oder um beides zu kombinieren (RAID 10). Daraus ergeben sich mehrere Ableger, welche im Grunde eine dieser beiden Grundfunktionen bereitstellt (zB RAID 5 (single parity) oder RAID 6 (double parity)).
Es gibt auch mehrere Möglichkeiten ein RAID-System zu erstellen. Zum Einen das Hardware-RAID, welches idR durch einen eigenen RAID-Controller im System realisiert wird und zum Anderen durch ein Software-RAID, welches idR durch eine geeignete Software im Betriebssystem realisiert wird. Letzteres hat den Vorteil, dass es kostengünstig zu realisieren ist; hat aber auch den Nachteil, dass es Leistung bzw Ressourcen des Systems benötigt, etwa zum Errechnen der Parität.
Dieses Howto beschreibt das Anlegen eines zusätzlichen RAID 0, RAID 1; RAID 10 und RAID 5 als Software-RAID in Linux Debian Squeeze.
Dazu wird das Paket »mdadm«1) (Multiple Disk ADMinistration) benötigt:
# aptitude install mdadm
Sie werden unmittelbar noch während der Installation von »mdadm« mit einem Konfigurator konfrontiert, welcher von Ihnen wissen will, ob ein Festplattenverband als Startlaufwerk verwendet wird. Da wir einen MD-Verbund nur als zusätzliches Laufwerk ins System einbinden, wählen wir hier »none«:
Danach laden wir die benötigten Kernel-Module, um uns einen Reboot des Systems zu sparen:
# modprobe -a md linear multipath raid0 raid1 raid5 raid6 raid10
Danach können Sie den Status der md-Konfiguration abrufen:
# cat /proc/mdstat
Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10]
unused devices: <none>
Für die weitere Vorgehensweise benötigen Sie natürlich noch die mindestens geforderte Anzahl an Festplatten, welche an den jeweiligen RAID-Level gestellt werden (RAID 0 → 2; RAID 1 → 2; RAID 5 → 3; RAID 6 und RAID 10 → 4 Festplatten) Auf allen Festplatten muss sich mindesten eine Partition befinden:
# fdisk -l
Disk /dev/sda: 5368 MB, 5368709120 bytes
255 heads, 63 sectors/track, 652 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00083a88
Device Boot Start End Blocks Id System
/dev/sda1 * 1 43 340992 83 Linux
Partition 1 does not end on cylinder boundary.
/dev/sda2 43 653 4898817 5 Extended
Partition 2 does not end on cylinder boundary.
/dev/sda5 43 268 1807360 83 Linux
/dev/sda6 268 382 910336 83 Linux
/dev/sda7 382 419 297984 82 Linux swap / Solaris
/dev/sda8 419 437 141312 83 Linux
/dev/sda9 437 653 1737728 83 Linux
Disk /dev/sdc: 1073 MB, 1073741824 bytes
255 heads, 63 sectors/track, 130 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x25cbd315
Device Boot Start End Blocks Id System
/dev/sdc1 1 130 1044193+ 83 Linux
Disk /dev/sdd: 1073 MB, 1073741824 bytes
255 heads, 63 sectors/track, 130 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x0acc8829
Device Boot Start End Blocks Id System
/dev/sdd1 1 130 1044193+ 83 Linux
Disk /dev/sdb: 1073 MB, 1073741824 bytes
255 heads, 63 sectors/track, 130 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0xf9b75405
Device Boot Start End Blocks Id System
/dev/sdb1 1 130 1044193+ 83 Linux
Disk /dev/sde: 1073 MB, 1073741824 bytes
255 heads, 63 sectors/track, 130 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x57b7200f
Device Boot Start End Blocks Id System
/dev/sde1 1 130 1044193+ 83 Linux
Disk /dev/sdf: 1073 MB, 1073741824 bytes
255 heads, 63 sectors/track, 130 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x057cfad5
Device Boot Start End Blocks Id System
/dev/sdf1 1 130 1044193+ 83 Linux