RAID1 auf Fedora 8: /dev/sda vorbereiten und GRUB anpassen
7 Vorbereitung von /dev/sda
Wenn alles gut gelaufen ist, sollten Sie jetzt /dev/md0 und /dev/md2 in der Ausgabe von
df -hsehen:
[root@server1 ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/md2 4.4G 2.4G 1.8G 58% /
/dev/md0 99M 15M 80M 16% /boot
tmpfs 185M 0 185M 0% /dev/shm
[root@server1 ~]#Die Ausgabe von
cat /proc/mdstatsollte etwa so aussehen:
[root@server1 ~]# cat /proc/mdstat
Personalities : [raid1] [raid6] [raid5] [raid4]
md0 : active raid1 sdb1[1]
104320 blocks [2/1] [_U]
md1 : active raid1 sdb2[1]
513984 blocks [2/1] [_U]
md2 : active raid1 sdb3[1]
4618560 blocks [2/1] [_U]
unused devices:
[root@server1 ~]# Nun müssen wir die Partitions-Typen der drei Partitionen auf /dev/sda ebenfalls auf “Linux raid autodetect” ändern:
fdisk /dev/sdaBeispiel-Session:
[root@server1 ~]# fdisk /dev/sdaGeben Sie nacheinander die folgenden Kommandos ein (m für Hilfe):
Command (m for help): <-- t
Partition number (1-4): <-- 1
Hex code (type L to list codes): <-- fd
Changed system type of partition 1 to fd (Linux raid autodetect)
Command (m for help): <-- t
Partition number (1-4): <-- 2
Hex code (type L to list codes): <-- fd
Changed system type of partition 2 to fd (Linux raid autodetect)
Command (m for help): <-- t
Partition number (1-4): <-- 3
Hex code (type L to list codes): <-- fd
Changed system type of partition 3 to fd (Linux raid autodetect)
Command (m for help): <-- w
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
[root@server1 ~]#Wichtig: Nach dem Schreiben der Partitionstabelle prüfen Sie mit
partprobeoder einem Reboot, ob das System die neue Tabelle korrekt erkannt hat. Auf produktiven Systemen planen Sie dieses Vorgehen in Wartungsfenstern ein.
Jetzt können Sie /dev/sda1, /dev/sda2 und /dev/sda3 zu den jeweiligen RAID‑Arrays hinzufügen:
mdadm --add /dev/md0 /dev/sda1
mdadm --add /dev/md1 /dev/sda2
mdadm --add /dev/md2 /dev/sda3Sehen Sie anschließend erneut in /proc/mdstat nach:
cat /proc/mdstatSie sollten nun die Synchronisation der Arrays sehen:
[root@server1 ~]# cat /proc/mdstat
Personalities : [raid1] [raid6] [raid5] [raid4]
md0 : active raid1 sda1[0] sdb1[1]
104320 blocks [2/2] [UU]
md1 : active raid1 sda2[0] sdb2[1]
513984 blocks [2/2] [UU]
md2 : active raid1 sda3[2] sdb3[1]
4618560 blocks [2/1] [_U]
[=====>...............] recovery = 29.9% (1384256/4618560) finish=2.3min speed=22626K/sec
unused devices:
[root@server1 ~]# Tipp: Führen Sie watch cat /proc/mdstat aus, um die Fortschritte laufend zu beobachten. Um watch zu beenden, drücken Sie STRG+C.
Warten Sie, bis die Resynchronisation abgeschlossen ist. Die fertige Ausgabe sieht dann so aus:
[root@server1 ~]# cat /proc/mdstat
Personalities : [raid1] [raid6] [raid5] [raid4]
md0 : active raid1 sda1[0] sdb1[1]
104320 blocks [2/2] [UU]
md1 : active raid1 sda2[0] sdb2[1]
513984 blocks [2/2] [UU]
md2 : active raid1 sda3[0] sdb3[1]
4618560 blocks [2/2] [UU]
unused devices:
[root@server1 ~]# /etc/mdadm.conf aktualisieren
Nachdem die Arrays vollständig synchronisiert sind, aktualisieren Sie die mdadm Konfigurationsdatei:
mdadm --examine --scan > /etc/mdadm.conf/etc/mdadm.conf sollte nun etwa so aussehen:
cat /etc/mdadm.conf| ARRAY /dev/md0 level=raid1 num-devices=2 UUID=2848a3f5:cd1c26b6:e762ed83:696752f9 ARRAY /dev/md1 level=raid1 num-devices=2 UUID=8a004bac:92261691:227767de:4adf6592 ARRAY /dev/md2 level=raid1 num-devices=2 UUID=939f1c71:be9c10fd:d9e5f8c6:a46bcd49 |
Hinweis: Prüfen Sie, ob die UUIDs zu Ihren Geräten passen und sichern Sie die Datei /etc/mdadm.conf vor Änderungen.
8 GRUB vorbereiten (Teil 2)
Fast geschafft. Nun müssen Sie /boot/grub/menu.lst so anpassen, dass das System auch dann bootet, wenn /dev/sdb ausfällt. Der vorhandene erste Kernel‑Stanza verweist auf /dev/sdb (hd1,0). Kopieren Sie diesen Stanza, fügen Sie ihn darunter ein und ersetzen Sie hd1 durch hd0. Kommentieren Sie alle übrigen Kernel‑Stanzas aus. Die Datei sollte dann so aussehen:
vi /boot/grub/menu.lst| # grub.conf generated by anaconda # # Note that you do not have to rerun grub after making changes to this file # NOTICE: You have a /boot partition. This means that # all kernel and initrd paths are relative to /boot/, eg. # root (hd0,0) # kernel /vmlinuz-version ro root=/dev/sda3 # initrd /initrd-version.img #boot=/dev/sda default=0 fallback=1 timeout=5 splashimage=(hd0,0)/grub/splash.xpm.gz hiddenmenu title Fedora (2.6.23.1-42.fc8) root (hd1,0) kernel /vmlinuz-2.6.23.1-42.fc8 ro root=/dev/md2 rhgb quiet initrd /initrd-2.6.23.1-42.fc8.img title Fedora (2.6.23.1-42.fc8) root (hd0,0) kernel /vmlinuz-2.6.23.1-42.fc8 ro root=/dev/md2 rhgb quiet initrd /initrd-2.6.23.1-42.fc8.img #title Fedora (2.6.23.1-42.fc8) # root (hd0,0) # kernel /vmlinuz-2.6.23.1-42.fc8 ro root=LABEL=/ rhgb quiet # initrd /initrd-2.6.23.1-42.fc8.img |
Hinweis: In älteren Fedora-Versionen verwendet GRUB Legacy (menu.lst). Bei neueren Distributionen prüfen Sie stattdessen die GRUB2-Konfiguration und führen
grub2-install/grub2-mkconfigaus.
Anschließend erzeugen Sie den neuen ramdisk (initrd) und benennen das alte Image zur Sicherheit um:
mv /boot/initrd-`uname -r`.img /boot/initrd-`uname -r`.img_orig2
mkinitrd /boot/initrd-`uname -r`.img `uname -r`Starten Sie das System neu:
rebootDas System sollte jetzt von beiden Platten bootfähig sein.
Fehlerbehebung und Checkliste
Kurzcheck vor dem Reboot:
- /proc/mdstat zeigt [UU] für alle Arrays
- /etc/mdadm.conf enthält die aktuellen ARRAY‑Einträge
- GRUB menu.lst hat einen Eintrag für (hd0,0) und (hd1,0)
- initrd neu erzeugt und gesichert
Wenn etwas schiefgeht:
- Array zeigt
_Uoder[_U]: ein Laufwerk fehlt oder ist noch im Recovery — warten odermdadm --detail /dev/mdXprüfen. - Nach dem Reboot startet das System nur von einer Platte: prüfen Sie BIOS/Bootreihenfolge und installieren Sie GRUB auf der zweiten Platte (
grub-install /dev/sda). - Kernel/Initrd nicht gefunden: Pfade in menu.lst überprüfen (/boot-Partition berücksichtigt).
Kurze Befehle für Diagnose:
mdadm --detail /dev/md2
mdadm --examine /dev/sda3
dmesg | grep md
ls -l /boot/vmlinuz-* /boot/initrd-*Rollen‑bezogene Checkliste (für Administratoren):
- Sysadmin: Partitionstypen setzen, mdadm add, mdadm.conf aktualisieren
- Release Engineer: initrd neu bauen und validieren
- Operator: Boot-Test und BIOS‑Failover prüfen
Mini-Glossar
- mdadm: Linux-Tool zur Verwaltung von Software-RAIDs
- /proc/mdstat: Kernel-Statusdatei, die den Zustand der RAID-Arrays anzeigt
- initrd/initramfs: Initiales RAM-Dateisystem, das beim Kernelstart geladen wird
- GRUB Legacy: Ältere GRUB-Version, die menu.lst verwendet
Zusammenfassung
Sie haben die Partitions-Typen auf /dev/sda auf RAID umgestellt, die Partitionen zu den md-RAIDs hinzugefügt, deren Synchronisation überwacht und die mdadm-Konfiguration aktualisiert. Außerdem wurde GRUB so ergänzt, dass das System von beiden Platten bootfähig bleibt. Mit den gezeigten Checks und Diagnosebefehlen können Sie Probleme schnell identifizieren und beheben.
Wichtig: Fertigen Sie immer Backups an und planen Sie solche Eingriffe in Wartungsfenstern ein, besonders auf produktiven Systemen.
Ähnliche Materialien
Podman auf Debian 11 installieren und nutzen
Apt-Pinning: Kurze Einführung für Debian
FSR 4 in jedem Spiel mit OptiScaler
DansGuardian + Squid (NTLM) auf Debian Etch installieren
App-Installationsfehler auf SD-Karte (Error -18) beheben