Für Dedicated Server mit Linux und Software-RAID

In diesem Artikel wird erklärt, wie Sie ein Software-RAID nach dem Austausch einer defekten Festplatte wiederaufbauen. 

Achtung

Diese Anleitung ist nur für Dedicated Server gültig, die BIOS als Schnittstelle zwischen Hardware und Betriebssystem verwenden. Wenn Sie einen Dedicated Server verwenden, der UEFI als Schnittstelle zwischen Hardware und Betriebssystem nutzt, finden Sie im folgenden Artikel Informationen wie Sie das Software-RAID wiederaufbauen: Software-RAID wiederaufbauen (Linux/Dedicated Server mit UEFI)

Prüfen,ob ein Dedicated Server UEFI oder BIOS verwendet

Um zu prüfen, ob Ihr Server BIOS oder UEFI als Schnittstelle zwischen Hardware und Betriebssystem verwendet, geben Sie den folgenden Befehl ein:

[root@localhost ~]# [ -d /sys/firmware/efi ] && echo UEFI || echo BIOS

Wichtige Informationen zur Partitionierung Ihres Dedicated Servers

Auf Dedicated Servern, die im Cloud Panel verwaltet werden, wird seit dem 20.10.2021 bei der Einrichtung und bei der Neuinstallation des Betriebssystems nur noch eine Partition eingerichtet. Auf Dedicated Servern, die vor diesem Datum eingerichtet wurden und auf Dedicated Servern, die im Rahmen eines Server Power Deals erworben werden, sind die Betriebssystem-Images mit dem Logical Volume Manager (LVM) ausgestattet. Der Logical Volume Manager setzt eine logische Schicht zwischen dem Dateisystem und den Partitionen der verwendeten Datenträger. Dies ermöglicht es, ein Dateisystem anzulegen, das sich über mehrere Partitionen und/oder Datenträger erstreckt. Auf diese Weise kann z. B. der Speicherplatz von mehreren Partitionen oder Datenträgern zusammengefasst werden.

Ermittlung der benötigten Informationen

Bevor Sie beginnen, müssen Sie die Struktur des bestehenden Systems verstehen.

Vorhandene  Datenträger und Partitionen auflisten

  • Loggen Sie sich mit Ihrem Root-Konto auf dem Server ein.

  • Um die vorhandenen  Datenträger und Partitionen aufzulisten, geben Sie den Befehl fdisk -l ein. fdisk ist ein Kommandozeilen-Programm zur Partitionierung von  Datenträgern. Mit diesem Programm können Sie Partitionen anzeigen, anlegen oder löschen.

    [root@localhost ~]# fdisk -l

  • Notieren Sie sich die Laufwerksbezeichnungen (z. B. /dev/sda, /dev/sdb).

Hinweis

Nach einem Hot-Swap-Austausch wird die neue Festplatte oft als sdc erkannt. Ein Reboot ist zwingend erforderlich, damit sie wieder korrekt als sda oder sdb adressiert wird.

Mountpoints ermitteln
  • Um die Mountpoints der von Ihnen genutzten Geräte und Partitionen anzuzeigen, geben Sie den folgenden Befehl ein:

    [root@localhost ~]# lsblk

    Anschließend werden z. B. die folgenden Informationen angezeigt:

    root@s20776641:~# lsblk
    NAME            MAJ:MIN RM   SIZE RO TYPE  MOUNTPOINT
    loop1             7:1    0  54.9M  1 loop  /snap/lxd/12631
    loop2             7:2    0 110.6M  1 loop  /snap/core/12834
    loop3             7:3    0  61.9M  1 loop  /snap/core20/1434
    loop4             7:4    0  80.4M  1 loop  /snap/lxd/23037
    sda               8:0    0 931.5G  0 disk
    ├─sda1            8:1    0     4G  0 part
    │ └─md1           9:1    0     4G  0 raid1 /
    ├─sda2            8:2    0     2G  0 part  [SWAP]
    └─sda3            8:3    0 925.5G  0 part
      └─md3           9:3    0 925.5G  0 raid1
        ├─vg00-usr  253:0    0     5G  0 lvm   /usr
        ├─vg00-var  253:1    0     5G  0 lvm   /var
        └─vg00-home 253:2    0     5G  0 lvm   /home
    sdb               8:16   0 931.5G  0 disk
    ├─sdb1            8:17   0     4G  0 part
    │ └─md1           9:1    0     4G  0 raid1 /
    ├─sdb2            8:18   0     2G  0 part  [SWAP]
    └─sdb3            8:19   0 925.5G  0 part
      └─md3           9:3    0 925.5G  0 raid1
        ├─vg00-usr  253:0    0     5G  0 lvm   /usr
        ├─vg00-var  253:1    0     5G  0 lvm   /var
        └─vg00-home 253:2    0     5G  0 lvm   /home
    root@s20776641:~# cat /proc/mdstat

  • Notieren Sie die Geräte und Partitionen sowie deren Mountpoints. Beispiel:
    /md1 ist gemountet auf / (Root)
    /vg00-var ist gemountet auf /var
    /vg00-usr ist gemountet auf /usr
    /vg00-home ist gemountet auf /home
    sda2 und sdb2 sind Swap-Partitionen (kein RAID)

