J'ai couru Ubuntu 11.04 (noyau 2.6.38-11). J'ai remplacé 2x160GB avec des lecteurs de 2x500 Go. Ils sont configurés comme RAID1.
Les tables de partition montrent les bonnes tailles. Voici 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
Et 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
Mais je ne vois pas le nouvel espace:
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
J'ai essayé mdadm et 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!
Des idées?
Ajouté par demande
# 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>
partitions
# 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
partagé:
# 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
Commentaire par email:
le problème est en métadonnées, vous devez simplement assembler la matrice RAID avec Paramètre -Utilisateur
et après ça -g/dev/md? -z max aura faire le travail :)
Juste utiliser
mdadm --grow --size max /dev/md2
Ensuite, vous pourrez utiliser
resize2fs /dev/md2
Pour laisser le système de fichiers correspondre à la taille du raid. Tout cela est fait en ligne sans même démontrer le MD2.
J'utilise régulièrement Mdadm et considérez-le l'un des utilitaires Linux les plus dangereux. Toutefois, si vous utilisez les précautions de sécurité correctes, vous pouvez éviter la plupart des cas de perte de données potentielle sauvegarder toutes vos données !!! J'ai été mordu à deux fois par Mdadm dans le passé, j'ai perdu plus de 700 Go de données et très très peu de choses pouvaient être récupérées, vous avez été prévenu.
Il y a une très bonne chance que vous aurez besoin de créer la matrice RAID lorsque MdAdm ne s'attend pas à ce que MDADM ne s'attend pas ou ne compense pas les lecteurs d'augmentation soudainement. Il utilisera la taille indiquée dans le SUPERBLOCK RAID et non le lecteur lui-même. À condition que les lecteurs soient déjà synchronisés, vous ne devriez pas avoir de nombreux problèmes.
N'oubliez pas que si vous souhaitez démarrer, utilisez Superblock version 0.9.
éditer
C'est comme ça que je le ferais, non testé!
Créez un RAID1 avec une plongée manquante Juste afin que nous puissions vérifier rapidement que les données restent tout en ayant encore un autre lecteur avec une copie des données, votre vieille métadonnée était de 0,90 afin que nous gardes la même version ici.
mdadm --create /dev/md2 --level=mirror --metadata=0.90 --raid-devices=2 missing /dev/sdb3
Montez-le pour tester que tout fonctionne
mkdir /mnt/test
mount /dev/md2 /mnt/test
vérifiez vos données
ls -l /mnt/test
Si tout semble bien, démontez le lecteur et redimensionnez-vous.
unmount /mnt/md2
resize2fs /dev/md2
Une fois que tout est d'accord, vous pouvez ajouter l'autre lecteur à la matrice.
mdadm --add /dev/md2 /dev/sdb3
et attendez que les lecteurs se résynchent
cAT/PROC/MDSTAT
De regarder --/ proc/partitions, il est évident que Linux pense SDA et SDB sont plus petits qu'ils ne le sont.
Sum à la taille des partitions
8 17 96358 sdb1
8 18 3903795 sdb2
8 19 152248005 sdb3
et vous obtiendrez un nombre beaucoup plus bas que la taille du disque.
8 16 488386584 sdb
152248005 Les blocs de 1024 octets sont compatibles avec la taille mdadm --grow
et resize2fs
signalez-vous pour MD2.
Avez-vous initialement créé ces partitions avec une taille plus petite, puis les recréer ultérieurement pour utiliser le reste des disques? Si tel est le cas, le redémarrage devrait permettre au noyau de relire la table de partition. Après cela, la croissance du périphérique RAID et le redimensionnement du système de fichiers devraient fonctionner.