PDA

Afficher la version complète : [Résolu] Gros Pb avec RAID 1 crashé



MD25
09/03/2009, 14h12
Help !

J'ai un gros Pb avec mon PC de boulôt (vieux de 3 mois seulement !) :
J'ai (J'avais ? :( ) 2 disques durs identiques en RAID 1 (controllé par le Intel Storage Matrix trucmuche du ICH10R de ma GA-EX58-UD5).
Ces deniers jours j'entendais le disque dur gratter de temps en temps et ce matin (en plein milieu d'une mise à jour d'openoffice), il s'est bloqué.
Je ne sais plus si j'ai activé l'option SMART dans le BIOS avant ou après que les problèmes ne commencent (j'ai l'impression après), mais en tout cas, j'ai vu dans les /var/log/messages qu'il m'envoyait plein de message concernant /dev/sdb). (cf. un autre message dans ce forum).
Maintenant après plusieurs reboot avec des fsck -V / et pas mal d'interventions sur des inodes et des blocks, l'interface graphique boote mais avec un écran noir sauf une konsole et firefox que j'avais en service pendant le dernier boot normal.
Au démarrage du PC dans la partie RAID (accessible avec Ctrl I), il est dir que le volume 0 est en état rebuild et que le système d'exploitation devrait s'en charger...

=> Pourriez-vous SVP me donner quelques éclaircissements sur tout cela car je suis un peu perdu (c'est mon premier crash avec un RAID) ?
Puis-je encore passer des commandes pour essayer de reconstruire le RAID correctement et surtout ne pas être obligé de réinitialiser les disques en enlevant le RAID ?

Je me demande quand même sérieusement si ce n'est pas le fait d'avoir activé SMART dans le BIOS qui m'a causé tout ce bazar !

thveillon
09/03/2009, 23h46
Smart n'y est sans doute pour rien, j'ai déjà eu un disque dur qui a lâché lors de sa première utilisation...

Un disque a certainement lâché, ton système raid a démarré en mode "dégradé", c'est à dire avec un seul disque. Il faut remplacer le disque et reconstruire le raid. Si tu as un message disant que le système doit s'en charger, c'est que tu fais du "soft raid", ou raid logiciel. Je pense qu'après insertion du nouveau disque il te faudra utiliser


mdadm /dev/md* --add /dev/sd*

où /dev/md* est ton ensemble raid, et /dev/sd* le nouveau disque. Tu peux suivre les oprérations de reconstruction avec "mdadm --detail /dev/md*". Je ne sais pas si sur la Suse Yast dispose d'un outils particulier pour faire ça, à vérifier.

Attention, ton système reste en mode dégradé jusqu'à reconstruction du volume raid, il faut l'utiliser le moins possible, surtout si les deux disques étaient de même modèle et achetés en même temps: ça augmente les risques qu'ils aient le même défaut !

Enfin en règle général, c'est le genre de commandes et de situations sur lesquelles on se documente AVANT de mettre en place un raid, un lvm ... ;)

MD25
10/03/2009, 00h09
Je ne sais toujours pas ce que j'aurais dû faire, mais à force de fsck et de réinstallation de tous les packages avec un k déjà installés) avec Yast en mode console (pour compenser les fichiers avec des secteurs ne contenant plus que des bêtises du fait des réparations de secteurs morts) (exemple : fichier kompare.desktop qui ne comprenait plus de texte lisible...), Je suis arrivé à pouvoir relancer plasma (mais sans le menu K et sans les cases pour les programmes en train de tourner).
Un 'kicker' m'a alors ramené une deuxième barre en bas avec ce qui correspond probablement à du KDE 3 ?

En bref, je patauge, mais j'ai réussi à avoir quelque chose pour travailler, au moins jusqu'au prochain reboot...

J'ai aussi pu déterminer le numéro de série du disque qui me posait problème et donc physiquement lequel de mes deux disques identiques c'était.

Pb : si je l'enlève, je fais comment pour pouvoir continuer à utiliser l'autre ? Lors de mes essais précédents, je l'ai débranché et je suis repassé de RAID à AHCI dans le bios, mais cela n'avait pas marché...


<div class='quotetop'>Citation (thveillon @ 9/03/2009 à 22:46) <{POST_SNAPBACK}> (index.php?act=findpost&pid=203823)</div>
Attention, ton système reste en mode dégradé jusqu'à reconstruction du volume raid, il faut l'utiliser le moins possible, surtout si les deux disques étaient de même modèle et achetés en même temps: ça augmente les risques qu'ils aient le même défaut !

Enfin en règle général, c'est le genre de commandes et de situations sur lesquelles on se documente AVANT de mettre en place un raid, un lvm ... ;)[/b]

Désolé, j'ai commencé mon message précédent avant d'avoir vu ta réponse.
Merci pour les commandes mdadm. Je testerais quand je pourrai, car je n'ai pas de disque SATA II de 500 Go en rab. Il va me falloir attendre le retour du SAV, ..., quand j'aurai réussi à trouver un truc pour enlever le disque fautif et continuer à utiliser ma machine sans devoir tout réinstaller le système...

Sinon, sur ta dernière remarque, c'est toujours le problème : pour comprendre les explications techniques sans y passer des plombes, il faut bien souvent se retrouver en situation, car sinon, cela ne nous évoque pas grand chose ou cela rentre par une oreille et cela ressort par une autre. (Je me trouve les justifications que je peux ! <_< )
L'expérience en informatique, c'est la somme des problèmes auquel on a déjà été confronté, non ? ;-)

