:::: MENU ::::

RAID sur Ubuntu Feisty – Nouvelle installation

Technologie

RAID sur Ubuntu Feisty – Nouvelle installation

Introduction

Il y a environ deux mois, nous avons publié un article expliquant comment installer Ubuntu Edgy Eft sur des disques pilotés par un contrôleur Raid semi-logiciel, comme ceux que l’on trouve sur pas mal de cartes mères actuelles. Ceux qui ont bonne mémoire se souviendront qu’il était nécessaire effectuer l’installation à partir de l’alternate cd de Ubuntu, car il s’agissait du seul support d’installation qui permettait de charger tous les modules du noyau nécessaires.

Les temps ont bien changé depuis, car les développeurs ont bien travaillé. Il est maintenant possible d’installer Ubuntu Feisty sur du RAID semi-logiciel directement à partir du support d’installation conventionnel, le live-cd. Malheureusement tout n’est pas encore au point et l’installation demande encore quelques manipulations, mais rien à voir avec les miracles d’antan.

Nous avons décidé de présenter ici l’installation fraîche de Feisty au lieu de la mise à jour de Edgy vers Feisty. Nous savons que cela est possible, mais un certain nombre de problèmes (nous en parlons ici) nous incite franchement à repartir de zéro. Alors, voilà comment…

Introduction

Il y a environ deux mois, nous avons publié un article expliquant comment installer Ubuntu Edgy Eft sur des disques pilotés par un contrôleur Raid semi-logiciel, comme ceux que l’on trouve sur pas mal de cartes mères actuelles. Ceux qui ont bonne mémoire se souviendront qu’il était nécessaire effectuer l’installation à partir de l’alternate cd de Ubuntu, car il s’agissait du seul support d’installation qui permettait de charger tous les modules du noyau nécessaires.

Les temps ont bien changé depuis, car les développeurs ont bien travaillé. Il est maintenant possible d’installer Ubuntu Feisty sur du RAID semi-logiciel directement à partir du support d’installation conventionnel, le live-cd. Malheureusement tout n’est pas encore au point et l’installation demande encore quelques manipulations, mais rien à voir avec les miracles d’antan.

Nous avons décidé de présenter ici l’installation fraîche de Feisty au lieu de la mise à jour de Edgy vers Feisty. Nous savons que cela est possible, mais un certain nombre de problèmes (nous en parlons ici) nous incite franchement à repartir de zéro. Alors, voilà comment…

On prépare le terrain – le réseau

Après avoir démarré le système avec le live-cd (disponible ici), il faut s’assurer que le réseau fonctionne correctement. Une possibilité rapide de savoir est celle de lancer un terminal et de taper:

ping www.google.com

Dans la plupart des cas cela devrait retourner des temps d’accès  et l’adresse IP de google. Parfois, le terminal ne s’ouvre pas ou le ping n’arrive pas à atteindre google. Dans ce cas, vous devez probablement saisir manuellement l’adresse IP de l’ordinateur. Pour le faire il faut lancer l’outil de configuration du réseau Système->Administration->Réseau. Le site de Ubuntu francophone offre une très bonne documentation pour vous aider. La plupart du temps, la configuration du réseau demande un redémarrage du serveur X et du réseau même. Pour ce faire, appuyer sur Ctrl-Alt-Backspace, attendre que la session redémarre (il ne faut pas de mot de passe), puis taper la commande suivante dans un terminal:

sudo /etc/init.d/networking restart

Voilà, maintenant la commande ping devrait pouvoir contacter google.

Installation de dmraid sur le live-cd

Afin de pouvoir installer le système sur l’ordinateur, il faut que votre live-cd puisse identifier les disques durs en raid. Pour le faire, il faudra installer dmraid. Après avoir activé le dépôt universe (un guide est fourni ici), il est possible d’installer dmraid à l’aide de synaptic.

Pour vérifier que dmraid a effectivement identifié les disques en Raid, il suffit de lancer la commande suivante dans un terminal:

ls /dev/mapper

Si la commande permet d’afficher un certain nombre de dossiers, c’est que tout a bien marché. Chaque controleur donne un nom différent aux disques, mais la structure de leurs noms est toujours la même. Dans notre cas nous avons ça:

isw_lafadafjge_ARRAY
isw_lafadafjge_ARRAY1
isw_lafadafjge_ARRAY2
isw_lafadafjge_ARRAY3
isw_lafadafjge_ARRAY4
isw_lafadafjge_ARRAY5
isw_lafadafjge_ARRAY6
isw_lafadafjge_ARRAY7

