Forum Linux.debian/ubuntu grub2 RAID et lvm2

Posté par  (site web personnel) .
Étiquettes : aucune
0
21
oct.
2010
bonjour à tous,

je teste actuellement une squeeze avec grub2 sur du raid/lvm

voici ma config

/dev/sda1 + /dev/sdb1 => /dev/md0 => /boot
/dev/sda2 + /dev/sdb2 => /dev/md1 swap
/dev/sda3 + /dev/sdb3 => /dev/md1 VG-00 sur lequel on retrouve :

/dev/VG-00/root
/dev/VG-00/usr
/dev/VG-00/var
/dev/VG-00/tmp
/dev/VG-00/home

je sais le tmp en lv est vraiment discutable mais bon je teste...

tout se passe bien : grub2 / mdadm / lvm / ramfs font leur bouleau.

je teste un mode dégradé en retirant physiquement /dev/sdb et je reboote...

je ne vais pas plus loin que le premier message de grub puis le PC reboot systématiquement.

bien sure j'ai bien installé le MBR sur /dev/sdb

En fait je pense que le fait d'avoir un /root sur lvm doit poser problème à grub2 ou bien encore à initramfs ...

quelqu'un a-t-il une idée avant que je vire ce foutu grub2 qui commence vraiment à me go.fler pour installer un bon vieux grub-legacy ?!

Comme quoi l'Open Source n'a pas toujours que du bon... (voilà un projet grub qui fonctionnait parfaitement jusqu'au jour ou certains dev. que je qualifirai d'incapable ont mis leur grain de sel pour nous pondre un grub2 complétement tordu...) il n'y a cas voir le nombre de poste sur le web à ce sujet... c'est lamentable.
Squeeze n'est pas prêt de sortir...