J'ai déjà eu pas mal de crashes disque avant entre la maison et le boulot et je voulais me mettre à l'abri de devoir réinstaller et surtout reconfigurer tout mon système. Dans la pub, on ne te dit pas que si un disque crashe, tu devras obligatoirement attendre d'en remettre un autre pour récupérer tes données, on te dit seulement qu'en cas de crash tu ne perdras pas tes données...

xiloa
10/03/2009, 10h39
[/b]
Salut

1 - Un disque en train de mourrir est un disque qui va mourrir. Donc, élimination sans état d'ame du fautif.
2 - Le Raid n'est PAS un systeme de sauvegarde : ça fiabilise, mais ça ne sauvegarde pas.

Donc, cqfd : tu es bon pour acheter 2 DD, 1 pour compléter ton RAID ( ! on pas change pas de raid à ahci comme celà ! tu joue avc le feu!!) et pour te faire un disque de sauvegarde. Une bonne remarque judicieuse de thveillon, c'est de prendre 2 marques différentes, pour éviter le syndrome de la mauvaise série.

MD25
10/03/2009, 15h49
Donc, cqfd : tu es bon pour acheter 2 DD, 1 pour compléter ton RAID ( ! on pas change pas de raid à ahci comme celà ! tu joue avc le feu!!) et pour te faire un disque de sauvegarde. Une bonne remarque judicieuse de thveillon, c'est de prendre 2 marques différentes, pour éviter le syndrome de la mauvaise série.[/b]

OK, vous m'avez convaincu, mais dans la pratique, lorsque je vais enlever le disque malade pour l'envoyer au SAV, je n'ai plus de système en attendant le retour ou j'ai un moyen de ne fonctionner que sur le disque restant ?

Torrent
10/03/2009, 19h13
Pour contrôler votre raid, faites :
#dmraid -s

Pour voir où en sont les disques, installez smartmontools
Puis utilisez , en tant que su, la commande
#smartctl -s on /dev/hda pour "lancer" smartmontools, puis par exemple la commande
#smartctl -a /dev/hda | grep Load_Cycle pour connaitre l'usure
Faire un man smartctl pour + d'options

MD25
10/03/2009, 19h49
Pour contrôler votre raid, faites :
#dmraid -s[/b]
<div class='codetop'>CODE</div><div class='codemain' style='height:200px;white-space:pre;overflow:auto'>dmraid -s
*** Group superset isw_dhfjhjdgdh
--> Active Subset
name : isw_dhfjhjdgdh_Volume0
size : 976766976
stride : 128
type : mirror
status : ok
subsets: 0
devs : 2</div>
<div class='quotetop'>Citation (Torrent @ 10/03/2009 à 18:13) <{POST_SNAPBACK}> (index.php?act=findpost&pid=203871)</div>
Pour voir où en sont les disques, installez smartmontools
Puis utilisez , en tant que su, la commande
#smartctl -s on /dev/hda pour "lancer" smartmontools, puis par exemple la commande
#smartctl -a /dev/hda | grep Load_Cycle pour connaitre l'usure
Faire un man smartctl pour + d'options[/b]
<div class='codetop'>CODE</div><div class='codemain' style='height:200px;white-space:pre;overflow:auto'>smartctl -s on /dev/sda
smartctl 5.39 2008-10-24 22:33 [x86_64-suse-linux-gnu] (openSUSE RPM)
Copyright © 2002-8 by Bruce Allen, http://smartmontools.sourceforge.net

=== START OF ENABLE/DISABLE COMMANDS SECTION ===
SMART Enabled.</div>
et idem sur /dev/sdb
Le grep Load_Cycle ne m'a rien donné ni sur sda ni sur sdb.
Merci pour ces commandes qui augmentent bien ma culture sur le sujet !

