Ich habe Ubuntu 11.04 (Kernel 2.6.38-11) ausgeführt. Ich habe 2x160GB durch 2x500GB Laufwerke ersetzt. Sie sind als RAID1 konfiguriert.
Die Partitionstabellen zeigen die richtigen Größen. Hier ist sfdisk:
# sfdisk -d /dev/sdb
# partition table of /dev/sdb
unit: sectors
/dev/sdb1 : start= 63, size= 192717, Id=fd, bootable
/dev/sdb2 : start= 192780, size= 7807590, Id=fd
/dev/sdb3 : start= 8000370, size=968767695, Id=fd
/dev/sdb4 : start= 0, size= 0, Id= 0
Und fdisk:
# fdisk -l /dev/sdb
Disk /dev/sdb: 500.1 GB, 500107862016 bytes
255 heads, 63 sectors/track, 60801 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x0006c78f
Device Boot Start End Blocks Id System
/dev/sdb1 * 1 12 96358+ fd Linux raid autodetect
/dev/sdb2 13 498 3903795 fd Linux raid autodetect
/dev/sdb3 499 60801 484383847+ fd Linux raid autodetect
Aber ich sehe den neuen Raum nicht:
root@green:~# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/md2 143G 134G 8.3G 95% /
root@green:~# mdadm --examine /dev/sdb3
/dev/sdb3:
Magic : a92b4efc
Version : 0.90.00
UUID : b8f83980:f60d820c:74c46fbf:0baa68bc
Creation Time : Sun Mar 29 18:48:46 2009
Raid Level : raid1
Used Dev Size : 152247936 (145.19 GiB 155.90 GB)
Array Size : 152247936 (145.19 GiB 155.90 GB)
Raid Devices : 2
Total Devices : 2
Preferred Minor : 2
Update Time : Mon Oct 10 19:22:36 2011
State : clean
Active Devices : 2
Working Devices : 2
Failed Devices : 0
Spare Devices : 0
Checksum : 7b5debb7 - correct
Events : 10729526
Number Major Minor RaidDevice State
this 0 8 19 0 active sync /dev/sdb3
0 0 8 19 0 active sync /dev/sdb3
1 1 8 3 1 active sync /dev/sda3
Ich habe versucht, mdadm und resize2fs:
# mdadm --grow /dev/md2 --size=max
mdadm: component size of /dev/md2 has been set to 152247936K
# resize2fs /dev/md2
resize2fs 1.41.14 (22-Dec-2010)
The filesystem is already 38061984 blocks long. Nothing to do!
Irgendwelche Ideen?
Auf Anfrage hinzugefügt
# cat /proc/mdstat
Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10]
md2 : active raid1 sdb3[0] sda3[1]
152247936 blocks [2/2] [UU]
md0 : active raid1 sdb1[0] sda1[1]
96256 blocks [2/2] [UU]
md1 : active raid1 sdb2[0] sda2[1]
3903680 blocks [2/2] [UU]
unused devices: <none>
Partitionen
# cat /proc/partitions
major minor #blocks name
8 0 488386584 sda
8 1 96358 sda1
8 2 3903795 sda2
8 3 152248005 sda3
8 16 488386584 sdb
8 17 96358 sdb1
8 18 3903795 sdb2
8 19 152248005 sdb3
9 1 3903680 md1
9 0 96256 md0
9 2 152247936 md2
getrennt:
# parted
GNU Parted 2.3
Using /dev/sda
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) print all
Model: ATA WDC WD5000AAKX-0 (scsi)
Disk /dev/sda: 500GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Number Start End Size Type File system Flags
1 32.3kB 98.7MB 98.7MB primary ext3 boot, raid
2 98.7MB 4096MB 3997MB primary linux-swap(v1) raid
3 4096MB 500GB 496GB primary ext3 raid
Model: ATA WDC WD5000AAKS-4 (scsi)
Disk /dev/sdb: 500GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Number Start End Size Type File system Flags
1 32.3kB 98.7MB 98.7MB primary ext3 boot, raid
2 98.7MB 4096MB 3997MB primary linux-swap(v1) raid
3 4096MB 500GB 496GB primary ext3 raid
Model: Linux Software RAID Array (md)
Disk /dev/md1: 3997MB
Sector size (logical/physical): 512B/512B
Partition Table: loop
Number Start End Size File system Flags
1 0.00B 3997MB 3997MB linux-swap(v1)
Model: Linux Software RAID Array (md)
Disk /dev/md0: 98.6MB
Sector size (logical/physical): 512B/512B
Partition Table: loop
Number Start End Size File system Flags
1 0.00B 98.6MB 98.6MB ext3
Model: Linux Software RAID Array (md)
Disk /dev/md2: 156GB
Sector size (logical/physical): 512B/512B
Partition Table: loop
Number Start End Size File system Flags
1 0.00B 156GB 156GB ext3
Kommentar per E-Mail:
Das Problem liegt in den Metadaten. Sie müssen nur das RAID-Array mit dem Parameter --update devicesize zusammenstellen
und danach -G / dev / md? -z max wird erledigt :)
raid
mdadm
raid1
diskmanagement
Paul Schreiber
quelle
quelle
cat /proc/mdstat
? Wie wäre escat /proc/partitions
?sfdisk
Sie sagen (?) ... Wollen Sie damit sagen, dass Sie auch das Partitionierungsschema der Festplatte kopiert haben?Antworten:
Benutz einfach
Dann können Sie verwenden
Damit das Dateisystem der RAID-Größe entspricht. All dies geschieht online, ohne den md2 aushängen zu müssen.
quelle
resize2fs -p /dev/md2
-p
da ?.Ich benutze mdadm regelmäßig und halte es für eines der gefährlichsten Linux-Dienstprogramme. Wenn Sie jedoch die richtigen Sicherheitsvorkehrungen treffen, können Sie die meisten Fälle von potenziellem Datenverlust vermeiden. Sichern Sie alle Ihre Daten !!! Ich bin in der Vergangenheit zweimal von mdadm gebissen worden, habe über 700 GB an Daten verloren und sehr, sehr wenig davon konnte wiederhergestellt werden. Sie wurden gewarnt.
Es besteht eine sehr gute Chance, dass Sie das RAID-Array erneut erstellen müssen, da mdadm keine Laufwerke erwartet oder kompensiert, die plötzlich an Größe zunehmen. Es wird die im RAID-Superblock angegebene Größe und nicht das Laufwerk selbst verwendet. Sofern die Laufwerke bereits synchronisiert sind, sollten Sie nicht viele Probleme haben.
Denken Sie daran, wenn Sie davon booten möchten, verwenden Sie Superblock Version 0.9.
Bearbeiten
So würde ich es machen, ungetestet !
Erstellen Sie ein RAID1 mit einem fehlenden Tauchgang, damit wir schnell testen können, ob die Daten erhalten bleiben, während noch ein anderes Laufwerk mit einer Kopie der Daten vorhanden ist. Ihre alten Metadaten waren 0,90, daher behalten wir hier die gleiche Version bei.
Hängen Sie es ein, um zu testen, ob alles funktioniert
Überprüfen Sie Ihre Daten
Wenn alles in Ordnung ist, hängen Sie das Laufwerk aus und ändern Sie die Größe.
Wenn alles in Ordnung ist, können Sie das andere Laufwerk zum Array hinzufügen.
und warten Sie, bis die Laufwerke erneut synchronisiert wurden
cat / proc / mdstat
quelle
Aus / proc / partitions geht hervor, dass Linux glaubt, sda3 und sdb3 seien kleiner als sie.
Summieren Sie die Größen der Partitionen
und Sie erhalten eine Zahl, die viel kleiner als die Größe der Festplatte ist.
152248005 Blöcke von 1024 Bytes stimmen mit der Größe überein
mdadm --grow
undresize2fs
melden für md2 .Haben Sie diese Partitionen anfangs mit einer kleineren Größe erstellt und später neu erstellt, um den Rest der Festplatten zu nutzen? In diesem Fall sollte der Kernel beim Neustart die Partitionstabelle erneut lesen können. Danach sollte es funktionieren, das RAID-Gerät zu vergrößern und die Größe des Dateisystems zu ändern.
quelle