RAID5 UP avec 1 disque sur 3...

RAID5 UP avec 1 disque sur 3... - Divers - Linux et OS Alternatifs

Marsh Posté le 21-02-2013 à 16:27:43    

Bonjour,
 
J'ai un raid5 constitués de 3 disques.
Mdadm m'annonce souvent qu'un des disques est en défaut, il me le met en faulty spare, je dois le supprimer de la grappe, puis le rajouter en attendant la synchro du raid. Néanmoins le disque va très bien. Je suspecte le connecteur SATA qui, je trouve, a un peu de jeu. Bref.
 
C'est ce que j'ai fait ce matin, sda1 est en faulty spare, je fais ma petite manipulation et je me rends compte que sdc1 vient aussi de se mettre en défaut. Là je panique. Un raid5, 2 disques down sur 3... Mon dieu j'ai tout perdu.
 

Citation :

# mdadm --detail /dev/md0
/dev/md0:
        Version : 1.2
  Creation Time : Thu Sep  1 23:52:41 2011
     Raid Level : raid5
     Array Size : 3907020800 (3726.03 GiB 4000.79 GB)
  Used Dev Size : 1953510400 (1863.01 GiB 2000.39 GB)
   Raid Devices : 3
  Total Devices : 3
    Persistence : Superblock is persistent
 
    Update Time : Thu Feb 21 16:05:32 2013
          State : clean, FAILED
 Active Devices : 1
Working Devices : 2
 Failed Devices : 1
  Spare Devices : 1
 
         Layout : left-symmetric
     Chunk Size : 512K
 
           Name : rexaura:0  (local to host rexaura)
           UUID : dbf1d320:8faca8d1:3e180267:237d954f
         Events : 96296
 
    Number   Major   Minor   RaidDevice State
       0       0        0        0      removed
       1       0        0        1      removed
       2       8       65        2      active sync   /dev/sde1
 
       0       8        1        -      spare   /dev/sda1
       1       8       33        -      faulty spare   /dev/sdc1


 
Et pourtant j'ai toujours accès à mes données.
 
Plusieurs questions. Que se passe t-il si je supprime sdc1 de la grappe ?
Lorsque j'ai rajouté sda1 à la grappe, j'ai eu le message habituel, mais a priori la synchro n'a pas débuté et c'est à ce moment que je me suis rendu compte qu'un second disque était défaillant.
Je ne peux maintenant plus ajouter sda1 à la grappe
"mdadm: Cannot open /dev/sda1: Device or resource busy"
 
Voilà... J'ai un peu peur pour mes données. Y'a des sauvegardes à certains endroits, mais les 2.5To de données ne sont pas toutes entièrement backupées...
 
Qu'est ce que vous me conseillez de faire ?
 
Merci :)


Message édité par Caelifer le 21-02-2013 à 16:28:03
Reply

Marsh Posté le 21-02-2013 à 16:27:43   

Reply

Marsh Posté le 21-02-2013 à 16:45:16    

Ouais en fait non, j'ai pas trop accès à mes données...
 
Y'a des fichiers que je peux ouvrir mais la plupart non.
 
S'il vous plait ne me dîtes pas que je viens de perdre 2,5 To de données ??
Les disques ne sont même pas morts, c'est juste le RAID qui les voit comme défaillant... Les données sont dessus j'en suis sûr.


Message édité par Caelifer le 21-02-2013 à 16:45:51
Reply

Marsh Posté le 22-02-2013 à 14:29:06    

bha si ... les données que tu vois c'est juste que c'est les buffers qui répondent...
donc si peux remettre au moins un des deux disques qui sont en removed...  
 
tu peux reconstruire puisque tu as un spare.
 
sinon c'est perdu.


---------------
Collectionner les vieux serveurs c'est chouette mais c'est lourd et ça prend de la place ;)
Reply

Marsh Posté le 22-02-2013 à 16:23:53    

Je n'arrive pas à repasser le disque spare dans le raid.

Citation :

mdadm --assemble --force --no-degraded /dev/md0 /dev/sda1 /dev/sdc1 /dev/sde1


Tout ce que j'essaye ce solde par "cannot open device /dev/sda1: Device or resource busy".
 
Est-ce que je peux sortir sda (spare) du RAID et le rajouter ensuite ?
Cela risque t-il de flinguer le RAID (plus qu'il ne l'est déja) ?
 

Citation :

# mdadm --assemble --scan -f
mdadm: No suitable drives found for /dev/md/0_0
mdadm: No arrays found in config file or automatically