Pour sda, j'ai vu que 0 errors logged, alors que sur sdb (excusez du peu ! ;-)) :
<div class='codetop'>CODE</div><div class='codemain' style='height:200px;white-space:pre;overflow:auto'>ATA Error Count: 198 (device log contains only the most recent five errors)
CR = Command Register [HEX]
FR = Features Register [HEX]
SC = Sector Count Register [HEX]
SN = Sector Number Register [HEX]
CL = Cylinder Low Register [HEX]
CH = Cylinder High Register [HEX]
DH = Device/Head Register [HEX]
DC = Device Command Register [HEX]
ER = Error register [HEX]
ST = Status register [HEX]
Powered_Up_Time is measured from power on, and printed as
DDd+hh:mm:SS.sss where DD=days, hh=hours, mm=minutes,
SS=sec, and sss=millisec. It "wraps" after 49.710 days.

Error 198 occurred at disk power-on lifetime: 1496 hours (62 days + 8 hours)
When the command that caused the error occurred, the device was active or idle.

After command completion occurred, registers were:
ER ST SC SN CL CH DH
-- -- -- -- -- -- --
04 71 04 9d 00 32 40

Commands leading to the command that caused the error were:
CR FR SC SN CL CH DH DC Powered_Up_Time Command/Feature_Name
-- -- -- -- -- -- -- -- ---------------- --------------------
ec 00 00 00 00 00 00 00 00:40:14.313 IDENTIFY DEVICE
00 00 00 00 00 00 00 ff 00:40:14.292 NOP [Abort queued commands]
00 00 00 00 00 00 00 ff 00:39:49.434 NOP [Abort queued commands]
ec 00 01 00 00 00 a0 00 00:39:01.748 IDENTIFY DEVICE
00 00 00 00 00 00 00 ff 00:39:01.671 NOP [Abort queued commands]

Error 197 occurred at disk power-on lifetime: 1496 hours (62 days + 8 hours)
When the command that caused the error occurred, the device was active or idle.

After command completion occurred, registers were:
ER ST SC SN CL CH DH
-- -- -- -- -- -- --
04 71 04 9d 00 32 e0

Commands leading to the command that caused the error were:
CR FR SC SN CL CH DH DC Powered_Up_Time Command/Feature_Name
-- -- -- -- -- -- -- -- ---------------- --------------------
ec 00 01 00 00 00 a0 00 00:39:01.748 IDENTIFY DEVICE
00 00 00 00 00 00 00 ff 00:39:01.671 NOP [Abort queued commands]
00 00 00 00 00 00 00 ff 00:38:46.327 NOP [Abort queued commands]
00 00 00 00 00 00 00 ff 00:38:40.267 NOP [Abort queued commands]
00 00 00 00 00 00 00 ff 00:38:40.074 NOP [Abort queued commands]

Error 196 occurred at disk power-on lifetime: 1496 hours (62 days + 8 hours)
When the command that caused the error occurred, the device was active or idle.

After command completion occurred, registers were:
ER ST SC SN CL CH DH
-- -- -- -- -- -- --
04 71 04 9d 00 32 40

Commands leading to the command that caused the error were:
CR FR SC SN CL CH DH DC Powered_Up_Time Command/Feature_Name
-- -- -- -- -- -- -- -- ---------------- --------------------
ec 00 00 00 00 00 00 00 00:37:50.450 IDENTIFY DEVICE
00 00 00 00 00 00 00 ff 00:37:50.430 NOP [Abort queued commands]
00 00 00 00 00 00 00 ff 00:37:33.808 NOP [Abort queued commands]
ec 00 01 00 00 00 a0 00 00:37:01.948 IDENTIFY DEVICE
00 00 00 00 00 00 00 ff 00:37:01.890 NOP [Abort queued commands]

Error 195 occurred at disk power-on lifetime: 1496 hours (62 days + 8 hours)
When the command that caused the error occurred, the device was active or idle.

After command completion occurred, registers were:
ER ST SC SN CL CH DH
-- -- -- -- -- -- --
04 71 04 9d 00 32 e0

Commands leading to the command that caused the error were:
CR FR SC SN CL CH DH DC Powered_Up_Time Command/Feature_Name
-- -- -- -- -- -- -- -- ---------------- --------------------
ec 00 01 00 00 00 a0 00 00:37:01.948 IDENTIFY DEVICE
00 00 00 00 00 00 00 ff 00:37:01.890 NOP [Abort queued commands]
00 00 00 00 00 00 00 ff 00:36:51.547 NOP [Abort queued commands]
00 00 00 00 00 00 00 ff 00:36:45.730 NOP [Abort queued commands]
00 00 00 00 00 00 00 ff 00:36:45.537 NOP [Abort queued commands]

Error 194 occurred at disk power-on lifetime: 1496 hours (62 days + 8 hours)
When the command that caused the error occurred, the device was active or idle.

After command completion occurred, registers were:
ER ST SC SN CL CH DH
-- -- -- -- -- -- --
04 71 04 9d 00 32 e0 Device Fault; Error: ABRT

