LVM Anleitung · 5 min read · Oct 09, 2025
Ein Anfängerleitfaden zu LVM - Seite 8
8 Ersetzen der Festplatten durch größere
Wir verwenden derzeit vier Festplatten mit einer Größe von jeweils 25 GB (zumindest verhalten wir uns so). Angenommen, das reicht nicht mehr aus und wir benötigen mehr Speicherplatz in unserem RAID-Setup. Daher werden wir unsere 25-GB-Festplatten durch 80-GB-Festplatten ersetzen (tatsächlich werden wir die aktuellen Festplatten weiterhin verwenden, aber jetzt deren volle Kapazität nutzen - im echten Leben würden Sie Ihre alten, kleinen Festplatten durch neue, größere ersetzen).
Das Verfahren ist wie folgt: Zuerst entfernen wir /dev/sdb und /dev/sdd aus den RAID-Arrays, ersetzen sie durch größere Festplatten, setzen sie wieder in die RAID-Arrays ein und machen dann dasselbe erneut mit /dev/sdc und /dev/sde.
Zuerst markieren wir /dev/sdb1 als fehlerhaft:
mdadm --manage /dev/md0 --fail /dev/sdb1server1:~# mdadm --manage /dev/md0 --fail /dev/sdb1
mdadm: set /dev/sdb1 faulty in /dev/md0Die Ausgabe von
cat /proc/mdstatsieht jetzt so aus:
server1:~# cat /proc/mdstat
Persönlichkeiten : [linear] [multipath] [raid0] [raid1] [raid5] [raid4] [raid6] [raid10]
md0 : active raid1 sdc1[0] sdb1[2](F)
24418688 blocks [2/1] [U_]
md1 : active raid1 sde1[0] sdd1[1]
24418688 blocks [2/2] [UU]
unused devices: Dann entfernen wir /dev/sdb1 aus dem RAID-Array /dev/md0:
mdadm --manage /dev/md0 --remove /dev/sdb1server1:~# mdadm --manage /dev/md0 --remove /dev/sdb1
mdadm: hot removed /dev/sdb1cat /proc/mdstatserver1:~# cat /proc/mdstat
Persönlichkeiten : [linear] [multipath] [raid0] [raid1] [raid5] [raid4] [raid6] [raid10]
md0 : active raid1 sdc1[0]
24418688 blocks [2/1] [U_]
md1 : active raid1 sde1[0] sdd1[1]
24418688 blocks [2/2] [UU]
unused devices: Jetzt machen wir dasselbe mit /dev/sdd1:
mdadm --manage /dev/md1 --fail /dev/sdd1server1:~# mdadm --manage /dev/md1 --fail /dev/sdd1
mdadm: set /dev/sdd1 faulty in /dev/md1cat /proc/mdstatserver1:~# cat /proc/mdstat
Persönlichkeiten : [linear] [multipath] [raid0] [raid1] [raid5] [raid4] [raid6] [raid10]
md0 : active raid1 sdc1[0]
24418688 blocks [2/1] [U_]
md1 : active raid1 sde1[0] sdd1[2](F)
24418688 blocks [2/1] [U_]
unused devices: mdadm --manage /dev/md1 --remove /dev/sdd1server1:~# mdadm --manage /dev/md1 --remove /dev/sdd1
mdadm: hot removed /dev/sdd1cat /proc/mdstatserver1:~# cat /proc/mdstat
Persönlichkeiten : [linear] [multipath] [raid0] [raid1] [raid5] [raid4] [raid6] [raid10]
md0 : active raid1 sdc1[0]
24418688 blocks [2/1] [U_]
md1 : active raid1 sde1[0]
24418688 blocks [2/1] [U_]
unused devices: In einem echten System würden Sie jetzt das System herunterfahren, die 25-GB /dev/sdb und /dev/sdd herausziehen und durch 80-GB-Festplatten ersetzen. Wie bereits gesagt, müssen wir das nicht tun, da alle Festplatten bereits eine Kapazität von 80 GB haben.
Als Nächstes müssen wir /dev/sdb und /dev/sdd formatieren. Wir müssen eine /dev/sdb1 bzw. /dev/sdd1-Partition vom Typ fd (Linux RAID-Autodetect), Größe 25 GB (die gleichen Einstellungen wie auf den alten Festplatten) und eine /dev/sdb2 bzw. /dev/sdd2-Partition vom Typ fd erstellen, die den Rest der Festplatten abdecken. Da /dev/sdb1 und /dev/sdd1 noch auf unseren Festplatten vorhanden sind, müssen wir in diesem speziellen Beispiel nur /dev/sdb2 und /dev/sdd2 erstellen.
fdisk /dev/sdbserver1:~# fdisk /dev/sdb
Die Anzahl der Zylinder für diese Festplatte ist auf 10443 gesetzt.
Es ist nichts falsch damit, aber es ist größer als 1024,
und könnte in bestimmten Setups Probleme verursachen mit:
- Software, die beim Booten läuft (z.B. alte Versionen von LILO)
- Boot- und Partitionierungssoftware von anderen OSs
(z.B. DOS FDISK, OS/2 FDISK)
Befehl (m für Hilfe): <– p
Festplatte /dev/sdb: 85.8 GB, 85899345920 Bytes
255 Köpfe, 63 Sektoren/Spur, 10443 Zylinder
Einheiten = Zylinder von 16065 * 512 = 8225280 Bytes
Gerät Boot Start Ende Blöcke Id System
/dev/sdb1 1 3040 24418768+ fd Linux raid autodetect
Befehl (m für Hilfe): <– n
Befehlsaktion
e erweitert
p primäre Partition (1-4)
<– p
Partitionsnummer (1-4): <– 2
Erster Zylinder (3041-10443, Standardwert 3041): <–
Standardwert 3041 verwendet
Letzter Zylinder oder +Größe oder +GrößeM oder +GrößeK (3041-10443, Standardwert 10443): <–
Standardwert 10443 verwendet
Befehl (m für Hilfe): <– t
Partitionsnummer (1-4): <– 2
Hex-Code (Typ L zum Auflisten der Codes): <– fd
Systemtyp der Partition 2 auf fd (Linux raid autodetect) geändert
Befehl (m für Hilfe): <– w
Die Partitionstabelle wurde geändert!
Aufruf von ioctl(), um die Partitionstabelle erneut zu lesen.
Synchronisieren der Festplatten.
Machen Sie dasselbe für /dev/sdd:
fdisk /dev/sddDie Ausgabe von
fdisk -lsieht jetzt so aus:
server1:~# fdisk -l
Festplatte /dev/sda: 21.4 GB, 21474836480 Bytes
255 Köpfe, 63 Sektoren/Spur, 2610 Zylinder
Einheiten = Zylinder von 16065 * 512 = 8225280 Bytes
Gerät Boot Start Ende Blöcke Id System
/dev/sda1 * 1 18 144553+ 83 Linux
/dev/sda2 19 2450 19535040 83 Linux
/dev/sda4 2451 2610 1285200 82 Linux swap / Solaris
Festplatte /dev/sdb: 85.8 GB, 85899345920 Bytes
255 Köpfe, 63 Sektoren/Spur, 10443 Zylinder
Einheiten = Zylinder von 16065 * 512 = 8225280 Bytes
Gerät Boot Start Ende Blöcke Id System
/dev/sdb1 1 3040 24418768+ fd Linux raid autodetect
/dev/sdb2 3041 10443 59464597+ fd Linux raid autodetect
Festplatte /dev/sdc: 85.8 GB, 85899345920 Bytes
255 Köpfe, 63 Sektoren/Spur, 10443 Zylinder
Einheiten = Zylinder von 16065 * 512 = 8225280 Bytes
Gerät Boot Start Ende Blöcke Id System
/dev/sdc1 1 3040 24418768+ fd Linux raid autodetect
Festplatte /dev/sdd: 85.8 GB, 85899345920 Bytes
255 Köpfe, 63 Sektoren/Spur, 10443 Zylinder
Einheiten = Zylinder von 16065 * 512 = 8225280 Bytes
Gerät Boot Start Ende Blöcke Id System
/dev/sdd1 1 3040 24418768+ fd Linux raid autodetect
/dev/sdd2 3041 10443 59464597+ fd Linux raid autodetect
Festplatte /dev/sde: 85.8 GB, 85899345920 Bytes
255 Köpfe, 63 Sektoren/Spur, 10443 Zylinder
Einheiten = Zylinder von 16065 * 512 = 8225280 Bytes
Gerät Boot Start Ende Blöcke Id System
/dev/sde1 1 3040 24418768+ fd Linux raid autodetect
Festplatte /dev/sdf: 85.8 GB, 85899345920 Bytes
255 Köpfe, 63 Sektoren/Spur, 10443 Zylinder
Einheiten = Zylinder von 16065 * 512 = 8225280 Bytes
Gerät Boot Start Ende Blöcke Id System
/dev/sdf1 1 3040 24418768+ 8e Linux LVM
Festplatte /dev/md1: 25.0 GB, 25004736512 Bytes
2 Köpfe, 4 Sektoren/Spur, 6104672 Zylinder
Einheiten = Zylinder von 8 * 512 = 4096 Bytes
Festplatte /dev/md1 enthält keine gültige Partitionstabelle
Festplatte /dev/md0: 25.0 GB, 25004736512 Bytes
2 Köpfe, 4 Sektoren/Spur, 6104672 Zylinder
Einheiten = Zylinder von 8 * 512 = 4096 Bytes
Festplatte /dev/md0 enthält keine gültige PartitionstabelleJetzt fügen wir /dev/sdb1 wieder zu /dev/md0 und /dev/sdd1 zu /dev/md1 hinzu:
mdadm --manage /dev/md0 --add /dev/sdb1server1:~# mdadm --manage /dev/md0 --add /dev/sdb1
mdadm: re-added /dev/sdb1mdadm --manage /dev/md1 --add /dev/sdd1server1:~# mdadm --manage /dev/md1 --add /dev/sdd1
mdadm: re-added /dev/sdd1Jetzt werden die Inhalte beider RAID-Arrays synchronisiert. Wir müssen warten, bis dies abgeschlossen ist, bevor wir fortfahren können. Wir können den Status der Synchronisierung mit
cat /proc/mdstatDie Ausgabe sieht während der Synchronisierung so aus:
server1:~# cat /proc/mdstat
Persönlichkeiten : [linear] [multipath] [raid0] [raid1] [raid5] [raid4] [raid6] [raid10]
md0 : active raid1 sdb1[1] sdc1[0]
24418688 blocks [2/1] [U_]
[=>...................] recovery = 9.9% (2423168/24418688) finish=2.8min speed=127535K/sec
md1 : active raid1 sdd1[1] sde1[0]
24418688 blocks [2/1] [U_]
[=>...................] recovery = 6.4% (1572096/24418688) finish=1.9min speed=196512K/sec
unused devices: und so aus, wenn es abgeschlossen ist:
server1:~# cat /proc/mdstat
Persönlichkeiten : [linear] [multipath] [raid0] [raid1] [raid5] [raid4] [raid6] [raid10]
md0 : active raid1 sdb1[1] sdc1[0]
24418688 blocks [2/2] [UU]
md1 : active raid1 sdd1[1] sde1[0]
24418688 blocks [2/2] [UU]
unused devices: Erhalte neue Beiträge in deinem Posteingang.
Kein Spam. Jederzeit abmelden.