Cei peut changer, car tout dépend du nombre de partitions. Si aucune partition existe sur le disque, vous devriez au moins trouver l’identifiant du disque, c-à-d. isw_lafadafjge_ARRAY chez nous. Les dossiers numerotés indiquent les partitions. Notez le nom de l’identifiant du disque sur un papier, car vous en aurez besoin plus tard.

Préparation des partitions

Nous vous conseillons vivement de préparer la structure de vos partitions avant de commencer l’installation de Ubuntu. La procédure d’installation met à disposition un outil de partitionnement, mais à notre avis il est totalement inutilisable avec dmraid. Par contre, les outils fdisk et cfdisk sont parfaits pour ce genre de situation. Évitez absolument l’outil graphique de partitionnement de gnome (gparted), car il sera malheureusement inutile. Un petit guide pour fdisk et cfdisk est fourni ici.

Pour pouvoir fonctionner, Ubuntu demande au moins deux partitions, une pour le système et une pour l’espace d’échange (swap). Il est souvent conseillé d’en faire une troisième pour héberger les données personnelles (home), afin d’éviter de devoir effectuer des sauvegardes chaque fois que l’on doit réinstaller le système. Une fois terminé le travail, redémarrer dmraid afin de prendre en compte les nouvelles partitions:

sudo dmraid -an
sudo dmraid -ay
ls /dev/mapper

Si toutes les partitions sont là, vous pouvez procéder, sinon il vaut mieux redémarrer l’ordinateur et répéter la procédure, sans bien sûr recréer les partitions.

Installation du système

Nous sommes enfin prêts pour installer le système. Lancez l’outil d’installation et suivez la procédure jusqu’au moment de choisir les partitions. A ce point, vous devriez retrouver toutes les partitions créées auparavant. Toutefois, l’outil d’installation n’arrive pas à détecter correctement les choses et affiche deux fois les mêmes partitions. La figure ci-dessous nous aidera à mieux comprendre:

La première série de partitions (jusqu’au disque de 118509 MB de taille) est erronée. Vous devrez double-cliquer sur chacune et sélectionner dontuse au lieu du type de partition proposé par l’outil d’installation. La deuxième partie est plus correcte. Elle montre les mêmes partitions à double. Vous devez choisir celles qui affichent une taille. Configurez au moins la partition racine (/) et la partition swap, cochez la case pour les formater, puis vous pouvez continuer l’installation.

L’outil d’installation, continuera son travail presque jusqu’au bout, au moment d’installer grub, le logiciel qui s’occupe de gérer le démarrage de l’ordinateur.

Installation de dmraid et de grub sur le nouveau système

Grub a été installé sur le nouveau système, mais il n’a pas pu être configuré. Nous le ferons à la main. L’installation du nouveau système se faut dans une partition appelée /target. Là-dessu l’installeur a monté le processeur, les préyphériques et d’autre structures nécessaires au bon fonctionnement de l’installation. Nous pouvons accéder au nouveau système avec la commande chroot. Avant de le faire, il faut encore monter le filesystem:

sudo mount -t sysfs sysfs /target/sys

Ensuite, nous allons changer de racine:

sudo chroot /target

Nous sommes maintenant dans l’environnement du nouveau système Feisty. Nous allons d’abord installer dmraid (le depôt universe est déjà activé):

sudo apt-get update
sudo apt-get install dmraid

Nous poursuivons avec l’installation et la configuration de grub. Il faut d’abord copier certains fichiers depuis le dossier d’installation vers le dossier final:

sudo cp /usr/lib/grub/i386-pc/stage1 /boot/grub
sudo cp /usr/lib/grub/i386-pc/stage2 /boot/grub
sudo cp /usr/lib/grub/i386-pc/e2fs_stage1_5 /boot/grub

Si votre partition de boot (au cas où elle était séparée de celle du système) n’était pas au format ext2 ou ext3, il faudra changer e2fs_stage1_5 avec le fichier qui correspond au bon filesystem. Tous les fichiers sont en place, nous pouvons procédér à la configuration de grub. Dans un terminal:

grub
device (hd0) /dev/mapper/isw_lafadafjge_ARRAY

Changez isw_lafadafjge_ARRAY avec le nom de votre disque. Ensuite:

root (hd0,1)

Notre partition de boot est la deuxième parition du disque. Comme grub compte à partir de zéro, nous indiquons sa position avec (hd0,1). Changez ceci avec la position de votre partition de boot. Si vous n’en avez pas créée une, elle correspond à celle de votre système (/), comme dans notre cas. On finit de configurer grub, puis on sort:

setup (hd0)
quit