Commands leading to the command that caused the error were:
CR FR SC SN CL CH DH DC Powered_Up_Time Command/Feature_Name
-- -- -- -- -- -- -- -- ---------------- --------------------
a1 00 00 00 00 00 a0 00 00:35:43.444 IDENTIFY PACKET DEVICE
ec 00 00 00 00 00 a0 00 00:35:43.443 IDENTIFY DEVICE
00 00 00 00 00 00 00 04 00:35:43.287 NOP [Abort queued commands]
00 00 00 00 00 00 00 ff 00:35:42.967 NOP [Abort queued commands]
00 00 00 00 00 00 00 ff 00:35:41.948 NOP [Abort queued commands]</div>

Je pense que la cause est entendue pour ce /sdb.
Mon Pb maintenant est comment m'en sortir avec le minimum de temps d'indisponibilité de la machine ?

Torrent
10/03/2009, 21h45
Désolé, parti en déplacement, je retrouve ma SuSE que ce week-end

thveillon
11/03/2009, 03h00
Oups, j'ai raté un bout de la discussion.

Visiblement tu utilises dmraid et pas mdadm, ce qui est normal sur du "fakeraid". J'ai toujours utilisé mdadm et du raid logiciel, mes essaies et lectures sur le "fakeraid" des contrôleurs de cartes mères grand public m'ont montré que les perfs ne sont pas meilleurs, l'outils (mdadm) est plus souple, et surtout en cas de défaillance du contrôleur "fakeraid" il est parfois impossible de récupérer le volume. Par comparaison avec le raid logiciel et mdadm on peut même changer le volume d'ordinateur et le réutiliser assez facilement.

Cela dit, ça ne t'avance pas beaucoup.

Le manuel de dmraid donne "raidhotremove /dev/md* /dev/sdb*" pour sortir une partition du volume raid. Le volume reste fonctionnel (en mode dégradé). Avec du raid logiciel ça signifie que l'on peut rédmarrer et utiliser le système normalement, et retirer le disque fautif pour en ajouter un autre. Dans ton cas de "fakeraid" je ne sais pas si le mode dégradé te permettra d'utiliser le système normalement.

L'autre solution consiste à annuler le raid, pour redémarrer sur le disque qui fonctionne comme un disque normal. Mais dans ce cas il faut revoir à la main le fstab, le menu grub, reconstruire un initrd sans le module dmraid, et désactiver le raid dans le bios.


Dans les deux cas il te faut une sauvegarde de tes données avant de jouer avec le raid, et considérer que si les deux disques sont de même série et même age, le risque d'une double panne peut être élevé... En raid1 ils ont subit exactement la même activité.

MD25
11/03/2009, 14h38
Le manuel de dmraid donne "raidhotremove /dev/md* /dev/sdb*" pour sortir une partition du volume raid. Le volume reste fonctionnel (en mode dégradé). Avec du raid logiciel ça signifie que l'on peut rédmarrer et utiliser le système normalement, et retirer le disque fautif pour en ajouter un autre. Dans ton cas de "fakeraid" je ne sais pas si le mode dégradé te permettra d'utiliser le système normalement.[/b]
La recherche de raidhotremove dans le man de dmraid ne me donne rien, non plus qu'un man raidhotremove ou même un locate raidhotremove...

<div class='quotetop'>Citation (thveillon @ 11/03/2009 à 2:00) <{POST_SNAPBACK}> (index.php?act=findpost&pid=203916)</div>
L'autre solution consiste à annuler le raid, pour redémarrer sur le disque qui fonctionne comme un disque normal. Mais dans ce cas il faut revoir à la main le fstab, le menu grub, reconstruire un initrd sans le module dmraid, et désactiver le raid dans le bios.[/b]
Pour fstab et grub cela m'est déjà arrivé sur un autre PC, mais pour la reconstruction d'un initrd, je ne sais pas comment faire.

<div class='quotetop'>Citation (thveillon @ 11/03/2009 à 2:00) <{POST_SNAPBACK}> (index.php?act=findpost&pid=203916)</div>
Dans les deux cas il te faut une sauvegarde de tes données avant de jouer avec le raid, et considérer que si les deux disques sont de même série et même age, le risque d'une double panne peut être élevé... En raid1 ils ont subit exactement la même activité.[/b]
J'ai plusieurs sauvegardes de mon répertoire personnel, mais pas du système entier et donc de tout ce que j'ai installé genre compilateurs, bibliothèques, etc... pas toujours dans les repos.

A propos, est-il possible de faire une recherche ou une copie de tout / sauf /home par exemple ?

