mdadm --zero-superblock /dev/sda2 mdadm --zero-superblock /dev/sda4
Laufendes Linuxsystem auf einer Festplatte, zusätzliche mindestens gleich große zweite neue Festplatte.
Zum Testen können auch zwei Partitionen auf der selben Festplatte genutzt werden.
Große Partition für RAID und kleine für Swap auf der zweiten Festplatte anlegen.
Vorsichtshalber betroffene Blockdevices wipen:
wipefs -af /dev/sda4
parted /dev/sda set 4 raid on
fdisk -l /dev/sda | grep -i raid
gibt aus:
/dev/sda4 63500288 126414847 31457280 fd Linux raid autodetect
bzw.
/dev/sda4 851968 30212095 29360128 14G Linux RAID
apt install mdadm
Autoerkennung auf none
stellen.
dnf install mdadm
mdadm --create /dev/md0 --level=1 --raid-devices=2 --assume-clean /dev/sda2 /dev/sda4 watch cat /proc/mdstat mkfs.ext4 /dev/md0 mkdir /mnt/md0 mount /dev/md0 /mnt/md0 cp -a /usr/share/. /mnt/md0
mdadm /dev/md0 --fail /dev/sda2 cat /proc/mdstat mdadm /dev/md0 --remove /dev/sda2
→ Ergebnis:
cat /proc/mdstat mdadm --detail /dev/md0 mdadm --query --examine /dev/sda2
mdadm /dev/md0 --add /dev/sda2 cat /proc/mdstat
Resync läuft mit angezogener Handbremse, um dem normalen I/O nicht im Weg zu sein. Aktuelle Werte auslesen:
sysctl dev.raid.speed_limit_min sysctl dev.raid.speed_limit_max
Beschleunigen mit:
# 100000 bedeutet: mindestens mit 100.000 K/sec syncen, ohne Rücksicht sysctl dev.raid.speed_limit_min=100000 # Niemals mit mehr als 200 MB/sec syncen sysctl dev.raid.speed_limit_max=200000
→ Resync sollte jetzt schneller laufen:
watch cat /proc/mdstat
RAID 1 in RAID 5 konvertieren:
mdadm --grow /dev/md0 --level=5 mdadm --detail /dev/md0
Platte hinzufügen:
mdadm /dev/md0 --add /dev/vdd1 mdadm --detail /dev/md0
→ Raid Level : raid5
→ Active Devices : 2
Platte aktivieren:
mdadm --grow /dev/md0 --raid-devices=3 mdadm --detail /dev/md0
→ Active Devices : 3
watch cat /proc/mdstat
Dateisystem erweitern:
resize2fs /dev/md0
Reboot/Wiederherstellung nach Crash beschleunigen: (zu Nachteilen siehe: https://raid.wiki.kernel.org/index.php/Write-intent_bitmap)
mdadm --grow --bitmap=internal /dev/md0
mdadm /dev/md0 --add-spare /dev/sda3 cat /proc/mdstat mdadm /dev/md0 --replace /dev/sda2 watch cat /proc/mdstat
Laufendes Linuxsystem auf einer Festplatte, zusätzliche mindestens gleich große zweite neue Festplatte.
Zum Testen können auch zwei Partitionen auf der selben Festplatte genutzt werden.
Große Partition für RAID und kleine für Swap auf der zweiten Festplatte anlegen.
parted /dev/sda set 4 raid on
fdisk -l | grep 'Linux raid autodetect'
/dev/sda4 63500288 126414847 31457280 fd Linux raid autodetect
apt-get install mdadm
Autoerkennung auf ALL
stellen.
mdadm --create /dev/md0 --level=1 --raid-devices=2 missing /dev/sda4 mkfs.ext4 /dev/md0 mkdir /mnt/md0 mount /dev/md0 /mnt/md0
mkdir /tmp/system mount --bind / /tmp/system mount --bind /boot /tmp/system/boot/
cp -a /tmp/system/. /mnt/md0
umount /tmp/system cd /mnt/md0 mount --rbind /dev dev mount --bind /proc proc mount --bind /sys sys
chroot .
mdadm --incremental --rebuild-map grub-mkdevicemap -n update-grub update-initramfs -u
logout reboot
mdadm --manage --add /dev/md/0 /dev/sda2 watch cat /proc/mdstat