7 votes

12.04 installation préconfigurée avec RAID et LVM

Je suis en train de configurer une installation preseed (Ubuntu 12.04.03 64-bit) avec la recette de partitionnement suivante, mais cela ne fonctionne pas et je ne suis pas sûr pourquoi.

S'il vous plaît, Obi-Wan, tu es mon seul espoir.

Le -1 dans les tailles était initialement 1000000000 donc j'ai essayé de changer à -1 mais cela n'a fait aucune différence.

d-i partman-lvm/device_remove_lvm boolean true
d-i partman-md/device_remove_md boolean true
d-i partman-auto/purge_lvm_from_device  boolean true

d-i partman-auto/disk string /dev/sda /dev/sdb
d-i partman-auto/method string raid

d-i partman-auto-lvm/new_vg_name string vg_sys
d-i partman-auto-lvm/guided_size string max

d-i partman-auto/choose_recipe select raid-lvm
d-i partman-auto/expert_recipe string                      \
      raid-lvm ::                                          \
        512 10 512 raid                                    \
          $primary{ } $lvmignore{ } $bootable{ }           \
          method{ raid }                                   \
        .                                                  \
        8192 20 -1 raid                                    \
          $primary{ } $lvmignore{ }                        \
          method{ raid }                                   \
        .                                                  \
        1024 100 1024 ext4                                 \
          $defaultignore $lvmok{ } lv_name{ root }         \
          method{ format } format{ }                       \
          use_filesystem{ } filesystem{ ext4 }             \
          mountpoint{ / }                                  \
        .                                                  \
        4096 100 4096 linux-swap                           \
          $defaultignore $lvmok{ } lv_name{ swap }         \
          method{ swap } format{ }                         \
        .                                                  \
        1024 100 2048 ext4                                 \
          $defaultignore $lvmok{ } lv_name{ tmp }          \
          method{ format } format{ }                       \
          use_filesystem{ } filesystem{ ext4 }             \
          mountpoint{ /tmp }                               \
        .                                                  \
        4096 100 8192 ext4                                 \
          $defaultignore $lvmok{ } lv_name{ var }          \
          method{ format } format{ }                       \
          use_filesystem{ } filesystem{ ext4 }             \
          mountpoint{ /var }                               \
        .                                                  \
        2048 100 4096 ext4                                 \
          $defaultignore $lvmok{ } lv_name{ usr }          \
          method{ format } format{ }                       \
          use_filesystem{ } filesystem{ ext4 }             \
          mountpoint{ /usr }                               \
        .                                                  \
        2048 110 16384 ext4                                \
          $defaultignore $lvmok{ } lv_name{ home }         \
          method{ format } format{ }                       \
          use_filesystem{ } filesystem{ ext4 }             \
          mountpoint{ /home }                              \
        .                                                  \
        512 1000 -1 ext4                                   \
          $defaultignore $lvmok{ } lv_name{ deleteme }     \
          method{ lvm }                                    \
        .

d-i partman-auto-raid/recipe string                              \
    1 2 0 ext4 /boot  /dev/sda1#/dev/sdb1                    .   \
    1 2 0 lvm  -      /dev/sda2#/dev/sdb2                    .

# le LV 'deleteme' absorbe l'espace restant dans le VG
d-i preseed/late_command string in-target lvremove -f vg_sys/deleteme

d-i partman-partitioning/confirm_write_new_label boolean true
d-i partman/choose_partition select finish

d-i partman/confirm boolean true
d-i partman/confirm_nooverwrite boolean true
d-i partman-lvm/confirm boolean true
d-i partman-md/confirm boolean true
d-i partman-md/confirm_nooverwrite  boolean true

d-i partman/mount_style select label

d-i mdadm/boot_degraded boolean false

Voici l'erreur que je reçois:

image of irritating failure

Les disques sont de taille double 50GiB (pour être précis, 53 687 091 200 octets).

7voto

Mauricio López Points 944

Je pense que votre erreur se situe ici :

d-i partman-auto/choose_recipe select raid-lvm
d-i partman-auto/expert_recipe string                      \
      raid-lvm ::                                          \