<div class='quotetop'>Citation (thveillon @ 11/03/2009 à 2:00) <{POST_SNAPBACK}> (index.php?act=findpost&pid=203916)</div>
L'autre solution consiste à annuler le raid, pour redémarrer sur le disque qui fonctionne comme un disque normal. Mais dans ce cas il faut revoir à la main le fstab, le menu grub, reconstruire un initrd sans le module dmraid, et désactiver le raid dans le bios.[/b]

Hum, pour être bien sûr quand même, pour fstab et grub, cela veut-il simplement dire
- remplacer root=/dev/disk/by-id/raid-isw_dhfjhjdgdh_Volume0-part7 par root=/dev/sda7 dans /boot/grub/menu.lst
- remplacer les /dev/mapper/isw_dhfjhjdgdh_Volume0_partX par des /dev/sdaX dans /etc/fstab
et c'est tout ?

Au fait, j'ai /boot (part 5), swap (part 6), / (part 7), /usr/local (part 8) et /home (part 9) dans le fstab => Il lui faut 4 partitions à mon RAID matériel pour sa gestion ou c'est encore une histoire de partition logique ? Je précise que mon système n'est PAS en double-boot avec des partitions Windows (ou autre) en début de disque. Pour respecter la licence et n'installer qu'une fois Vista, je l'ai mis directement dans une machine virtuelle après avoir demandé à ce qu'aucun système ne soit installé sur ma machine avant sa livraison.

MD25
12/03/2009, 23h11
up...
Je sais suis un peu impatient ! ;-)

Torrent
13/03/2009, 20h40
Sur ma machine virtuelle, j'ai du LVM mais pas de RAID (je ferais l'essai ce week-end)
En attendant, j'ai jeté un oeil sur la fonction du DVD d'installation avec l'option "Réparer le système installé"
A priori ca devrait le faire :
http://www.maytorrent.com/repair1.png
http://www.maytorrent.com/repair.png

Le RAID semble pris en compte dans la recherche d'erreur (mais pas le LVM)
De plus, on peut voir les commandes passées par Yast au shell
http://www.maytorrent.com/repair5.png

Là je suis de sortie d'ici qlq minutes

thveillon
14/03/2009, 02h08
Désolé MD25, je ne te laisse pas tomber, mais comme indiqué je n'utilise pas dmraid mais mdadm et du raid logiciel.

Je vais regarder si je te trouve de la doc de bonne qualité, mais dmraid m'a l'air moins populaire que mdadm, et voir les infos que tu as mis plus bas. Là j'étais un peu occupé à ... migrer un système installé sur un disque seul sur un raid1 ! On reste dans le sujet.

MD25
15/03/2009, 23h27
Merci pour votre aide !
J'étais vraiment à la bourre la semaine dernière avec un boulot à renvoyer avant la fin de la semaine, mais cette semaine, j'espère bien avoir le temps de profiter de toutes les indications que vous m'avez données pour me remettre dans une situation un peu plus saine.
J'avoue que je n'avais pas pensé à l'option repair du DVD d'install car pour les PCs de la maison, je passais souvent par le CD minimum pour faire une install directement depuis les sites + la dernière fois j'ai fait un "zypper dup" qui a vraiment bien fonctionné (à ma grande surprise !).

Je vous tiens au courant quand il y aura du nouveau.

MD25
16/03/2009, 18h42
J'ai téléchargé (et lu) sur le site d'Intel le guide sur l'Intel Matrix storage Manager.
Apparemment, il y a un truc pas mal du tout pour ma préocupation de backup automatique (et pour me débarasser de mon disque à Pb) qui est le recovery volume :
On part d'un RAID1 que l'on change en recovery volume en désignant l'un des deux disques comme master et l'autre comme recovery. On peut alors enlever et remettre comme on veut le recovery volume qui sert de backup automatique et qui peut aussi permettre de revenir à une vieille version du système si on a pris soin d'enlever physiquement le disque recover avant de faire un truc dangereux pour son système (mises à jour, install nouveau matériel,...)

Seul petit (gros !) hic ce changement se fait depuis une console spécifique d'Intel qui est un programme installable uniquement sous Windows...

Je vais essayer de l'installer sous Wine, mais je pensais qu'il vallait mieux vous en faire part avant de tout mettre en l'air ! ;-)

wine /media/GIGABYTE/Chipset/MSM/MSM8/iata_cd.exe après insertion du disque de pilotes de ma carte mère me répond que mon ordinateur n'a pas la configuration minimale pour installer ce programme...
Bon, vu que les drivers ne sont pas installés, je m'en doutais un peu...
(J'ai aussi essayé de lancer directement le fichier run.exe situé à la racine du disque. Le programme s'est bien lancé mais est resté bloqué sur la detection du hard => Pas de miracle !)

