Die Ausgangssituation ist wie folgt. An meinem Server ist eine HDD als Datenspeicher der Nextcloud vorhanden. Nun möchte ich diese Festplatte mit einer zweiten Festplatte zum RAID 1 verbinden und das, ohne erst alle Daten auf eine externe Festplatte zu kopieren und danach zurück kopieren zu müssen.
Zu Beginn muss die zweite Festplatte an dem Server angeschlossen werden. In meinem Fall ist das SDB.
Dann muss auf dieser Festplatte eine Partition erstellt werden. Das geht am einfachsten mit gparted, aber auch mit anderne CLI-Tools.
Nun kann man mit SDB den RAID 1 erstellen, allerdings mit nur einer Festplatte, also in einem beschädigten Zustand. Dafür nutzt man den Parameter missing
.
mdadm --create /dev/md0 --level 1 --raid-devices=2 missing /dev/sdb1
Nun können wir auf md0 ebenfalls eine Partition erstellen.
Diese Partition kann dann beliebig im Dateisystem des Servers gemountet werden.
mount /dev/md0p1 /mnt/md0
Nun können wir alle Daten von der Datenplatte auf das RAID kopieren. Enteder mit cp
oder mit rsync
.
cp -r <src> <destination>
rsync -a -v --progress --delete -u -s <src> <destination>
Nun haben wir alle Daten auf dem RAID und können die alte Festplatte mit in den RAID aufnehmen.
sudo mdadm --add /dev/md0 /dev/sda1
Sobald die zweite Festplatte hinzugefügt ist, wird automatisch mit dem Rebuild begonnen. Das heißt alle Daten von SDB werden auf SDA gespiegelt.
Den Zustand des RAIDs kann man sich so anzeigen lassen.
mdadm -D /dev/md0
Den Fortschritt des Rebuilds sieht man wie folgt.
cat /proc/mdstat
Ist dieser Vorgang abgeschlossen, hat man einen RAID 1 ohne eine externe Festplatte gebraucht zu haben.