Vous utilisez partman-auto/choose_recipe lorsque vous allez utiliser une recette prédéfinie en usine. Si ce n'est pas le cas, alors créez votre propre recette en utilisant partman-auto/expert_recipe, en spécifiant multiraid, et non raid-lvm.

Votre fichier de configuration devrait alors être :

d-i partman-auto/expert_recipe string                      \
      multiraid ::                                         \

Mes conclusions proviennent de la lecture de ceci et cela.

2voto

Vincent P Points 401

J'ai fini par arriver ici parce que j'obtenais exactement les mêmes erreurs :

Erreur : Aucune recette spécifiée dans partman-auto-raid/recipe

Ainsi que :

Espace disque disponible (XXX) trop petit pour la recette experte (2200008705)

Voici la partie pertinente de mon mauvais fichier preseed :

d-i partman-auto/method string raid
d-i partman-auto/disk string /dev/sda /dev/sdb

d-i partman-auto/expert_recipe string                        \
     multiraid ::                                            \
              1 1 1 free                                     \
                      $gptonly{ }                            \
                      $primary{ }                            \
                      $bios_boot{ }                          \
                      method{ biosgrub }                     \
              .                                              \
              4096 1000 4096 linux-swap                      \
                      $gptonly{ }                            \
                      $primary{ }                            \
                      method{ swap } format{ }               \
              .                                              \
              141101 1000 141901 raid                        \
                      $gptonly{ }                            \
                      $primary{ }                            \
                      method{ raid } format{ }               \
              .                                              \
              1 2000 -1 ext4                                 \
                      $gptonly{ }                            \
                      $primary{ }                            \
                      method{ format } format{ }             \
                      use_filesystem{ } filesystem{ ext4 }   \
              .                                              \                                
# Enfin, vous devez spécifier comment les partitions précédemment définies seront utilisées dans la configuration RAID. N'oubliez pas d'utiliser les bons numéros de partition pour les partitions logiques. Les niveaux RAID 0, 1, 5, 6 et 10 sont pris en charge ; les périphériques sont séparés par "#".
# Les paramètres sont :
#      \
#           

d-i partman-auto-raid/recipe string 1 2 0 ext4 / /dev/sda2#/dev/sdb2 .

Le problème, agaçant assez, était que j'avais laissé un backslash final sur la dernière ligne de la recette experte. Ça aurait dû être comme ça :

              1 2000 -1 ext4                                 \
                      $gptonly{ }                            \
                      $primary{ }                            \
                      method{ format } format{ }             \
                      use_filesystem{ } filesystem{ ext4 }   \
              .                                                                              

J'espère que cela aidera quelqu'un !

1voto

Mark R Points 334

Vous ne mentionnez pas si vous utilisez une distribution 32 bits ou 64 bits ici, mais je pensais que le nombre signalé dans votre erreur était assez étrange, "2200008705". D'où cela vient-il? Eh bien, prenez ce nombre et soustrayez la plus grande valeur pour un int non signé sur 32 bits (2147483647), et vous obtenez 52 525 058, qui ressemble étrangement à la taille exacte de vos disques de 50 Go, non ?

En regardant la section 5 de partman-auto-recipe.txt, qui concerne l'utilisation de tailles très grandes pour n'importe quelle partition que vous voulez remplir avec tout l'espace libre, il est indiqué :

Ne pas utiliser de nombres supérieurs à 1000000000 car l'arithmétique shell
est limitée à 31 bits (sur i386).

Dans votre question, vous avez dit qu'avant de définir les valeurs à -1, elles étaient définies à 10000000000, ce qui est un endroit/zéro de trop par rapport à leur suggestion pour une valeur maximale. Peut-être avez-vous dépassé une valeur quelque part, et c'est pourquoi votre recette n'a pas fonctionné au départ avant que vous ne la changiez en -1?

-1voto

user144774 Points 119

Eh bien, il semble que la première erreur que vous avez est que votre RAID n'est pas configuré correctement comme je peux le lire : "Aucun tableau trouvé dans le fichier de configuration"

Je suppose qu'il y a quelque chose qui ne va pas dans votre configuration RAID.

Peut-être pouvez-vous prendre exemple sur ce fil de discussion : http://ubuntuforums.org/showthread.php?t=1879350

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X