#1 Le 04/10/2010, à 22:05
- LukorNemuse
[Résolu] Récupérer partition RAID 1 après défaillance logicielle
Bonjour à tous,
Mon volume RAID 1 constitué de 2 disques durs (DD) de 1To était ralenti suite à de la fragmentation causée par amule, le rendant inutilisable en le limitant à 200ko/s (notez qu'il est utile de cocher la case "Réserver de la mémoire pour les nouveaux fichiers" dans les réglages de amule), j'ai entrepris une défragmentation manuelle en copiant des dossiers avant de supprimer les dossiers d'origine. En copiant un dossier de quelques dizaines de Go, le gestionnaire de fichiers a planté au milieu de la copie (après plusieurs jours vu le bas débit!). Je redémarre, et à l'écran de démarrage plymouth, le système reste figé, les disques durs cherchent je ne sais quoi, et ne trouvent rien même après plusieurs heures.
Seul moyen pour démarrer: débrancher physiquement un des deux DD. Mais là, plus moyen d'accéder au volume raid.
voilà ce que me dit mdadm
luc@luc-server:~$ mdadm --manage
mdadm: an md device must be given in this mode
donc pas moyen de suive le paragraphe "Que faire lorsqu'un des composants de l'Array vient à défaillir ?" http://doc.ubuntu-fr.org/raid_logiciel
La même chose est obtenue avec l'un ou l'autre des DD, donc la panne n'est pas matérielle.
Il y a bien des choses que je pourrais tenter par exemple avec gnome-disk-utility mais je ne veux prendre aucun risque car mes données sont fondamentales.
Que pourrais-je faire pour récupérer les données. par exemple en convertissant le raid en partition normale puisque je ne peux pas démarrer avec les deux DD branchés?
Dernière modification par LukorNemuse (Le 06/10/2010, à 21:52)
Hors ligne
#2 Le 04/10/2010, à 22:12
- slasher-fun
Re : [Résolu] Récupérer partition RAID 1 après défaillance logicielle
Bonjour,
Sauf que là l'exemple parle d'un RAID 5. Sur un RAID 0, si l'un des disques est mort, l'ensemble des données est perdu.
EDIT : Ah oui je me suis arrêté au titre moi... 0 ou 1 ?
Dernière modification par slasher-fun (Le 04/10/2010, à 22:20)
Hors ligne
#3 Le 04/10/2010, à 22:17
- Frédéric Stemmelin
Re : [Résolu] Récupérer partition RAID 1 après défaillance logicielle
Il te demande le nom du device, soit surement "/dev/md0" ici.
Je commencerais par faire un:
mdadm --detail /dev/md0
pour afficher les détails.
Si tu parles d'un raid 1, corrige le titre du post
Dernière modification par Frédéric Stemmelin (Le 04/10/2010, à 22:18)
Hors ligne
#4 Le 05/10/2010, à 21:30
- LukorNemuse
Re : [Résolu] Récupérer partition RAID 1 après défaillance logicielle
Effectivement, il y avait une confusion de ma part car c'est du RAID 1. Le titre est corrigé.
Après avoir rebranché les deux DD, et attendu une journée à l'écran de plymouth, fsck annonce qu'il y a des erreurs. Après avoir essayé de les corriger, il m'est affiché qu'il y a tjs des erreurs, je choisis de les ignorer et de poursuivre le montage.
Après le démarrage, nautilus reste bloqué quand je vais ouvrir le volume.
voici ce que me donne mdadm:
luc@luc-server:~$ sudo mdadm --detail /dev/md0
/dev/md0:
Version : 00.90
Creation Time : Tue Sep 15 06:09:34 2009
Raid Level : raid1
Array Size : 976759936 (931.51 GiB 1000.20 GB)
Used Dev Size : 976759936 (931.51 GiB 1000.20 GB)
Raid Devices : 2
Total Devices : 2
Preferred Minor : 0
Persistence : Superblock is persistent
Update Time : Tue Oct 5 13:13:40 2010
State : active, resyncing
Active Devices : 2
Working Devices : 2
Failed Devices : 0
Spare Devices : 0
Rebuild Status : 0% complete
UUID : e056c764:5d63bc59:1195d402:d151a60b
Events : 0.1539443
Number Major Minor RaidDevice State
0 8 49 0 active sync /dev/sdd1
1 8 65 1 active sync /dev/sde1
Hors ligne
#5 Le 05/10/2010, à 21:46
- LukorNemuse
Re : [Résolu] Récupérer partition RAID 1 après défaillance logicielle
Après avoir démonté le volume, j'ai lancé une vérification de fichiers avec gnome-disk-utility (utilitaire de disque).
Verdict :
"Vérification du système de fichiers de « Safe » (Volume de disque entier sur Ensemble RAID-1 1.0 TB) terminée
Le système de fichiers n'est PAS propre."
Et avec fsck
luc@luc-server:~$ sudo fsck /dev/sdd1
fsck de util-linux-ng 2.17.2
ATTENTION : mauvais format à la ligne 23 sur /etc/fstab
fsck : fsck.linux_raid_member : non trouvé
fsck : erreur 2 lors de l'exécution de "fsck". linux_raid_member pour /dev/sdd1
luc@luc-server:~$ sudo fsck /dev/sde1
fsck de util-linux-ng 2.17.2
ATTENTION : mauvais format à la ligne 23 sur /etc/fstab
fsck : fsck.linux_raid_member : non trouvé
fsck : erreur 2 lors de l'exécution de "fsck". linux_raid_member pour /dev/sde1
je ne vois pas trop ce que la FSTAB a à voir avec ça d'autant qu'elle est conforme et que la ligne 23 est la dernière ligne vide
# <file system> <mount point> <type> <options> <dump> <pass>
proc /proc proc defaults 0 0
#Disque SSD système /dev/sda1
UUID=fb02e525-3149-4b34-b4f8-82ad5856d7ef / ext4 errors=remount-ro 0 1
#swap /dev/sda5
UUID=a78b97d0-94c3-4faa-8b5c-d5b05fdb5e9d none swap sw 0 0
#DVD-ROM ASUS (RW DL)
# /dev/sr0 #scd0 /media/cdrom udf,iso9660 user,noauto,exec,utf8 0 0
#Disque "Safe" constitué de 2 HDD Western Digital 1000GB en miroir (RAID 1); pass=0: pas de check
UUID=6e0c98f1-9aef-4d7d-bae3-7f9acd98408c /media/Safe ext3 rw,suid,dev,exec,auto,user,user_xattr 0 2
#Disque "Samsung500" (500GB)
UUID=2a09602d-74d5-4a0f-9a19-9c47981c9a2c /media/Samsung500 ext3 rw,suid,dev,exec,auto,user,user_xattr 0 2
#Disque "WD1000" (Western Digital 1TB)
UUID=16c5ad12-8495-45b1-aa88-bba31677fb8d /media/WD1000 ext3 rw,suid,dev,exec,auto,user,user_xattr 0 2
# errors=remount-ro,users,user 00
quant au fsck du volume raid, voilà ce qu'il me donne :
luc@luc-server:~$ sudo fsck /dev/md0
fsck de util-linux-ng 2.17.2
e2fsck 1.41.11 (14-Mar-2010)
La taille du système de fichiers (selon le superbloc) est de 244190000 blocs
La taille physique du périphérique est de 244189984 blocs
Le superbloc ou la table des partitions est peut-être corrompue !
Arrêter<o>?
Comme je travaille sans filet, je n'ose pas aller plus loin, de peur de perdre toutes les données.
Hors ligne
#6 Le 05/10/2010, à 21:59
- slasher-fun
Re : [Résolu] Récupérer partition RAID 1 après défaillance logicielle
Mmm... Que donne un "cat /proc/mdstat" ?
Hors ligne
#7 Le 05/10/2010, à 22:10
- LukorNemuse
Re : [Résolu] Récupérer partition RAID 1 après défaillance logicielle
luc@luc-server:~$ cat /proc/mdstat
Personalities : [raid1] [linear] [multipath] [raid0] [raid6] [raid5] [raid4] [raid10]
md0 : active raid1 sdd1[0] sde1[1]
976759936 blocks [2/2] [UU]
[>....................] resync = 0.4% (4818048/976759936) finish=177958.4min speed=90K/sec
unused devices: <none>
Cela veut-t-il dire que l'un des DD est défaillant et que le système de gestion RAID est en train de copier des données de l'un vers l'autre?
Hors ligne
#8 Le 05/10/2010, à 22:25
- LukorNemuse
Re : [Résolu] Récupérer partition RAID 1 après défaillance logicielle
Quelques minutes après ...
luc@luc-server:~$ cat /proc/mdstat
Personalities : [raid1] [linear] [multipath] [raid0] [raid6] [raid5] [raid4] [raid10]
md0 : active raid1 sdd1[0] sde1[1]
976759936 blocks [2/2] [UU]
[>....................] resync = 0.4% (4861184/976759936) finish=377050.1min speed=42K/sec
unused devices: <none>
Si c'est le temps qu'il faut attendre avant que ça refonctionne, ce sera bon dans... 8.7 mois!
Hors ligne
#9 Le 05/10/2010, à 23:46
- slasher-fun
Re : [Résolu] Récupérer partition RAID 1 après défaillance logicielle
Voilà. À ta place je vérifierais l'intégrité des disques vu la vitesse de copie..
Hors ligne
#10 Le 06/10/2010, à 00:34
- Frédéric Stemmelin
Re : [Résolu] Récupérer partition RAID 1 après défaillance logicielle
Assure toi qu'il y a bien un ventilateur devant les disques histoire qu'ils ne chauffent pas trop, puis laisse tourner un peu la reconstruction du RAID, qui même en temps normal peut durer facilement plus de 24 heures pour 1T.
La vitesse de reconstruction augmentera surement par la suite lorsque les secteurs défectueux seront passés.
"Utilitaire de disque" te permets de faire un test SMART, il va surement te dire s'il y a des secteurs défectueux ...
Hors ligne
#11 Le 06/10/2010, à 02:42
- rmy
Re : [Résolu] Récupérer partition RAID 1 après défaillance logicielle
que donne
dmesg|tail
pour savoir quel disque serait en cause ?
Ensuite la doc
semble expliquer correctement comment se passer d'un des deux disques sur un raid1.
Par contre, si tu as vraiment des données importantes et que l'un de tes disques est mort, ne joues pas avec le feu : fais une image disque de celui qui est sain avant de tenter quoi que ce soit…
récupération de données: vrac–topic unique–mon site pro pour les particuliers : www.diskcard.fr– Je recycle volontiers tous vos disques durs HS (ou pas).
Le site pro pour les pros, spécialiste recupération de données RAID, NAS et serveurs: www.vodata.fr
Hors ligne
#12 Le 06/10/2010, à 14:04
- LukorNemuse
Re : [Résolu] Récupérer partition RAID 1 après défaillance logicielle
Un grand merci à tous pour votre aide!
Au bout d'une nuit d'attente, fsck en est toujours au même stade :
fsck de util-linux-ng 2.17.2
e2fsck 1.41.11 (14-Mar-2010)
La taille du système de fichiers (selon le superbloc) est de 244190000 blocs
La taille physique du périphérique est de 244189984 blocs
Le superbloc ou la table des partitions est peut-être corrompue !
Arrêter<o>? non
Safe contient un système de fichiers comportant des erreurs, vérification forcée.
Passe 1 : vérification des i-noeuds, des blocs et des tailles
D'autre part, j'obtiens
luc@luc-server:~$ dmesg|tail
[66966.990205] ata4: EH complete
[66984.023765] ata4.00: exception Emask 0x0 SAct 0x1 SErr 0x0 action 0x0
[66984.023773] ata4.00: irq_stat 0x40000008
[66984.023780] ata4.00: failed command: READ FPDMA QUEUED
[66984.023793] ata4.00: cmd 60/80:00:bf:71:ed/00:00:00:00:00/40 tag 0 ncq 65536 in
[66984.023795] res 41/10:00:c1:71:ed/00:00:00:00:00/40 Emask 0x481 (invalid argument) <F>
[66984.023801] ata4.00: status: { DRDY ERR }
[66984.023805] ata4.00: error: { IDNF }
[66984.025602] ata4.00: configured for UDMA/133
[66984.025617] ata4: EH complete
Bien qu'ayant jeté un oeil sur le net, ça rete du chinois pour moi, mais il est clair que cela indique des erreurs.
Quant à l'utilitaire de disque il me dit bizarrement que l'un des deux est considéré en PATA (sde1) et l'autre en SATA (sdd1) alors qu'ils sont identiques
Auto-test SMART:
sde1: "Le disque est sain"
sdd1: "Le disque présente quelques secteurs endommagés"
Plus précisément, les points en rouge:
5. Nombre de secteurs réalloués :
Normalisé: 173
La pire: 173
Seuil: 140
Valeur: 213 secteurs
197. Nombre de secteurs en attente :
Normalisé: 194
La pire: 194
Seuil: 0
Valeur: 1052 secteurs
Donc si je vous suis bien, les actions à entreprendre pour restaurer le disque sans risque de tout perdre sont les suivantes :
1. Faire une image disque
Apparemment, ça peut être fait avec Partimage ou Clonezilla mais je pense que le plus simple serait
dd if=/dev/sdd of=/dev/sdz9 conv=notrunc,noerror
avec sdz9 un DD externe que je vais acheter pour l'occasion et qui me servira de backup
Cela vous paraît-il OK?
2. désactiver le DD défaillant
sudo mdadm /dev/md0 -f /dev/sdd1
Et là les données devraient être accessibles sur le DD non défaillant.
Hors ligne
#13 Le 06/10/2010, à 14:37
- LukorNemuse
Re : [Résolu] Récupérer partition RAID 1 après défaillance logicielle
Recification , c'était
dd if=/dev/sde1 of=/dev/sdz9 conv=notrunc,noerror
Hors ligne
#14 Le 06/10/2010, à 15:16
- SnakemaN
Re : [Résolu] Récupérer partition RAID 1 après défaillance logicielle
Je ne saurais t'aider dans le cas présent.
Mais pour la prochaine fois, si tu as des copies lourdes à faire, pense a utiliser un gestionnaire de copie (Genre SuperCopier sous Windows)
Il y a par exemple ultracopier, ou encore minicopier
Ca peut sans doute éviter des mésaventures de ce genre.
"Bon chat n'a besoin de beau collier d'or "
Membre du Groupe des Parrains Linux
Hors ligne
#15 Le 06/10/2010, à 16:56
- rmy
Re : [Résolu] Récupérer partition RAID 1 après défaillance logicielle
tu peux aussi utiliser ddrescue, tout à fait adapté à de la copie sur disque, même endommagé. Tu n'est par ailleurs pas obligé de faire une image disque vers disque. Tu peux faire une image disque vers fichier :
sudo ddrescue -n /dev/sde /media/pointdemontage_de_sdz9/imagesde.img
ou la même chose avec l'image de la partition sde1 seule, en remplaçant sde par sde1.
La démarche que tu décris me parait être la bonne, et de toutes façons après une image saine et complète tu peux te permettre le retour en arrière.
récupération de données: vrac–topic unique–mon site pro pour les particuliers : www.diskcard.fr– Je recycle volontiers tous vos disques durs HS (ou pas).
Le site pro pour les pros, spécialiste recupération de données RAID, NAS et serveurs: www.vodata.fr
Hors ligne
#16 Le 06/10/2010, à 17:00
- Frédéric Stemmelin
Re : [Résolu] Récupérer partition RAID 1 après défaillance logicielle
Personnellement je pense qu'il ne faudrait pas faire de "dd", mais simplement désactiver le disque défaillant du raid avec ta commande "sudo mdadm /dev/md0 -f /dev/sdd1", puis par sécurité, recopier les données utiles de ton disque valide sur un autre disque, externe par exemple (avec la commande "cp -R -p" ou en graphique).
Mais il te faudra de toute façon remplacer le disque défectueux "/dev/sdd" par un autre, de préférence de taille identique.
Voici donc ce que je préconise, mais il existe d'autres méthodes toutes aussi valables:
- sudo mdadm /dev/md0 -f /dev/sdd1
- boot sur livecd (ou éviter le montage auto de /dev/md0), faire un fsck sur le système de fichier intact pour vérifier (/dev/sde1), quitte à ne pas réparer
- copier les fichiers de ce fs sur un autre disque (externe ?)
- remplacer le disque défectueux "/dev/sdd" par un autre de même taille
- reconstruire le raid avec le nouveau disque pour refaire du raid 1
- mettre en place une politique de sauvegarde car un raid ne protège pas des suppressions accidentelles.
La partie sensible est le fsck, à toi de voir pour prendre ce risque.
Hors ligne
#17 Le 06/10/2010, à 17:05
- rmy
Re : [Résolu] Récupérer partition RAID 1 après défaillance logicielle
Personnellement je pense qu'il ne faudrait pas faire de "dd", mais simplement désactiver le disque défaillant du raid
La partie sensible est le fsck, à toi de voir pour prendre ce risque.
+1, d'où le conseil de la sauvegarde préalable pour avoir une image avant de bosser sur une situation sensible. Mais l'image en elle-même n'est pas utile à la récup.
récupération de données: vrac–topic unique–mon site pro pour les particuliers : www.diskcard.fr– Je recycle volontiers tous vos disques durs HS (ou pas).
Le site pro pour les pros, spécialiste recupération de données RAID, NAS et serveurs: www.vodata.fr
Hors ligne
#18 Le 06/10/2010, à 21:26
- LukorNemuse
Re : [Résolu] Récupérer partition RAID 1 après défaillance logicielle
J'ai pu récupérer toutes les données, je détaille pour ceux que ça pourrait aider par la suite :
1. déactiver le disque défectueux (identifié par l'utilitaire de disque)
sudo mdadm /dev/md0 -f /dev/sdd1
2. mettre noauto au lieu de auto dans /etc/fstab à la ligne qui concerne ce volume raid
3. Redémarrer
4. monter le volume raid
sudo mount /dev/md0 /media/Safe
Donc le système RAID 1 a prouvé son efficacité de tolérance de panne.
Par contre il semble que les disques durs Western Digital Green que j'ai soient déconseillés pour du RAID, ce que tend à confirmer cette défaillance.
Je vais abandonner le RAID 1 logiciel qui est hyper lent pour passer à un système de sauvegarde sur disques durs externes. Une copie sur l'ordinateur central et une copie sur un DD dans un placard, mis à jour quelques fois par an me paraît suffisant.
Un grand merci à tous pour mon premier recours à la communauté sur ce forum.
Hors ligne