http://jm.marino.free.fr
JM MARINO
  • # un piste

    Posté par  . Évalué à 3.

    e teste un mode dégradé en retirant physiquement /dev/sdb et je reboote...

    je ne vais pas plus loin que le premier message de grub puis le PC reboot systématiquement.

    bien sure j'ai bien installé le MBR sur /dev/sdb


    tu as installé grub sur le MBR de /dev/sdb
    mais c'est le disque que tu retire...
    forcement ca marche moins bien.

    j'imagine que ton /dev/md c'est un raid1 (pour la securité)
    il faut alors installé grub sur /dev/sda ET /dev/sdb

    ainsi quand tu retires /dev/sdb
    c'est le MBR de sda qui va faire son boulot
    • [^] # Re: un piste

      Posté par  (site web personnel) . Évalué à 1.

      of course le MBR est également présent sur /dev/sda sinon mon premier test ne fonctionnerait pas...
    • [^] # Re: un piste

      Posté par  (site web personnel) . Évalué à 1.

      tellement énervé par ce foutu grub2 :

      il fallait lire :
      je teste un mode dégradé en retirant physiquement /dev/sda et je reboote... (et non pas /dev/sdb)
      • [^] # Re: un piste

        Posté par  . Évalué à 2.

        donc reste à relire la config de grub.

        en retirant le disque, j'imagine le scenario suivant :

        /dev/sdb devient /dev/sda vis à vis du bios et/ou du systeme

        mais le systeme se melange les pinceaux avec le raid/lvm
        car c'est /dev/sdb qui est present mais sda qui est presenté

        (je peux me tromper)
        • [^] # Re: un piste

          Posté par  . Évalué à 1.

          Tu t'es trompé.

          /dev/sdb devient probablement /dev/sda dans ce cas; mais le RAID se fiche de savoir quel est le nom réel du disque. Au démarrage il recherche tous les volumes taggé comme RAID (partition de type 0xfd) et les assemble, même si le nom du disque a changé, même si on a changé de partition, et même si on a changé de techno.

          Quand à LVM, vu qu'il est dans le RAID, il se fiche encore plus de ce qui est sous les /dev/md* qu'il utilise.

          Par contre, indéniablement, GRUB2 a eu un soucis pour retrouver ses petits.
          • [^] # Re: un piste

            Posté par  . Évalué à 1.

            /dev/sdb devient probablement /dev/sda dans ce cas; mais le RAID se fiche de savoir quel est le nom réel du disque. Au démarrage il recherche tous les volumes taggé comme RAID (partition de type 0xfd) et les assemble, même si le nom du disque a changé, même si on a changé de partition, et même si on a changé de techno.

            Ce qui est un énorme avantage par rapport à du raid hard ! (pour le prix de certaines cartes, je peux presque avoir une machine entière en rab plutôt qu'un truc qui prend la poussière).

            Sinon je viens de voir que j'ai aussi le souci de désynchro (avec grub1) :-(((
            (je compare avec un "vimdiff <(hexdump -C -v -n 65536 /dev/sda) <(hexdump -C -v -n 65536 /dev/sdb")
    • [^] # Re: un piste

      Posté par  (site web personnel) . Évalué à 1.

      root@bicb-conctr-pmc2:/home/pmc# dd if=/dev/sda bs=512 count=1 | strings
      1+0 enregistrements lus
      1+0 enregistrements écrits
      512 octets (512 B) copiés, 1,4038e-05 s, 36,5 MB/s
      ZRr=
      `|f
      \|f1
      GRUB
      Geom
      Hard Disk
      Read
      Error


      root@bicb-conctr-pmc2:/home/pmc# dd if=/dev/sdb bs=512 count=1 | strings
      1+0 enregistrements lus
      1+0 enregistrements écrits
      512 octets (512 B) copiésZRr=
      , 1,0406e-05 s, 49,2 MB/s
      `|f
      \|f1
      GRUB
      Geom
      Hard Disk
      Read
      Error


      GRUB est bien présent sur les deux disques physiques.
      • [^] # Re: un piste

        Posté par  . Évalué à 4.

        Wahou, GRUB tient en 512 octets, sérieux ?

        Ta prouve juste que le MBR est installé, aka "stage 1" de GRUB (je ne sais plus si c'est le même nom pour GRUB 2).

        Il te faut installer le "stage 2" sur tes deux disques, dans des secteurs qui suivent le MBR, et avant la première partition. Comme ton RAID gère les partitions uniquement (on peut faire dur RAID sur les disques si on veut, mais c'est généralement pas interessant), le stage 2 n'a pas été répliqué.

        De mémoire il te faut faire une grub-install /dev/sdb.


        Quant à ton commentaire sur les incapables qui ont fait GRUB2, c'est un outil très puissant capable de démarrer un certain nombre de machines qui ne fonctionnent pas avec GRUB (beaucoup de Dell entre autres), et qui permet de faire plein de choses très bien. Comme par exemple ce que tu es en train de tester.
        Mais bon, personne ne t'oblige à utiliser GRUB2 sans lire la documentation (qui est _presque_ complète, c'est rare).
  • # grub2, raid et lvm

    Posté par  (site web personnel) . Évalué à 3.

    Cela ne résoud pas ton bug, mais pour te simplifier la manip, grub2 gère le lvm et le raid donc tu peux faire comme moi

    /dev/sda1 + /dev/sdb1 → /dev/md0 → vg0
    avec
    /dev/vg0/disk
    /dev/vg0/swap

    /dev/vg0/boot (si vraiment tu veux séparer)

    Deux choses à savoir :
    * grub2 ne sait que lire dans un lvm dans un raid (ce qui doit pas être compliqué, savoir sauter au dessus de l'overhead de tout le bousin) mais ne sait pas du tout écrire, donc par exemple l'option de grub2 pour mémoriser la dernière sélection (GRUB_DEFAULT=saved et GRUB_SAVEDEFAULT=true dans /etc/default/grub) ne fonctionnera pas.
    * Si tu mets ton /boot dans le lvm, tu ne pourras pas revenir à grub-legacy.

    Cela dit j'ai le même problème que toi, j'ai même testé un peu plus sioux :
    dd if=/dev/sda of=/dev/sdb bs=446 count=1
    Sachant que la table des partitions est déjà la même avec une unique partition qui est un miroir raid1 qui contient la même chose.
    Et j'ai souvent ton problème. Cela marchait sous Lenny avec le vénérable grub.

    Une fois j'ai eu ce soucis en faisant un update-grub sur un grub qui marchait, et de faire LANG=C update-grub me le remettait d'applomb ! update-grub me le pétait à nouveau, LANG=C update-grub me le remettait à nouveau (je suis en fr_FR.utf8).

    Bref t'es pas le seul /o\ (et je cherche…).
    Ce qui m'inquiète c'est que ton expérience me montre que ce n'est pas la faute du /boot dans le lvm, puisque tu ne le fais pas...

    ce commentaire est sous licence cc by 4 et précédentes

  • # Merci pour vos réponses...

    Posté par  (site web personnel) . Évalué à 1.

    Ben ça rassure un peu de ne pas être le seul à galérer avec Grub 2.

    Je maintiens donc mon commentaire sur les équipes de dév. de Grub 2 par rapport à Grub-legacy. Désolé...
  • # Merci pour vos réponses...

    Posté par  (site web personnel) . Évalué à 1.

    Ben ça rassure un peu de ne pas être le seul à galérer avec Grub 2.

    Je maintiens donc mon commentaire sur les équipes de dév. de Grub 2 par rapport à Grub-legacy. Désolé...
    • [^] # BINGO !

      Posté par  (site web personnel) . Évalué à 1.

      Bingo !

      export LANG=C
      update-grub2 /dev/sdb

      retrait du disque /dev/sda et reboot

      ça fonctionne avec RAID dégradé bien sure (c'est le but du test...)

      pmc@bicb-conctr-pmc2:~$ cat /proc/mdstat
      Personalities : [raid1]
      md2 : active raid1 sda3[2]
      242720632 blocks super 1.2 [2/1] [_U]

      md1 : active (auto-read-only) raid1 sda2[2]
      976884 blocks super 1.2 [2/1] [_U]

      md0 : active raid1 sda1[2]
      498676 blocks super 1.2 [2/1] [_U]

      unused devices:

      Comme quoi GRUB2 était malheureusement en cause.
      Juste pour une histoire de LANG ça craint... ;-) non ?!

      je continue mes tests...

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.