MD25
31/03/2009, 18h00
Bon, j'ai fini par me décider à enlever le disque malade.
Voici en résumé, ce que je crois qu'il faut faire pour récupérer un système fonctionnel avec le disque restant (dans la pratique, j'ai fait plus d'aller et retour que cela en remettant un autre disque à la place de celui qui était défectueux, mais visiblement, il est meilleur de n'avoir qu'un disque):
- Passer le BIOS en AHCI au lieu de RAID
- utiliser un DVD d'install d'opensuse en mode réparation de système pour récuperer la main avec des partitions montées.
- changer à la main le /etc/fstab pour éliminer les ligne en /dev/mapper/isw... et rajouter les lignes équivalentes avec /dev/sda..., ce qui donne
<div class='codetop'>CODE</div><div class='codemain' style='height:200px;white-space:pre;overflow:auto'>#/dev/mapper/isw_dhfjhjdgdh_Volume0_part6 swap swap defaults 0 0
#/dev/mapper/isw_dhfjhjdgdh_Volume0_part7 / ext3 acl,user_xattr 1 1
#/dev/mapper/isw_dhfjhjdgdh_Volume0_part5 /boot ext3 acl,user_xattr 1 2
#/dev/mapper/isw_dhfjhjdgdh_Volume0_part9 /home ext3 acl,user_xattr 1 2
#/dev/mapper/isw_dhfjhjdgdh_Volume0_part8 /usr/local ext3 acl,user_xattr 1 2
/dev/sda6 swap swap defaults 0 0
/dev/sda7 / ext3 acl,user_xattr 1 1
/dev/sda5 /boot ext3 acl,user_xattr 1 2
/dev/sda9 /home ext3 acl,user_xattr 1 2
/dev/sda8 /usr/local ext3 acl,user_xattr 1 2
proc /proc proc defaults 0 0
sysfs /sys sysfs noauto 0 0
debugfs /sys/kernel/debug debugfs noauto 0 0
#usbfs /proc/bus/usb usbfs noauto 0 0
devpts /dev/pts devpts mode=0620,gid=5 0 0
none /proc/bus/usb usbfs auto,busgid=112,busmode=0775,devgid=112,devmode=06 64 0 0
none /dev/shm tmpfs size=8G 0 0</div>
- puis changer à la main le /boot/grub/menu.lst pour faire le même genre d'opérations qu'avec le fstab
- rebooter et ... prier ! ;-)

thveillon
31/03/2009, 18h14
Et dernière étape, passer au raid logiciel avec mdadm ! ;)

MD25
31/03/2009, 18h28
Et dernière étape, passer au raid logiciel avec mdadm ! ;)[/b]
J'y ai pensé, mais dès que je met un deuxième disque, le boot ne va pas jusqu'à son terme car apparemment il essaie de charger deux fois la partition 7 sur / (une fois avec le /dev/mapper qui revient je ne sais trop comment et une fois avec /dev/sda7) et trouve qu'elle n'est pas disponible.
En plus, compte tenu de tout ce que j'ai appris sur ce forum, je ne sais plus trop bien si je dois mettre un RAID soft ou un rsync dans le crontab à effectuer toute les nuits entre les deux disques pour me laisser un peu de mou si j'efface un fichier par erreur...
(En plus, je n'ai toujours pas eu le temps d'aller me renseigner plus sur unison)
Pas si facile que cela le passage Windows => Linux sur son poste de travail et pourtant j'ai plus de 15 ans d'utilisation (et même un peu d'admin système) de systèmes de calculs UNIX et Linux derrière moi (après avoir joué un peu avec des VAX et avec des IBM sous VM/CMS) !
Y a pas à dire, l'administration système c'est un métier ! (et pas le mien ;-) )

thveillon
31/03/2009, 19h41
Pour ce qui est des anciens volumes raid, il faut s'assurer qu'il ne reste pas de fichiers de configuration avec l'ancien "mapping" des groupes raid. Si tu as utilisé des superblock persistant sur les partitions qui composaient le raid, il faut les effacer. Si tu avais changé le code hexadecimal des systèmes de fichiers pour "raid auto-detect" (fd), il faut le remettre en fonction du système de fichiers réel (avec fdisk, ex: 83 pour de l'ext3, 82 pour le swap...). Enfin il faut peut-être régénérer un initrd (Inital Ram DIsk) pour se débarrasser définitivement du raid.


Effectivement si ce que tu recherches est une solution de sauvegarde, le raid1 n'est pas adapté, c'est une solution de haute disponibilité et pas de sauvegarde. Dans ce cas il vaut mieux t'orienter vers rdiff-backup, backuppc, mondo, dirvish ...etc qui font des sauvegardes incrémentales ou différentielles, avec une sauvegarde complète de temps en temps.
Unison c'est pour de la synchronisation bi-directionnelle, c'est plutôt pour synchroniser deux machines que pour faire une sauvegarde. rsync tout seul peut convenir aussi, en fonction des besoins.