On passe maitenant à l’étape finale, celle de la création du menu de démarrage de l’ordinateur. On lance d’abord une commande qui permet à grub de détecter tout seul la présence de Ubuntu et d’autres systèmes. A la demande si vous voulez créer (ou écraser) le fichier menu.lst, répondez oui.

update-grub
exit

Avec la commande exit, vous revenez à l’environnement du live-cd. Ceci nous permettra d’exploiter gedit, un éditeur de texte graphique. Dans un terminal:

sudo gedit /target/boot/grub/menu.lst

Le fichier permet de configurer le menu de démarrage de l’ordinateur. Tout est presque en ordre, mais il faut impérativement s’assurer que tout soit parfait, au risque de voir l’ordinateur rater son démarrage. Voici la liste des points à vérifier ou corriger:

  • Commenter hiddenmenu en ajoutant # au début de la ligne. Ceci permet d’afficher le menu de démarrage. Si vous avez seulement Ubuntu, vous aimeriez peut-être éviter le menu, mais nous vous conseillons de le virer dans un deuxième temps.
  • Changer timeout en 5 ou 10 secondes, afin d’éviter de devenir Speedy Gonzales chaque fois que vous voulez chosir un autre système que celui par défaut.
  • Vérifier que kopt=root=… soit configuré vers le bon disque. Si vous avez choisi (hd0,1) toute à l’heure vous devriez avoir quelque chose comme ..ARRAY2.
  • Vérifier groot. Là nous avons (hd0,1)
  • Après la ligne ## ## End Default Options ## vous trouverez la liste des noyaux de Ubuntu. Vérifiez que tous les paramètres pointent vers les bons disques.
  • Effacez savedefaults. Si vous le laissez, grub plantera à tous les coups!

Si vous avez créé une partition boot séparée, la liste des kernels devrait contenir un paramètre root= pour indiquer la partition contenant le système. Dans l’exemple ci-dessous, la partition de boot est sur (hd0,1), alors que le système se trouve sur la sixième partition:
title    Ubuntu, kernel 2.6.20-15-generic
root     (hd0,1)
kernel   /vmlinuz-2.6.20-15-generic root=/dev/mapper/isw_dbdfgdahbd_ARRAY6 ro quiet splash
initrd   /initrd.img-2.6.20-15-generic

Dans l’exemple suivant, la partition de boot correspond à celle du système ((hd0,1) correspond à isw_hkjshkgg_RAIDVOLUME2):

title    Ubuntu, kernel 2.6.15-7-generic
root     (hd0,1)
kernel   /boot/vmlinuz-2.6.15-7-generic root=/dev/mapper/isw_hkjshkgg_RAIDVOLUME2 ro quiet
initrd   /boot/initrd.img-2.6.15-7-generic
boot

Notez que dans ce cas il faut ajouter /boot devant le nom du kernel et de initrd.

Si vous avez installé Windows, vous pouvez ajouter son démarrage au menu. Il faudra impérativement le faire en dehors de la zone marquée comme DEBIAN AUTOMAGIC KERNELS LIST. Au dessus, si vous voulez que WIndows apparaisse avant Ununtu, au dessous, sinon. Voici un exemple:

