<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>7. Installation sur un système Linux existant</title> <link rel="stylesheet" href="style.css" type="text/css"> <meta name="generator" content="DocBook XSL Stylesheets V1.64.1"> <link rel="home" href="index.html" title="Guide pratique du RAID ATA sous Linux"> <link rel="up" href="index.html" title="Guide pratique du RAID ATA sous Linux"> <link rel="previous" href="ar01s06.html" title="6. Installer le RAID Linux natif"> <link rel="next" href="ar01s08.html" title="8. Mettre à jour le noyau"> </head> <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"> <div class="navheader"> <table width="100%" summary="Navigation header"> <tr><th colspan="3" align="center">7. Installation sur un système Linux existant</th></tr> <tr> <td width="20%" align="left"> <a accesskey="p" href="ar01s06.html">Précédent</a> </td> <th width="60%" align="center"> </th> <td width="20%" align="right"> <a accesskey="n" href="ar01s08.html">Suivant</a> </td> </tr> </table> <hr> </div> <div class="sect1" lang="fr"> <div class="titlepage"> <div><div><h2 class="title" style="clear: both"> <a name="existing"></a>7. Installation sur un système Linux existant</h2></div></div> <div></div> </div> <p> Cette section décrit comment installer le RAID ATA Linux natif sur des disques non-système que vous souhaiteriez avoir sur une machine travaillant sous Linux. Les disques non-système sont ceux qui ne comportent pas de partitions systèmes Linux comme les partitions <tt class="filename">/</tt>, <tt class="filename">/usr</tt>, <tt class="filename">/var</tt>, <tt class="filename">/boot</tt>. En d'autres termes, nous avons une machine travaillant sous Linux avec deux disques libres, et nous voulons configurer le RAID ATA miroir (RAID 1) sur ces deux disques. Lorsque l'on sauvegarde des données importantes sur un tel dispositif miroir, les données sont bien protégées. Bien entendu, comme sur tout autre RAID 1, on constatera l'amélioration de la vitesse de lecture, lors de la lecture des données, ainsi qu'une faible perte de vitesse en écriture, lors de la modification ou l'ajout de nouvelles données sur le dispositif miroir. Toutefois, l'utilisation du RAID 1 pour des disques de données est particulièrement recommandée si ceux-ci sont bien plus souvent lus qu'écrits. La machine qui héberge un serveur web en est un excellent exemple : en effet, le contenu d'un site est peu fréquemment modifié; par contre, celui-ci est très souvent accédé par les utilisateurs que sont les Internautes. </p> <p> Voici donc les étapes à suivre pour installer le RAID ATA non-système si votre contrôleur RAID est un Promise Technology : </p> <div class="itemizedlist"><ul type="disc"> <li><p> Retrouvez les valeurs des adresses d'entrées/sorties et du (des) numéro(s) d'interruption de votre contrôleur (carte) RAID Promise. </p></li> <li><p> Éditez votre fichier <tt class="filename">/etc/lilo.conf</tt> et insérez-y une <span class="emphasis"><em>Append Line</em></span> appropriée. </p></li> <li><p> Activez le support ataraid, soit en chargeant automatiquement le module ataraid au démarrage de votre machine, soit en liant statiquement ce support au noyau. </p></li> </ul></div> <div class="sect2" lang="fr"> <div class="titlepage"> <div><div><h3 class="title"> <a name="appendline"></a>7.1. Append Line</h3></div></div> <div></div> </div> <p> Pour la compréhension de tâches diverses impliquant le RAID Promise FastTrak comme la mise à jour ou la recherche de pannes, introduisons un nom : l'<span class="emphasis"><em>Append Line</em></span>. </p> <p> Toutes les options <tt class="filename">ide</tt> que vous passez à l'invite de démarrage de LILO <tt class="prompt">boot:</tt> au moment du démarrage, lorsqu'elles sont assemblées comme une chaîne de caractères, font l'<span class="emphasis"><em>Append Line</em></span>. Toutes les options <tt class="filename">ide</tt> entre guillemets après le mot-clé <tt class="filename">append=</tt> dans le fichier <tt class="filename">/etc/lilo.conf</tt> font aussi l'<span class="emphasis"><em>Append Line</em></span>. </p> <p> Par exemple, si vous tapez la commande : </p> <p> <span><b class="command">linux-new ide2=0x0001,0x0009,9 ide3=0x2000,0x2009,10 ide4=none nousb expert root=/dev/hda3</b></span> </p> <p> à l'invite <tt class="prompt">boot:</tt> au moment du démarrage de votre ordinateur Linux, alors l'<span class="emphasis"><em>Append Line</em></span> est la chaîne </p> <p> <span class="emphasis"><em>ide2=0x0001,0x0009,9 ide3=0x2000,0x2009,10 ide4=none</em></span>. </p> <p> De la même façon, si votre fichier <tt class="filename">/etc/lilo.conf</tt> a la section suivante, votre <span class="emphasis"><em>Append Line</em></span> est </p> <p> <span class="emphasis"><em>ide2=0x9400,0x9002 ide3=0x8800,0x8402</em></span>. </p> <pre class="screen">image=/boot/vmlinuz-2.4.9-10 label=linuxold read-only root=/dev/hde9 append="nousb ide2=0x9400,0x9002 ide3=0x8800,0x8402" initrd="initrd.img"</pre> <p> Lorsque l'on se rend compte que l'on a des problèmes à démarrer sur une machine Linux avec le RAID, on doit utiliser une <span class="emphasis"><em>Append Line</em></span> appropriée. Par conséquent, il est important de déterminer et de consigner par écrit l'<span class="emphasis"><em>Append Line</em></span>. Cela vous aidera plus tard pour résoudre vos problèmes, pour mettre à jour en douceur votre noyau ou bien pour ajouter (ou retirer) des disques supplémentaires. </p> </div> <div class="sect2" lang="fr"> <div class="titlepage"> <div><div><h3 class="title"> <a name="determine"></a>7.2. Déterminer l'<span class="emphasis"><em>Append Line</em></span></h3></div></div> <div></div> </div> <p> Pour déterminer la bonne <span class="emphasis"><em>Append Line</em></span>, nous devons savoir en premier lieu comment sont connectés tous nos périphériques <tt class="filename">IDE</tt>. Les périphériques IDE peuvent être des disques durs, des lecteurs CDROM ATAPI, <span class="emphasis"><em>etc</em></span>. Une fois déterminée l'<span class="emphasis"><em>Append Line</em></span>, nous pouvons la rajouter aux options de <tt class="prompt">boot:</tt> (au moment du démarrage) ou nous pouvons aussi la transmettre comme valeur de chaîne au paramètre <span><b class="command">append</b></span> dans le fichier <tt class="filename">/etc/lilo.conf</tt>. À moins que vous aimiez vous souvenir d'options de <tt class="prompt">boot:</tt> compliquées et les entrer manuellement à chaque démarrage, vous choisirez alors la seconde méthode, <span class="emphasis"><em>c.-à-d.</em></span>, l'insérer dans le fichier <tt class="filename">/etc/lilo.conf</tt>. Pour faire cela, ajoutez <tt class="filename">append="</tt><span class="emphasis"><em>Votre Append Line ici</em></span> <tt class="filename">"</tt>, enregistrez le fichier et activez votre nouveau fichier <tt class="filename">/etc/lilo.conf</tt> en lançant la commande <span><b class="command">/sbin/lilo</b></span>. </p> <p> Pour une meilleure compréhension, rien ne vaut un exemple. Supposons que vous ayez les périphériques <tt class="filename">IDE</tt> suivants : </p> <div class="itemizedlist"><ul type="disc"> <li><p> <tt class="filename">ide0</tt>: <tt class="filename">hda</tt>, <tt class="filename">hdb</tt> (disques durs) </p></li> <li><p> <tt class="filename">ide1</tt>: <tt class="filename">hdc</tt>, <tt class="filename">hdd</tt> (disques durs ou autres périphériques comme lecteurs CDROM) </p></li> <li><p> <tt class="filename">ide2</tt>: <tt class="filename">hde</tt> (premier disque dur libre) </p></li> <li><p> <tt class="filename">ide3</tt>: <tt class="filename">hdg</tt> (second disque dur libre) </p></li> </ul></div> <p> Les deux disques durs libres ci-dessus (<tt class="filename">hde</tt> et <tt class="filename">hdg</tt>) sont ceux que vous voulez configurer en RAID 1 pour créer le périphérique RAID <tt class="filename">/dev/ataraid/d0</tt>. Notez que nous n'avons pas <tt class="filename">hdf</tt> ou <tt class="filename">hdh</tt> car c'est comme cela que sont utilisés les ports IDE/RAID sur le contrôleur Promise. Ce n'est pas une bonne idée de connecter deux disques durs sur le même contrôleur de port IDE Promise. Dans l'exemple ci-dessus, nous utilisons les connexions Primary Master et Secondary Master sur la carte Promise Technology. </p> <p> Si vous ignorez comment les divers périphériques <tt class="filename">IDE</tt> sont connectés sur votre ordinateur, jetez un coup d'œil à <tt class="filename">/proc/devices</tt> et <tt class="filename">/proc/ide/*</tt>. Vous pouvez aussi consulter attentivement le fichier log de démarrage <tt class="filename">/var/log/bootlog</tt> (ou tapez la commande <span><b class="command">dmesg | more</b></span> juste après le démarrage de votre système Linux) pour trouver les périphériques <tt class="filename">IDE</tt>. Ensuite, entrez la commande <span><b class="command">less /proc/pci</b></span>, et localisez les informations relatives à Promise Technology. Dans la sortie de la commande <span><b class="command">less /proc/pci</b></span>, vous trouverez quelque par des informations à propos de votre contrôleur Promise qui ressemblent à ceci : </p> <pre class="screen">Bus 0, device 17, function 0: Unknown mass storage controller: Promise Technology Unknown device (rev 2). Vendor id=105a. Device id=d30. Medium devsel. IRQ 10. Master Capable. Latency=32. I/O at 0x9400 [0x9401]. I/O at 0x9000 [0x9001]. I/O at 0x8800 [0x8801]. I/O at 0x8400 [0x8401]. I/O at 0x8000 [0x8001]. Non-prefetchable 32 bit memory at 0xd5800000 [0xd5800000].</pre> <p> Sur cette recopie d'écran, on apprend que notre carte Promise Technology utilise l'interruption IRQ 10 pour les deux ports <tt class="filename">IDE</tt> (<tt class="filename">ide2</tt> et <tt class="filename">ide3</tt>). L'utilisation de la même interruption est parfaitement autorisée à la condition que votre noyau supporte le partage d'interruptions PCI (PCI IRQ Sharing). Par défaut, votre noyau Linux est configuré pour supporter ce partage. De cette recopie d'écran, on apprend également que notre carte Promise Technology utilise diverses adresses d'entrées/sorties. Afin d'identifier correctement les disques au démarrage, nous n'avons besoin que du (des) numéro(s) d'interruption et des quatre premières adresses d'E/S, celles en dehors des crochets [ ]. Reportons cette information sur un morceau de papier. Dans ce cas, la sortie d'écran ci-dessus nous donne : </p> <pre class="screen">IRQ<sub>1</sub> = 10 IRQ<sub>2</sub> = 10 IO<sub>1</sub> = 0x9400 IO<sub>2</sub> = 0x9000 IO<sub>3</sub> = 0x8800 IO<sub>4</sub> = 0x8400</pre> <p> À présent, nous devons évaluer ceci pour obtenir l'<span class="emphasis"><em>Append line</em></span> correcte. Puis le préciser soit dans l'<span class="emphasis"><em>Append Line</em></span> à chaque démarrage, soit dans le fichier de configuration de lilo. </p> <pre class="screen"> ideX=IO<sub>1</sub>,IO<sub>2</sub>+0x0002,IRQ<sub>1</sub> ideY=IO<sub>3</sub>,IO<sub>4</sub>+0x0002,IRQ<sub>2</sub> où ideX et ideY sont les deux ports IDE de la carte Promise utilisés par les deux disques libres.</pre> <p> Dans notre exemple, l'<span class="emphasis"><em>Append Line</em></span> précédente devient : </p> <p> <tt class="filename">ide2=0x9400,0x9002,10 ide3=0x8800,0x8402,10</tt> </p> <p> Si, par exemple, nous voulions démarrer sur le noyau version 2.4.19, étiqueté <tt class="filename">linux</tt> d'après <tt class="filename">/etc/lilo.conf</tt>, alors nous spécifierions notre <span class="emphasis"><em>Append Line</em></span> avec l'une des deux méthodes suivantes : </p> <p> </p> <div class="orderedlist"><ol type="1"> <li> <p> Au démarrage </p> <pre class="screen"><tt class="prompt">boot: </tt><b class="userinput"><tt>linux ide2=0x9400,0x9002,10 ide3=0x8800,0x8402,10</tt></b></pre> <p> Si vous choisissez cette méthode, vous devrez taper manuellement l'<span class="emphasis"><em>Append Line</em></span> après l'étiquette noyau <tt class="filename">linux</tt> chaque fois que vous démarrerez votre machine Linux. </p> </li> <li> <p><a name="tag2"></a> Dans le fichier <tt class="filename">/etc/lilo.conf</tt> </p> <pre class="screen">image=/boot/vmlinuz-2.2.19 label=linux read-only root=/dev/ataraid/d0p12 append="ide2=0x9400,0x9002,10 ide3=0x8800,0x8402,10"</pre> <p> Si vous choisissez cette méthode, vous devez lancer lilo une fois, en tapant la commande <span><b class="command">/sbin/lilo</b></span>, pour activer les changements. Et vous n'aurez rien de plus à taper au démarrage. </p> </li> </ol></div> <p> </p> </div> <div class="sect2" lang="fr"> <div class="titlepage"> <div><div><h3 class="title"> <a name="settingup"></a>7.3. Configurer le RAID 1</h3></div></div> <div></div> </div> <p> Si vous souhaitez configurer le RAID 1 en utilisant le pilote propriétaire Promise Technology (<tt class="filename">ft.o</tt>), vous pouvez télécharger le pilote Promise (<tt class="filename">ft.o</tt>) dans <tt class="filename">/lib/modules/kernel-version</tt> et charger le module en tapant la commande <span><b class="command">modprobe -k ft</b></span>. Vous pourrez alors accéder à votre nouveau périphérique RAID comme étant <tt class="filename">/dev/sdc</tt> ou quelque chose comme cela. Mais si cela ne fonctionne pas, alors déterminez votre <span class="emphasis"><em>Append Line</em></span> et ajoutez-la à votre fichier <tt class="filename">/etc/lilo.conf</tt>. Si vous configurez le RAID sur un système Linux existant et si vous utilisez, soit le pilote <tt class="filename">ft</tt> de Promise Technology, soit le pilote Linux natif <tt class="filename">ataraid</tt>, alors l'utilisation de l'<span class="emphasis"><em>Append Line</em></span> est vivement recommandée. Une fois que vous redémarrez avec votre nouveau fichier <tt class="filename">/etc/lilo.conf</tt> qui contient l'<span class="emphasis"><em>Append Line</em></span>, vous pouvez charger l'un des deux pilotes (<tt class="filename">ft.o</tt> de Promise Technology ou <tt class="filename">ataraid.o</tt>, le module RAID Linux natif) pour activer le RAID sauf si votre noyau intègre en lui le support ataraid auquel cas vous n'avez pas à charger le module ataraid. </p> <p> Comme le RAID Linux natif est recommandé, nous allons en discuter plus en détails. Pour configurer le RAID Linux natif sur une machine Linux existante, insérez l'<span class="emphasis"><em>Append Line</em></span> dans le fichier <tt class="filename">/etc/lilo.conf</tt> comme expliqué précédemment. Validez les modifications en tapant la commande <span><b class="command">/sbin/lilo</b></span>. Relancez votre ordinateur. Après que celui-ci ait redémarré, chargez manuellement le module ataraid si votre noyau n'a pas le support ataraid intégré ou bien si le chargement du module <tt class="filename">ataraid.o</tt> a échoué pour une raison ou pour une autre. Si vous avez compilé votre noyau avec le support ataraid intégré à celui-ci (ataraid pas sous forme de module), alors vous pouvez commencer à formater et utiliser votre disque miroir <tt class="filename">/dev/ataraid/d0</tt> immédiatement. </p> <p> Mais si vous avez compilé l'ataraid comme un module séparé, alors tapez la commande <span><b class="command">lsmod</b></span> et regardez si ataraid fait partie de la liste. Si ce n'est pas le cas, chargez-le manuellement en tapant la commande <span><b class="command">modprobe -k ataraid</b></span>. Si vous ne voyez plus aucune erreur, alors vous pouvez commencer à utiliser votre disque miroir <tt class="filename">/dev/ataraid/d0</tt> immédiatement. Formatez-le, montez-le et utilisez-le comme vous le feriez normalement. </p> <p> Le fait que vous puissiez utiliser <tt class="filename">/dev/ataraid/d0</tt> implique que vous ayez rempli votre mission avec succès. SVP, n'accédez pas directement aux disques <tt class="filename">/dev/hde</tt>, <tt class="filename">/dev/hdg</tt> ou à leurs partitions, bien que Linux vous le permette. Une fois que vous avez construit un disque miroir à partir de deux disques, vous devez toujours accéder au miroir et pas aux disques eux-mêmes directement. </p> </div> </div> <div class="navfooter"> <hr> <table width="100%" summary="Navigation footer"> <tr> <td width="40%" align="left"> <a accesskey="p" href="ar01s06.html">Précédent</a> </td> <td width="20%" align="center"><a accesskey="u" href="index.html">Niveau supérieur</a></td> <td width="40%" align="right"> <a accesskey="n" href="ar01s08.html">Suivant</a> </td> </tr> <tr> <td width="40%" align="left" valign="top">6. Installer le RAID Linux natif </td> <td width="20%" align="center"><a accesskey="h" href="index.html">Sommaire</a></td> <td width="40%" align="right" valign="top"> 8. Mettre à jour le noyau</td> </tr> </table> </div> </body> </html>