web-dev-qa-db-fra.com

Raid apparaît comme plusieurs disques - ne peut pas monter

J'ai un seul disque dur sur lequel le système d'exploitation est installé et j'ai une carte de raid Sil installée avec deux disques durs de 500 Go correspondants configurés dans le Raid 0 et formatés - ils sont complètement vides. Pour une raison quelconque, ils apparaissent sous la forme/dev/sdb et/dev/sdc et non comme un seul disque dur. J'ai utilisé fdisk pour formater les deux disques raid en tant que Linux raid auto (fd) mais je ne peux monter aucun des appareils et dmraid ne semble pas vouloir fonctionner, quelle étape est-ce que je manque?

Quand j'ai installé 9.04 il y a si longtemps, il semble qu'il ait reconnu et fait automatiquement tout ce qui devait être fait, maintenant je suis bloqué.

sortie dmraid

root @ tripoli: ~ # dmraid -r

/dev/sdc: sil, "sil_biaebhadcfcb", stripe, ok, 976771072 sectors, data@ 0
/dev/sdb: sil, "sil_biaebhadcfcb", stripe, ok, 976771072 sectors, data@ 0

root @ tripoli: ~ # dmraid -ay

RAID set "sil_biaebhadcfcb" already active

Sortie fdisk

root @ tripoli: ~ # fdisk -l

Disk /dev/sda: 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: 0x000b9b01

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1          32      248832   83  Linux
Partition 1 does not end on cylinder boundary.
/dev/sda2              32       60802   488134657    5  Extended
/dev/sda5              32       60802   488134656   8e  Linux LVM

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: 0x6ead5c9a

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1               1       60801   488384001   fd  Linux raid autodetect

Disk /dev/sdc: 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: 0xe6e2af28

   Device Boot      Start         End      Blocks   Id  System
/dev/sdc1               1       60801   488384001   fd  Linux raid autodetect
1
manyxcxi

Vous utilisez dmraid/fakeraid - pour cela, vous ne devez pas formater les disques sous-jacents, mais le périphérique fakeraid résultant. Vous avez peut-être endommagé les métadonnées du BIOS en partitionnant les disques sous-jacents afin:

  • Utilisez votre BIOS pour casser et réinitialiser l'ensemble de raid
  • partitionnez l'ensemble de raid - ce sera quelque chose comme / dev/sil_biaebhadcfcb ou / dev/mapper/sil_biaebhadcfcb
  • Installez sur les partitions que vous avez créées.

Ce que vous semblez avoir fait, c'est créer deux super blocs RAID, un sur le disque brut et sur la partition.

/dev/sdc: sil, "sil_biaebhadcfcb", stripe, ok, 976771072 secteurs, données @ 0 
/dev/sdb: sil, "sil_biaebhadcfcb", stripe, ok, 976771072 secteurs, données @ 0 

Dit qu'il utilise le disque brut, le dmraid fonctionne réellement, le problème est que vous avez des données supplémentaires qui pourraient vous donner une mauvaise journée si l'un des lecteurs est marginalisé, comme le premier superbloc devient illisible et dmraid scanne avec bonheur le second un, essaie de le réparer avec le partenaire, qui utilise toujours le disque entier, et maintenant vous avez une différence de taille.

Si c'était le cas, moi, j'effacerais tout et recommencerais. Je n'ai pas de solution prête qui supprimera le superbloc de l'espace partitionné sans courir le risque d'endommager le superbloc sur le disque brut.

La documentation que vous avez suivie ne mentionne-t-elle pas que le résultat attendu de cette opération est un nouveau périphérique de bloc dans/dev/mapper?

Un format "bas niveau" peut être obtenu par dd if=/dev/zero of=/dev/sdX

1
lifeless