RAID-Status ermitteln

Prüfen Sie, welches Laufwerk im RAID fehlt. Geben Sie hierzu den folgenden Befehl ein:

[root@localhost ~]# cat /proc/mdstat

Wenn ein Laufwerk mit [_U] statt [UU] markiert ist, fehlt es im RAID-Array.

Inhalt der Datei fstab anzeigen und die Gerätedateien ermitteln

  • Bei manchen Server-Konfigurationen sind Systemverzeichnisse wie /usr, /var oder /home auf eigene Partitionen ausgelagert. Diese müssen mitgemountet werden, damit Befehle im System funktionieren. Prüfen Sie zu diesem Zweck die Datei fstab auf Ihrem gemounteten System. Um sich den Inhalt der Datei fstab anzeigen zu lassen und die zugehörigen Gerätedateien zu ermitteln, geben Sie den folgenden Befehl ein:

    [root@localhost ~]#  cat /mnt/etc/fstab

  • Analysieren Sie die Ausgabe.
    Fall A (Flaches Dateisystem, z. B. Debian 13): Wenn Einträge angezeigt werden, bei denen /usr, /var und /proc nicht separat aufgeführt sind, müssen Sie keine weiteren Partitionen mounten. In diesem Fall können Sie die nächsten zwei Schritte überspringen und die eingehängten Partitionen in eine chroot-Umgebung setzen.
    Fall B (Partitioniertes System / LVM): Wenn die Einträge /usr, /var und /proc angezeigt werden, müssen Sie diese im Rahmen der Wiederherstellung des RAIDs mounten. Die Vorgehensweise wird im Abschnitt RAID wiederherstellen beschrieben.

RAID wiederherstellen

Das weitere Vorgehen unterscheidet sich abhängig davon, welcher Datenträger getauscht wurde.

Achtung

Im Abschnitt Datenträger 1 (sda) wurde getauscht wird angenommen, dass der Datenträger 1 mit der Bezeichnung sda getauscht wurde. Im Abschnitt Datenträger 2 (sdb) wurde getauscht wird angenommen, dass der Datenträger 2 mit der Bezeichnung sdb getauscht wurde. Passen Sie die Befehle in dieser Anleitung stets vor der Eingabe an und ersetzen Sie hierbei die Laufwerksbezeichnungen. Verwenden Sie hierzu die Informationen, die Sie ermittelt haben.

Datenträger 1 (sda) wurde getauscht

Wurde der Datenträger 1 (sda) getauscht, müssen Sie prüfen, ob dieser korrekt erkannt wurde. Unter Umständen müssen Sie einen Reboot ausführen. Booten Sie den Server anschließend in das Rescue-System und führen Sie die unten aufgeführten Schritte durch. 

Hinweis

In den folgenden Artikeln wird beschrieben, wie Sie Ihren Dedicated Server in das Rescue-System booten:

Dedicated Server, die im Cloud Panel verwaltet werden:

Dedicated Server und Bare Metal Server in das Linux-Rescue-System booten

Dedicated Server, in der Serververwaltung gemanagt werden:

