5 votes

réutilisation de RAIDs existants sur une installation pré-sélectionnée

J'essaie d'automatiser le processus de réinstallation des installations Ubuntu existantes.

Disposition des partitions :

  • md0( raid1, /dev/sda1#/dev/sdb1 ) - swap (2G)
  • md1( raid1, /dev/sda2#/dev/sdb2 ) - / (20G)
  • md2( raid1, /dev/sda3#/dev/sdb3 ) - PV (espace restant)

Ce que je veux accomplir est :

  • réutiliser les RAIDs existants s'ils existent

Le plus important est de conserver les données sur les PV existants. J'ai pu accomplir cela en définissant un filtre dans lvm.conf, qui exclut tous les périphériques de bloc, ergo le support lvm est désactivé.

Le problème est qu'après l'installation, je dois recréer /dev/md/2, en espérant que les données soient intactes.

La partie pré-semis de la configuration est :

d-i partman/early_command string sed 's/filter\ =\ \[\ "a\/.*\/\"\ \]/filter\ =\ \[\ "r\/.*\/\"\ \]/g' -i /etc/lvm/lvm.conf

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

d-i partman-auto/expert_recipe  string  \
    multiraid ::    \
        2000 10 2000 raid   $primary{ } method{ raid } format{ }  .\
        20000 11 20000 raid $primary{ } method{ raid } format{ }  . \
        20000 12 2000000 raid    $primary{ } method{ keep }    .

Peut-être existe-t-il un autre moyen, plus déterministe, de résoudre ce problème ?

1voto

nortally Points 381

Il y a quelques exemples de late_command dans les Forums Ubuntu, l'exemple proposé est basé sur l'un d'entre eux. Mais d'abord, deux points :

1) Automatiser une installation qui force le formatage d'un système de fichiers tout en préservant un autre est intrinsèquement dangereux. Si vous ne faites pas de sauvegarde avant de procéder, vous perdrez des données. "Peut-être pas aujourd'hui. Peut-être pas demain, mais bientôt, et pour le reste de votre vie" ;-)

2) Recréer /dev/md2 est en fait la partie la plus sûre. Il s'agit d'un RAID miroir mdadm, vos données sont intactes sauf en cas de défaillance simultanée de deux disques durs.

Quoi qu'il en soit, vous devriez être en mesure de faire quelque chose comme ceci pour obtenir /dev/md2 reconstruit et monté où vous le souhaitez :

d-i preseed/late_command string \
in-target sed 's/^ARRAY/#&/g' -i /etc/mdadm/mdadm.conf; \
in-target mdadm --detail --scan >> /etc/mdadm/mdadm.conf; \
in-target mkdir /md2; \
in-target echo '/dev/md2  /md2  ext3  defaults 0 0' >>/etc/fstab;

Je vais tester ma solution et ajouter un commentaire avec mes résultats, je travaille actuellement sur des configurations présélectionnées pour 14.04 LTS.

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