Le raid et la sauvegarde ne sont pas incompatibles, ils sont complémentaires.

MD25
01/04/2009, 09h23
Pour ce qui est des anciens volumes raid, il faut s'assurer qu'il ne reste pas de fichiers de configuration avec l'ancien "mapping" des groupes raid. Si tu as utilisé des superblock persistant sur les partitions qui composaient le raid, il faut les effacer. Si tu avais changé le code hexadecimal des systèmes de fichiers pour "raid auto-detect" (fd), il faut le remettre en fonction du système de fichiers réel (avec fdisk, ex: 83 pour de l'ext3, 82 pour le swap...). Enfin il faut peut-être régénérer un initrd (Inital Ram DIsk) pour se débarrasser définitivement du raid.[/b]Merci beaucoup pour ton aide. Je dois avouer que je ne comprends pas encore tout là dedans, mais je vais me documenter dès que j'aurais le temps.
Je n'ai rien fait à la main moi-même. Je m'étais contenté d'activer le RAID dans le BIOS et de configurer le volume AVANT l'installation d'opensuse qui a donc tout fait tout seul (et effectivement cela fonctionnait très bien tant que les 2 disques étaient sains, avec une installation relativement facile).
J'ai cru (à tort !) que j'aurai bien le temps de me documenter sur comment faire en cas de problème, compte-tenu du fait que j'avais pris la précaution de prendre des disques de la série ES2 (Seagate) donc destinés à des serveurs 24h/24 7j/7 avec un taux de panne supposé faible...

<div class='quotetop'>Citation (thveillon @ 31/03/2009 à 19:41) <{POST_SNAPBACK}> (index.php?act=findpost&pid=205564)</div>
Effectivement si ce que tu recherches est une solution de sauvegarde, le raid1 n'est pas adapté, c'est une solution de haute disponibilité et pas de sauvegarde. Dans ce cas il vaut mieux t'orienter vers rdiff-backup, backuppc, mondo, dirvish ...etc qui font des sauvegardes incrémentales ou différentielles, avec une sauvegarde complète de temps en temps.
Unison c'est pour de la synchronisation bi-directionnelle, c'est plutôt pour synchroniser deux machines que pour faire une sauvegarde. rsync tout seul peut convenir aussi, en fonction des besoins.
Le raid et la sauvegarde ne sont pas incompatibles, ils sont complémentaires.[/b]Oui, il va falloir que je regarde cela aussi de plus près. Mais haute disponibilité, j'ai l'impression que cela n'est vrai que pour des spécialistes qui ont des disques "spare" sous la main et qui ont de l'expérience sur la gestion de pannes sur ce genre de système.
Je vois bien que j'ai présumé de mes forces en cédant aux sirènes de la pub d'Intel pour ces chipsets ICHxR.

thveillon
01/04/2009, 10h07
Pour quelques pistes:

lors de la création d'un raid il y a plusieurs moyens pour la partie logicielle de "savoir" que le raid existe, le premier consiste en un fichier de configuration (historiquement /etc/raidtab , /etc/mdadm.conf avec mdadm). Ça ne fonctionne pas si la partition racine est en raid, dans ce cas il faut un "marqueur" sur les disques eux-mêmes, c'est à ça que servent les "superblock". Avec mdadm on supprime les superblocks avec "mdadm --zero-superblock /dev/sda1" par exemple, tu devrais trouver la commande équivalente pour raidtools. La troisième "astuce" c'est de changer le type du système de fichier, au lieu de "ext3" on indique au système que le système de fichier est membre d'un ensemble raid en le marquant "fd" pour "raid auto-detect". Tu verras si c'est le cas dans la sortie de:


sudo /sbin/fdisk -l

Tu peux le changer avec fdisk également, tu ouvres une session fdisk sur le disque avec "fdisk /dev/sda", ensuite dans l'invite de commande tu tapes [m] pour l'aide, ou directement [t] pour changer le type de partition, un chiffre de [1-4] pour la partition visée, et [83] pour fixer le type de partition à "linux" (ext2/3). La lettre [l] te listera l'ensemble des systèmes de fichier avec le code hexadécimal correspondant.
Tu répètes pour toutes les partitions concernées, rien n'est écrit sur le disque avant que tu ne tapes [w] (write) et valide à la fin des modifications. Pour quitter sans changement avant la fin c'est [q].


Pour l'initrd, il doit sans doute inclure les modules raid nécessaires à l'assemblage des volumes, le recréer après désinstallation de raidtool/mdadm devrait le purger de ces modules.Je ne connais pas la commande sur Suse, sans doute quelque chose comme "update-initramfs", "mkinitramfs" ou "mkinitrd", ce dernier supportant l'option "--omit-raid-modules".