En fait mon RAID est en "not started". Est-ce que j'ai besoin de le forcer à démarrer ?

Reply

Marsh Posté le 23-02-2013 à 12:16:58    

# cat /proc/mdstat

Reply

Marsh Posté le 23-02-2013 à 13:27:28    

# cat /proc/mdstat
Personalities : [raid6] [raid5] [raid4]
md0 : inactive sde1[2] sda1[0](S)
      3907021954 blocks super 1.2
 
unused devices: <none>

Reply

Marsh Posté le 23-02-2013 à 13:44:16    

# for i in /dev/sd{a,c,e}1
 do
        mdadm -E $i >> /tmp/disk.txt
 done
 
#  grep Events /tmp/disk.txt

Reply

Marsh Posté le 23-02-2013 à 14:02:42    

Une question :
Est-ce que je peux faire sortir sda1 et sde1 du RAID et en recréer un avec mes trois disques ? Est-ce que mdadm va détecter que ces trois disques faisaient parti d'un même RAID et qu'il va les traiter comme tel ?

Reply

Marsh Posté le 23-02-2013 à 14:15:44    


 # for i in /dev/sd{a,c,e}1; do mdadm -E $i >> /tmp/disk.txt; done
mdadm: /dev/sdc1 is an invalid name for an md device - ignored.
mdadm: /dev/sdc1 is an invalid name for an md device - ignored.
mdadm: /dev/sdc1 is an invalid name for an md device - ignored.
mdadm: /dev/sdc1 is an invalid name for an md device - ignored.
mdadm: /dev/sdc1 is an invalid name for an md device - ignored.
mdadm: /dev/sdc1 is an invalid name for an md device - ignored.
[root@rexaura] ~ # grep Events /tmp/disk.txt
         Events : 96300
         Events : 0
         Events : 96300
         Events : 96300
         Events : 0
         Events : 96300
 
 
Je sais pas trop ce qu'il y a avec sdc...
Je te mets un smartctl au cas où, je ne sais pas trop comment l'interprété.
http://pastebin.com/fEUwkFiX

Reply

Marsh Posté le 23-02-2013 à 18:13:10    

Peux tu poster le contenu complet de disk.txt ?

Reply

Marsh Posté le 23-02-2013 à 18:13:10   

Reply

Marsh Posté le 23-02-2013 à 20:56:19    

http://pastebin.com/ftcUzdPW
 
Qu'est ce que tu en penses ? Ça semble perdu ou pas ?

Reply

Marsh Posté le 24-02-2013 à 01:22:25    

sda1 et sde1 ont le meme event count.
 
Peux tu tenter :
#mdadm -S /dev/md0
#mdadm -A /dev/md0 /dev/sda1 /dev/sde1
 
et me dire si ça fonctionne ?

Reply

Marsh Posté le 24-02-2013 à 17:30:25    

# mdadm -S /dev/md0
mdadm: /dev/sdc1 is an invalid name for an md device - ignored.
mdadm: /dev/sdc1 is an invalid name for an md device - ignored.
mdadm: stopped /dev/md0
[root@rexaura] ~ # mdadm -A /dev/md0 /dev/sda1 /dev/sde1
mdadm: /dev/sdc1 is an invalid name for an md device - ignored.
mdadm: /dev/sdc1 is an invalid name for an md device - ignored.
mdadm: /dev/md0 assembled from 1 drive and 1 spare - not enough to start the array.

Reply

Marsh Posté le 25-02-2013 à 06:20:33    

As-tu encore la commande de création originale du raid et toujours la même version de mdadm et du kernel ?

Reply

Marsh Posté le 25-02-2013 à 12:49:50    

La commande originale devait ressembler très fortement à ça :
mdadm --create /dev/md0 --level=5 --assume-clean --raid-devices=3 /dev/sd[ace]1
A savoir que les disques étaient complètement vierges et de même taille.
 
La même version de mdadm et/ou du kernel, je n'en suis pas sûr. Le kernel c'est quasiment sûr que non, le RAID avait 2 ans, même si Debian pousse pas très vite les maj, j'ai forcément mis à jour le kernel au moins une fois. Après je suis toujours en 2.6.32-5, donc si maj il y a eu, ça ne devait pas être très violent. Pour  mdadm, je n'en sais rien.

Reply

Marsh Posté le 25-02-2013 à 13:05:42    

Dans ce cas je tenterai:
# mdadm -S /dev/md0
# mdadm -Cv /dev/md0 -l5 -n3 /dev/sd{a,e}1 missing --assume-clean