title Windows XP (T'as pas mieux?)
rootnoverify (hd0,2)
chainloader +1


Finiiiiii

Il ne reste plus qu’à croiser les doigts et redémarrer l’ordinateur. Tout devrait marcher à la perfection, à moins que vous ayez tapé faux quelque commande dans menu.lst. Pas grave, essayez d’accéder à la console de grub lors du démarrage et retapez la bonne série de commandes. Tout devrait enfin marcher!!!

Bon courage

Raffaele Bolliger et Dave Bergomi  http://www.donax.ch

8 Comments

  1. tod elber

    Super, ça m’a l’air un peu compliqué qu’avec Edgy (oui, j’avais un peu soufert… j’avais pas eu besoin de l’alternate CD pour le faire, mais j’avais tout config en CHROOT)… je garde le poste pour m’y mettre un peu plus tard. Merci bcp en tout cas pour le boulot de formalisation.

  2. leturnal

    ça marche , mon ordi a 3ans au debut il etait tout bonnement impossible d’insaller linux (enfin je n’avais pas la solution) .les cd live ne fonctionais pas,
    et je ne voulais pas detruire windows . bref un grand merci a tous , et un pas de plus vers le libre…

  3. Morkxy

    Salut !
    super tuto ! ca met bien les choses au clair… merci
    par contre moi je suis sur du ICH9R et quand je fais un dmraid -ay ca ne me fais rien à part une erreur (que je n’est pas sous la main mais que je peux vous donnez si vous la voullez)et dans /dev/mapper/ y a rien :s

    une idée ? une piste ? merci a vous !

    ++

  4. Morkxy

    voila l’erreur (debug mode)
    root@ubuntu:/usr/src# /sbin/dmraid -ay -v -d
    /dev/sdb: « jmicron » and « isw » formats discovered (using isw)!
    DEBUG: _find_set: searching isw_becaeaaegh
    DEBUG: _find_set: not found isw_becaeaaegh
    DEBUG: _find_set: searching isw_becaeaaegh_Raid0
    DEBUG: _find_set: searching isw_becaeaaegh_Raid0
    DEBUG: _find_set: not found isw_becaeaaegh_Raid0
    DEBUG: _find_set: not found isw_becaeaaegh_Raid0
    DEBUG: _find_set: searching isw_dcgecbiifa
    DEBUG: _find_set: not found isw_dcgecbiifa
    DEBUG: _find_set: searching isw_dcgecbiifa_Raid0
    DEBUG: _find_set: searching isw_dcgecbiifa_Raid0
    DEBUG: _find_set: searching isw_dcgecbiifa_Raid0
    DEBUG: _find_set: not found isw_dcgecbiifa_Raid0
    DEBUG: _find_set: not found isw_dcgecbiifa_Raid0
    DEBUG: _find_set: searching isw_dcgecbiifa_Raid0
    DEBUG: _find_set: not found isw_dcgecbiifa_Raid0
    DEBUG: _find_set: not found isw_dcgecbiifa_Raid0
    DEBUG: checking isw device « /dev/sda »
    ERROR: isw device for volume « Raid0″ broken on /dev/sda in RAID set « isw_becaeaaegh_Raid0″
    ERROR: isw: wrong # of devices in RAID set « isw_becaeaaegh_Raid0″ [1/2] on /dev/sda
    DEBUG: set status of set « isw_becaeaaegh_Raid0″ to 2
    DEBUG: set status of set « isw_becaeaaegh » to 4
    DEBUG: checking isw device « /dev/sdb »
    ERROR: isw device for volume « Raid0″ broken on /dev/sdb in RAID set « isw_dcgecbiifa_Raid0″
    ERROR: isw: wrong # of devices in RAID set « isw_dcgecbiifa_Raid0″ [1/2] on /dev/sdb
    DEBUG: set status of set « isw_dcgecbiifa_Raid0″ to 2
    DEBUG: set status of set « isw_dcgecbiifa » to 4
    INFO: Activating GROUP RAID set « isw_becaeaaegh »
    INFO: Activating GROUP RAID set « isw_dcgecbiifa »
    DEBUG: freeing devices of RAID set « isw_becaeaaegh_Raid0″
    DEBUG: freeing device « isw_becaeaaegh_Raid0″, path « /dev/sda »
    DEBUG: freeing devices of RAID set « isw_becaeaaegh »
    DEBUG: freeing device « isw_becaeaaegh », path « /dev/sda »
    DEBUG: freeing devices of RAID set « isw_dcgecbiifa_Raid0″
    DEBUG: freeing device « isw_dcgecbiifa_Raid0″, path « /dev/sdb »
    DEBUG: freeing devices of RAID set « isw_dcgecbiifa »
    DEBUG: freeing device « isw_dcgecbiifa », path « /dev/sdb »

    MERCI de votre aide :s

  5. Morkxy

    merci de m avoir DEL mon topic ! je peosais juste une question.. merci de « l aide »

  6. Morkxy

    arff dsl … le moderateur est en vacances ? :d j ai fliper de ne pas voir mon reply [merci de po poster mon 2 et 3eme recply laisser juste le 1er lol]

  7. Raffaele Bolliger (ruf)

    Salut Morkxy, désolé pour le retard, mais on fait ce qu’on peut.

    Pour ton bug, j’ai l’impression que ton chipset n’est pas encore supporté par la version de dmraid fournie avec Feisty.

    Moi je viens d’installer la nouvelle version de Ubuntu (la 8.04 Hardy) en alpha 5 et mon contrôleur ICH9 est reconnu sans problèmes.

    Si tu veux prendre des risques, essaye de faire la même chose. Sinon, il faudra probablement attendre la sortie officielle au mois d’avril.

  8. Morkxy

    Merci de la réponse :)
    J’avais testé avec la version unstable de ubuntu.. sans succes helase, mais demain sort la version en stable ! (24/04/08 !!) .. je restesterais à cette ocas !

    bonne soirée!

Leave a comment

  • *