Linux Server in das Rescue-System booten

  • Kopieren Sie die Partitionstabellen des Datenträgers 2 (sdb) auf den neuen (leeren) Datenträger (sda). 

    rescue:~# sfdisk -d /dev/sdb | sfdisk /dev/sda

    (Ggf. müssen Sie die Option -–force verwenden)

  • Fügen Sie die Partitionen dem entsprechenden RAID-Verbund hinzu.

    rescue:~# mdadm /dev/md1 -a /dev/sda1

    rescue:~# mdadm /dev/md3 -a /dev/sda3

    Sie können nun mit cat /proc/mdstat den Rebuild des RAIDS verfolgen.

  • Um den Rebuild zu überwachen, geben Sie den folgenden Befehl ein:

    rescue:~# cat /proc/mdstat

  • Mounten Sie die Root-Partition.

    rescue:~# mount /dev/md1 /mnt

  • Gilt nur für Dedicated Server mit partitioniertem System mit LVM: Erstellen Sie die folgenden Mountpoints:

    rescue:~# mkdir /mnt/var
    rescue:~# mkdir /mnt/usr
    rescue:~# mkdir /mnt/home

  • Gilt nur für Dedicated Server mit partitioniertem System mit LVM: Mounten Sie ggf. die Partitionen var, usr und home.

    rescue:~# mount /dev/mapper/vg00-var /mnt/var
    rescue:~# mount /dev/mapper/vg00-usr /mnt/usr
    rescue:~# mount /dev/mapper/vg00-home /mnt/home

  • Gilt nur für Dedicated Server mit partitioniertem System mit LVM: Erstellen Sie die folgenden Mountpoints.

    rescue:~# mkdir /mnt/proc
    rescue:~# mkdir /mnt/sys
    rescue:~# mkdir /mnt/dev

  • Gilt nur für Dedicated Server mit partitioniertem System mit LVM: Damit später Grub fehlerfrei installiert werden kann, mounten Sie noch proc, sys und dev:

    rescue:~# mount -o bind /proc /mnt/proc
    rescue:~# mount -o bind /sys /mnt/sys
    rescue:~# mount -o bind /dev /mnt/dev

  • Gilt für Debian 13, Ubuntu 24.04, Ubuntu 26.04, AlmaLinux 9, AlmaLinux 10, Rocky Linux 9 und Rocky Linux 10: Um die Grub-Tools zu nutzen, mounten Sie /run.

    rescue:~# mount -o bind /run /mnt/run

  • Nachdem Sie die Partitionen gemountet haben, wechseln Sie in die Chroot-Umgebung:

    rescue:~# chroot /mnt

  • Installieren Sie den Grub-Bootloader.

    Debian (11/12/13) / Ubuntu (24.04/ 26.04)

    rescue:/# grub-install /dev/sda

    AlmaLinux / Rocky Linux (9/10) / CentOS

    rescue:/# grub2-install /dev/sda

  • Um die Konfiguration zu aktualisieren, geben Sie den folgenden Befehl ein:

    Debian (11/12/13) / Ubuntu (24.04/ 26.04)

    rescue:/# update-grub

    AlmaLinux 9 und 10 sowie Rocky Linux 9 und 10

    rescue:/# grub2-mkconfig -o /boot/grub2/grub.cfg

  • Verlassen Sie die Chroot-Umgebung mit exit:

    rescue:/# exit

  • Hängen Sie alle Partitionen aus:

    rescue:~# umount -R /mnt

    Warten Sie, bis der Rebuildvorgang abgeschlossen ist und booten Sie dann den Server wieder in das normale System.

  • Loggen Sie sich nach dem Neustart wieder ein.

  • Stellen Sie sicher, dass der Swap kein RAID ist. Geben Sie hierzu den folgenden Befehl ein:

    [root@host ~]# cat /proc/mdstat

  • Um die Partition als Linux-Swap-Bereich einzurichten, passen Sie den folgenden Befehl an und geben Sie diesen anschließend ein. In diesem Fall handelt es sich um den Linux-Swap-Bereich /dev/sda2.

    [root@host ~]# mkswap /dev/sda2

Achtung

Durch mkswap ändert sich die UUID der Partition. Falls in Ihrer /etc/fstab die Swap-Partition per UUID eingebunden ist (Standard bei Alma/Rocky/Debian), müssen Sie nach dem Neustart die /etc/fstab editieren und die neue UUID eintragen, sonst wird Swap nicht automatisch aktiv.

  • Um die UUID zu ermitteln, passen Sie den folgenden Befehl an und geben Sie diesen anschließend ein:

    [root@host ~]# lsblk -f | grep sda2

  • Gilt nur, falls die Swap-Partition per UUID eingebunden ist: Um /etc/fstab zu editieren, geben Sie den folgenden Befehl ein:

    [root@host ~]# vi /etc/fstab

Hinweis