Reply

Marsh Posté le 25-02-2013 à 13:08:50    

Oh, ça semble pas mal.
 
 cat /proc/mdstat
Personalities : [raid6] [raid5] [raid4]
md0 : active (auto-read-only) raid5 sde1[1] sda1[0]
      3907020800 blocks super 1.2 level 5, 512k chunk, algorithm 2 [3/2] [UU_]
 
unused devices: <none>
 
Au final, sdc est peut être bel et bien mort.
 
Je vais attendre la synchro, mais je te remercie énormément pour ton aide, peu importe le résultat !

Reply

Marsh Posté le 25-02-2013 à 13:12:26    

maintenant tu essaye de monter md0
 
# mkdir /mnt/disk ; mount /dev/md0 /mnt/disk

Reply

Marsh Posté le 25-02-2013 à 13:12:38    

tu verifie que tes données sont bien là

Reply

Marsh Posté le 25-02-2013 à 13:12:54    

si c'est le cas tu peux ajouter sdc1
#mdadm /dev/md0 -a /dev/sdc1

Reply

Marsh Posté le 25-02-2013 à 14:00:24    

Bon peut être pas si bien que ça ^^
 
# mount /dev/md0 /raid
mount: wrong fs type, bad option, bad superblock on /dev/md0,
       missing codepage or helper program, or other error
       In some cases useful info is found in syslog - try
       dmesg | tail  or so
 
# dmesg | tail
[245059.557570] 0: w=2 pa=0 pr=3 m=1 a=2 r=3 op1=0 op2=0
[245059.557572] raid5: raid level 5 set md0 active with 2 out of 3 devices, algorithm 2
[245059.557582] RAID5 conf printout:
[245059.557583]  --- rd:3 wd:2
[245059.557585]  disk 0, o:1, dev:sda1
[245059.557586]  disk 1, o:1, dev:sde1
[245059.557604] md0: detected capacity change from 0 to 4000789299200
[245059.557774]  md0: unknown partition table
[248091.061633] EXT3-fs error (device md0): ext3_check_descriptors: Block bitmap for group 16288 not in group (block 291402240)!
[248091.476338] EXT3-fs: group descriptors corrupted!

Reply

Marsh Posté le 25-02-2013 à 14:10:08    

# fsck -n /dev/md0
fsck from util-linux-ng 2.17.2
e2fsck 1.41.12 (17-May-2010)
fsck.ext3: Group descriptors look bad... trying backup blocks...
fsck.ext3: Bad magic number in super-block when using the backup blocks
fsck.ext3: going back to original superblock
Superblock has an invalid journal (inode 8).
Clear? no
 
fsck.ext3: Illegal inode number while checking ext3 journal for /dev/md0
 
 
 # fdisk -l
Disk /dev/md0: 4000.8 GB, 4000789299200 bytes
2 heads, 4 sectors/track, 976755200 cylinders
Units = cylinders of 8 * 512 = 4096 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 524288 bytes / 1048576 bytes
Disk identifier: 0x00000000
 
Disk /dev/md0 doesn't contain a valid partition table

Reply

Marsh Posté le 25-02-2013 à 16:03:07    

Essaye de permuter l'ordre
 
#mdadm -S /dev/md0
# mdadm -Cv /dev/md0 -l5 -n3 /dev/sd{e,a}1 missing --assume-clean
 
a e missing
e a missing
missing a e
missing e a
a missing e
e missing a

Reply

Marsh Posté le 25-02-2013 à 16:12:48    

Oh man, you're my fucking savior ! :D

Reply

Marsh Posté le 25-02-2013 à 16:42:01    

ça a fonctionné ?

Reply

Marsh Posté le 25-02-2013 à 17:41:19    

Ouais. Avec l'ordre original (a c e) ça a fonctionné.
J'ai l'impression que certains fichiers ont disparu, notamment les derniers envoyés sur le RAID. Mais dans l'ensemble tout est là.
 
Enfin tout ça m'apprendra à être plus sérieux sur mes backups. J'étais plus trop à jour et ça m'aurait fait mal ce coup ci. Faut aussi que je réfléchisse à une solution plus pérenne pour mon stockage. Là c'est une tour qui sert exclusivement de serveur NAS, y'a pleins câbles (5 disques en tout) et j'aime pas trop ça, ça se tord de partout.
 
En tout cas gros gros merci pour ton aide !

Reply

Marsh Posté le 25-02-2013 à 21:12:02    

Il faudra maintenant ajouter le disque manquant à ton volume raid

Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed