Die Autodetection beschreibt einen Kernel-Parameter, der in allen beschriebenen Kernel-Vorbereitungen als zu aktivieren gekennzeichnet wurde. Er erlaubt das automatische Erkennen und Starten der diversen im System vorhandenen RAID-Verbunde schon während des Bootvorganges von Linux und somit auch die Nutzung eines RAID-Verbundes als Root-Partition.
Näheres zur Nutzung eines RAID-Verbundes als Root-Partition finden Sie im Abschnitt Root-Partition oder Swap-Partition als RAID.
Diese überaus nützliche Option ist uns nun in jeder /etc/raidtab
Konfiguration über den Weg gelaufen und mit dem Wert »1« eingetragen gewesen,
doch was bedeutet er?
Erinnern Sie sich noch an die MD-Tools oder gar an die mdtab? Mit diesen
älteren Tools wurde eine Datei /etc/mdtab
erstellt, die in älteren
RAID-Unterstützungen die Konfiguration Ihres RAID-Verbundes inklusiv einer
Prüfsumme enthielt.
Sollte nun ein RAID-Verbund gestartet werden, so mußte der Kernel erstmal
diese Datei auslesen, um überhaupt zu erfahren, wo er welches RAID mit welchen
Partitionen zu starten hatte. Haben Sie den Abschnitt über die Root-Partition
als RAID gelesen, so ahnen Sie es schon: Um an diese Datei heranzukommen, muß
aber erstmal das darunterliegende Dateisystem laufen. Eine Zeit lang war es
mit der neueren Konfigurationsdatei /etc/raidtab
genauso, aber hier
nun tritt der Parameter »persistent-superblock« in Aktion. Die möglichen
Werte dafür sind »0« und »1«. Ist der Wert auf »0« gesetzt, so verhält sich das
Starten der RAIDs gemäß dem oben beschriebenen Vorgang. Ist er allerdings auf »1«
gesetzt, wird beim Erstellen jedes neuen RAID-Verbundes an das Ende jeder
Partition ein spezieller Superblock geschrieben, der es dem Kernel erlaubt, die
benötigten Informationen über das RAID direkt von den jeweiligen Partitionen
zu lesen, ohne ein Dateisystem gemountet zu haben. Trotzdem sollten Sie immer
eine /etc/raidtab
pflegen und beibehalten. Ist im Kernel die
Autodetection aktiviert, so werden die RAID-Arrays mit aktiviertem
Persistent-superblock sogar direkt gestartet. Dies befähigt Sie, ganz simpel
jedes RAID-Array als /dev/md0
, /dev/md1
usw. einfach und problemlos
in die /etc/fstab
zu setzen. Der Kernel kümmert sich um das Aktivieren
beim Startup, wodurch ein
raidstart /dev/md0
ebenso wie ein
raidstop /dev/md0
beim Systemhalt überflüssig ist.
Abgesehen davon ermöglicht diese Option auch das Booten von einem RAID-4 oder RAID-5 Array als Root-Partition. Näheres zur Einrichtung eines RAID-Arrays als Root-Partition finden Sie im Abschnitt Root-Partition oder Swap-Partition als RAID.
Spare-Disks bezeichnen Festplatten-Partitionen, die mit Hilfe der
/etc/raidtab
zwar schon einem bestimmten RAID-Verbund zugewiesen
wurden, jedoch solange nicht benutzt werden, bis irgendwann mal eine Partition
ausfällt. Dann allerdings wird die defekte Partition sofort durch die
Spare-Disk ersetzt und die Rekonstruktion der Daten aus den
Paritätsinformationen wird gestartet. Den Fortschritt dieser Rekonstruktion
können Sie - wie alles über RAID-Devices - mittels
cat /proc/mdstat
nachvollziehen. Eine Spare-Disk sollte mindestens genauso groß oder größer sein als die anderen verwendeten RAID-Partitionen. Ist eine Spare-Disk kleiner als die verwendeten RAID-Partitionen und ist der RAID-Verbund fast voll mit Daten, so kann bei einem Ausfall einer RAID-Partition die Spare-Disk natürlich nicht alle Daten aufnehmen, was unweigerlich zu Problemen führt.
Dank der neuen RAID-Tools ist es auch möglich, eine Spare-Disk nachträglich in
einen bereits vorhandenen RAID-Verbund einzufügen. Sinnvoll ist dieser Vorgang
natürlich nur bei RAID-Modi, welche auch mit Spare-Disks umgehen können.
Erweitern Sie dazu erst Ihre /etc/raidtab
um die neue Spare-Disk. Dies
ist zwar für den eigentlichen Vorgang nicht zwingend notwendig, jedoch empfiehlt
es sich immer, eine sorgfältig gepflegte RAID-Konfigurationsdatei zu besitzen.
Führen Sie dann zum Beispiel den Befehl
raidhotadd /dev/md2 /dev/sde4
aus, um in Ihren dritten RAID-Verbund die vierte Partition Ihrer fünften
SCSI-Festplatte einzufügen. Der Befehl raidhotadd
fügt die neue
Partition automatisch als Spare-Disk ein und aktualisiert auch gleich die
Superblöcke aller in diesem RAID-Verbund befindlichen Partitionen. Somit
brauchen Sie keine weiteren Schritte zu unternehmen, um die neue Spare-Disk
Ihren anderen RAID-Partitionen als nutzbar bekannt zu geben.
Diesen Befehl kann man sich auch zu Nutze machen, einen intakten RAID-Verbund
dazu zu bewegen, die Superblöcke neu zu schreiben oder sich zu synchronisieren.
Der analog zu verwendende Befehl raidhotremove
entfernt eine so
hinzugefügte Spare-Disk natürlich auch wieder aus dem RAID-Array.