Pour ce qui est de Seagate, ils ont montré récemment (bug de firmware) que leurs disques n'étaient, pas plus que les autres, à l'abri d'une mort subite... Tu as eu de la chance que les deux ne lâchent pas en même temps...


Pour ce genre de manip c'est toujours mieux de se documenter avant... Voir de tester sur un système dédié à ça si on peut. Le problème des installateurs "automagique" c'est qu'ils rendent trivial des configurations complexes, jusqu'au jour où il faut mettre les mains dans le moteur et là le "raid10 + lvm" qui paraissait si simple à l'installation prend un autre visage...


Le raid1 a trois intérêts majeurs pour moi: il améliore les temps de lecture, il évite qu'un processus qui dure 15 heures (traitement vidéo...) n'avorte à la 13ème heures pour cause de panne du disque, surtout si on doit rendre le résultat à la 25ème heure ! Enfin le temps de reconstruction d'un volume raid n'entraîne pas l'attente liée à la restauration d'une sauvegarde.
Mais j'ai aussi des sauvegardes sur des disques externes, et un disque "spare" partagé entre plusieurs volumes raid dans la machine pour minimiser le risque d'une panne quasi-simultanée de deux disques...

Enfin, temps que je ne peux pas m'offrir un "vrai" contrôleur raid matériel (et même peut-être dans ce cas), je fais du raid logiciel avec mdadm qui est beaucoup plus souple et facile à gérer d'après mon expérience.

MD25
06/04/2009, 14h26
sudo /sbin/fdisk -l[/b] me renvoie bien 83 comme Id de mes partitions (sauf pour la 1 qui est à f et le swap qui est comme il se doit à 82)

<div class='quotetop'>Citation (thveillon @ 1/04/2009 à 10:07) <{POST_SNAPBACK}> (index.php?act=findpost&pid=205594)</div>
"update-initramfs", "mkinitramfs" ou "mkinitrd", ce dernier supportant l'option "--omit-raid-modules".[/b] Sur mon opensuse, je n'ai que mkinitrd et je n'ai pas vu de flag --omi-raid-modules. Par contre il faudrait effectivement probablement que je refasse un initrd en enlevant la "features" dmraid", mais comme je ne me suis pas encore fixé sur ce que je ferai quand un nouveau HDD reviendra du SAV, j'attend.

<div class='quotetop'>Citation (thveillon @ 1/04/2009 à 10:07) <{POST_SNAPBACK}> (index.php?act=findpost&pid=205594)</div>
Pour ce genre de manip c'est toujours mieux de se documenter avant... Voir de tester sur un système dédié à ça si on peut.[/b]
Le Pb est que je ne suis que simple utilisateur et que je ne renouvelle mon poste de travail que tous les 5 ans... Je ne peux donc pas vraiment faire d'essai, si ce n'est discuter avec les personnes qui gèrent nos grosses machines de calcul.

<div class='quotetop'>Citation (thveillon @ 1/04/2009 à 10:07) <{POST_SNAPBACK}> (index.php?act=findpost&pid=205594)</div>
je fais du raid logiciel avec mdadm qui est beaucoup plus souple et facile à gérer d'après mon expérience.[/b] Je vais essayer de trouver le temps de regarder cette solution.

En tout cas un grand Merci à toi thveillon pour ton soutien sans faille.

thveillon
06/04/2009, 19h48
Pour le module dmraid, il serra retiré de l'initrd si tu désinstalles les paquets correspondant je pense. (peut-être en mettant à jour l'initrd après en plus).

Pour le raid logiciel avec mdadm, ça se teste bien avec une machine virtuelle, et de cette façon on peut se permettre toutes les fantaisies. Il y a une petite présentation de la bête (mdadm) en Français sur linuxpedia (http://www.linuxpedia.fr/doku.php/expert/mdadm/wiki?s%5B%5D=mdadm) , et un tuto pour passer un système existant en raid1 (http://www.linuxpedia.fr/doku.php/expert/systeme_conversion_raid1?s%5B%5D=mdadm) mdadm en incluant le disque système dans le raid.

Ça peut donner une idée de ce qui est faisable.

MD25
06/04/2009, 23h24
Pour le raid logiciel avec mdadm, ça se teste bien avec une machine virtuelle, et de cette façon on peut se permettre toutes les fantaisies. Il y a une petite présentation de la bête (mdadm) en Français sur linuxpedia (http://www.linuxpedia.fr/doku.php/expert/mdadm/wiki?s%5B%5D=mdadm) , et un tuto pour passer un système existant en raid1 (http://www.linuxpedia.fr/doku.php/expert/systeme_conversion_raid1?s%5B%5D=mdadm) mdadm en incluant le disque système dans le raid.[/b] Et bien voilà de la lecture en perspective ! ;)
Merci !