Der Editor vi verfügt über einen Einfügemodus und einen Befehls- oder Kommandomodus. Den Einfügemodus können Sie mit der Taste [i] aufrufen. In diesem Modus werden die eingegebenen Zeichen sofort in den Text eingefügt. Um den Befehlsmodus aufzurufen, drücken Sie anschließend [ESC]. Wenn Sie den Befehlsmodus nutzen, werden Ihre Tastatureingaben als Befehl interpretiert.

  • Navigieren Sie zur Zeile mit "swap" und ersetzen Sie in der Konfiguration in /etc/fstab die alte UUID durch die neue UUID.
  • Um vi zu beenden und die Datei zu speichern, geben Sie den Befehl :wq ein und drücken Sie anschließend Enter.
  • Aktivieren Sie die Swap-Partition. Geben Sie hierzu den folgenden Befehl ein:

    [root@host ~]# swapon -a

  • Um zu prüfen, ob der Swap-Speicher aktiv ist, geben Sie den folgenden Befehl ein:

    [root@host ~]# cat /proc/swaps

Datenträger 2 (sdb) wurde getauscht

Wurde der Datenträger 2 (sdb) getauscht, gehen Sie wie folgt vor:

  • Führen Sie einen Neustart durch, damit der Datenträger 2 angezeigt wird.

  • Kopieren Sie im lokalen System die Partitionstabellen von Datenträger 1 (sda) auf den neuen (leeren) Datenträger (sdb).

    [root@host ~]# sfdisk -d /dev/sda | sfdisk /dev/sdb

    (Ggf. müssen Sie die Option -–force verwenden)

  • Fügen Sie die Partitionen dem RAID hinzu.

    [root@host ~]# mdadm /dev/md1 -a /dev/sdb1

    [root@host ~]# mdadm /dev/md3 -a /dev/sdb3

  • Um den Rebuild zu überwachen, geben Sie den folgenden Befehl ein:

    [root@host ~]# cat /proc/mdstat

  • Installieren Sie den Grub-Bootloader:

    Debian (11/12/13) / Ubuntu (24.04/ 26.04)

    [root@host ~]# grub-install /dev/sdb

    AlmaLinux / Rocky Linux (9/10) / CentOS

    [root@host ~]# grub2-install /dev/sdb

  • Um die Konfiguration zu aktualisieren, geben Sie den folgenden Befehl ein:

    Debian (11/12/13) / Ubuntu (24.04/ 26.04)

    [root@host ~]# update-grub

    AlmaLinux 9 und 10 sowie Rocky Linux 9 und 10

    [root@host ~]# grub2-mkconfig -o /boot/grub2/grub.cfg

  • Stellen Sie sicher, dass der Swap kein RAID ist. Geben Sie hierzu den folgenden Befehl ein:

    [root@host ~]# cat /proc/mdstat

  • Um die Partition als Linux-Swap-Bereich einzurichten, passen Sie den folgenden Befehl an und geben Sie diesen anschließend ein. In diesem Fall handelt es sich um den Linux-Swap-Bereich /dev/sdb2.

    [root@host ~]# mkswap /dev/sdb2

Achtung

Durch mkswap ändert sich die UUID der Partition. Falls in Ihrer /etc/fstab die Swap-Partition per UUID eingebunden ist (Standard bei Alma/Rocky/Debian), müssen Sie nach dem Neustart die /etc/fstab editieren und die neue UUID eintragen, sonst wird Swap nicht automatisch aktiv. Wenn die Swap-Partition Ihres Servers nicht per UUID eingebunden ist, müssen Sie nur die Swap-Partition aktivieren. Überspringen Sie in diesem Fall die Bearbeitung der fstab. 

  • Um die UUID zu ermitteln,  passen Sie den folgenden Befehl an und geben Sie diesen anschließend ein:

    [root@host ~]# lsblk -f | grep sdb2

  • Gilt nur, falls die Swap-Partition per UUID eingebunden ist: Um /etc/fstab zu editieren, geben Sie den folgenden Befehl ein:

    [root@host ~]# vi /etc/fstab

Hinweis

Der Editor vi verfügt über einen Einfügemodus und einen Befehls- oder Kommandomodus. Den Einfügemodus können Sie mit der Taste [i] aufrufen. In diesem Modus werden die eingegebenen Zeichen sofort in den Text eingefügt. Um den Befehlsmodus aufzurufen, drücken Sie anschließend [ESC]. Wenn Sie den Befehlsmodus nutzen, werden Ihre Tastatureingaben als Befehl interpretiert.

  • Ersetzen Sie in der Konfiguration in /etc/fstab die UUID.
  • Um vi zu beenden und die Datei zu speichern, geben Sie den Befehl :wq ein und drücken Sie anschließend Enter.
  • Aktivieren Sie die Swap-Partition. Geben Sie hierzu den folgenden Befehl ein:

    [root@host ~]# swapon -a

    Um zu prüfen, ob der Swap-Speicher aktiv ist, geben Sie den folgenden Befehl ein:

    [root@host ~]# cat /proc/swaps