<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>11. Créer des CD-ROM amorçables</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 des disquettes d'amorçage"> <link rel="up" href="index.html" title="Guide pratique des disquettes d'amorçage"> <link rel="previous" href="ar01s10.html" title="10. La méthode des pros"> <link rel="next" href="ar01s12.html" title="12. Foire Aux Questions (FAQ)"> </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">11. Créer des CD-ROM amorçables</th></tr> <tr> <td width="20%" align="left"> <a accesskey="p" href="ar01s10.html">Précédent</a> </td> <th width="60%" align="center"> </th> <td width="20%" align="right"> <a accesskey="n" href="ar01s12.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="cdrom"></a>11. Créer des CD-ROM amorçables</h2></div></div> <div></div> </div> <p> Cette section a été écrite avec la contribution de Rizwan Mohammed Darwe (rizwan CHEZ clovertechnologies POINT com). </p> <p> Cette section suppose que vous êtes familier avec la procédure et le fonctionnement de l'écriture de CD sous Linux. Considérez ceci comme une référence rapide pour inclure la possibilité de démarrer à partir du CD que vous allez graver. La CD-Writing-HOWTO devrait vous donner plus de détails. </p> <div class="sect2" lang="fr"> <div class="titlepage"> <div><div><h3 class="title"> <a name="id2519174"></a>11.1. Qu'est-ce que El Torito ?</h3></div></div> <div></div> </div> <p> À partir des plates-formes x86, plusieurs <span class="acronym">BIOS</span> ont commencé à accepter les CD amorçables. Les rustines pour <span><b class="command">mkisofs</b></span> sont basés sur le standard appelé « El Torito ». En deux mots, El Torito est une spécification qui indique le format qu'un CD doit respecter, afin de pouvoir démarrer directement sur celui-ci. </p> <p> La spécification « El Torito » dit que <span class="emphasis"><em>tout</em></span> lecteur de CD-ROM devrait fonctionner (SCSI ou EIDE) si le <span class="acronym">BIOS</span> est compatible El Torito. Sauf que cela n'a été testé qu'avec des lecteurs EIDE, car aucun contrôleur SCSI testé ne semble supporter El Torito. La carte mère doit impérativement être compatible El Torito. Comment savoir si votre carte mère est compatible El Torito ? Eh bien les cartes mères compatibles offrent le choix de démarrer à partir du disque dur, de la disquette, du réseau ou du CD-ROM. </p> </div> <div class="sect2" lang="fr"> <div class="titlepage"> <div><div><h3 class="title"> <a name="id2519217"></a>11.2. Comment ça marche</h3></div></div> <div></div> </div> <p> Le standard El Torito fonctionne en faisant apparaître le lecteur de CD, à travers les appels <span class="acronym">BIOS</span>, comme un lecteur de disquettes normal. De cette façon vous mettez simplement n'importe quelle image de la taille d'une disquette (exactement 1440 ko pour une disquette de 1,44 Mo) quelque part sur le système de fichiers ISO. Dans l'en-tête du système de fichiers ISO vous placez un pointeur vers cette image. Le <span class="acronym">BIOS</span> va alors récupérer cette image à partir du CD et agit comme si il démarrait à partir du lecteur de disquettes. Cela permet à une disquette de démarrage <span><b class="command">LILO</b></span>, par exemple, d'être utilisée simplement comme si c'était une vraie disquette. </p> <p> En général, les 1,44 (ou 2,88 si supportés) premiers Mo du CD-ROM contiennent une image de la disquette créée par vous. Cette image est traitée comme une disquette par le <span class="acronym">BIOS</span> et démarrée par celui-ci. (Avec comme conséquence, lors du démarrage à partir de la disquette virtuelle, que votre lecteur original <span class="emphasis"><em>A:</em></span> (<tt class="filename">/dev/fd0</tt>) ne sera plus accessible, mais vous pouvez toujours essayer <tt class="filename">/dev/fd1</tt>). </p> </div> <div class="sect2" lang="fr"> <div class="titlepage"> <div><div><h3 class="title"> <a name="id2519310"></a>11.3. Comment le faire marcher</h3></div></div> <div></div> </div> <p> D'abord, il faut créer un fichier, disons <tt class="filename">boot.img</tt>, qui est l'image exacte de la disquette que vous voulez démarrer via le CD-ROM. Ce doit être une disquette de démarrage 1,44 Mo. La commande suivante permet de la créer : </p> <pre class="programlisting"> dd if=/dev/fd0 of=boot.img bs=10k count=144 </pre> <p> en supposant que la disquette se trouve dans le lecteur <span class="emphasis"><em>A:</em></span>. </p> <p> Placez cette image quelque part dans la hiérarchie qui sera la source du système de fichiers iso9660. C'est une bonne idée de mettre tous les fichiers relatifs au démarrage dans leur propre répertoire (<tt class="filename">boot/</tt> sous la racine du système de fichiers iso9660, par exemple). </p> <p> Avertissement : Votre disquette de démarrage <span class="emphasis"><em>doit</em></span> charger un <span class="emphasis"><em>initial ramdisk</em></span> via <span><b class="command">LILO</b></span>, et pas le disque mémoire du noyau ! Ceci est du au fait que lorsque le noyau démarre, l'émulation <span class="acronym">BIOS</span> du CD comme disquette est limitée et va échouer. <span><b class="command">LILO</b></span> va charger le disque mémoire en utilisant les appels disques <span class="acronym">BIOS</span>, et l'émulation fonctionne normalement. </p> <p> La spécification El Torito requiert également la création d'un <span class="emphasis"><em>catalogue de démarrage</em></span>. Il s'agit d'un fichier de 2048 octets qui n'a pas grand intérêt à part qu'il est nécessaire. La correction réalisée par l'auteur de <span><b class="command">mkisofs</b></span> permet la création automatique de ce catalogue de démarrage, mais vous devez spécifier où ce catalogue doit se trouver dans la hiérarchie du système de fichiers iso9660. En général c'est une bonne idée de le mettre au même endroit que l'image de démarrage, et de l'appeler <tt class="filename">boot.catalog</tt>. La commande pour créer le système de fichiers iso9660 dans le fichier <tt class="filename">bootcd.iso</tt> est alors : </p> <pre class="programlisting"> mkisofs -r -b boot/boot.img -c boot/boot.catalog -o bootcd.iso . </pre> <p> L'option <tt class="option">-b</tt> précise l'image de démarrage à utiliser (notez que le chemin est relatif à la racine du disque iso9660), et l'option <tt class="option">-c</tt> est pour le fichier catalogue de démarrage. L'option <tt class="option">-r</tt> va mettre les propriétaires et droits des fichiers appropriés (voir la page de manuel de <span><b class="command">mkisofs</b></span>). Le « . » à la fin dit de prendre comme source le répertoire courant. </p> <p> Maintenant gravez le CD avec la commande habituelle et le voilà prêt à démarrer. </p> </div> <div class="sect2" lang="fr"> <div class="titlepage"> <div><div><h3 class="title"> <a name="id2519494"></a>11.4. Créer des CD-ROM Win9x amorçables</h3></div></div> <div></div> </div> <p> La première chose à faire est de récupérer une image amorçable utilisée par le CD source. Mais vous ne pouvez pas vous contenter de monter le CD sous Linux et d'utiliser <span><b class="command">dd</b></span> pour copier les 1440 premiers kilo-octets vers une disquette ou un fichier <tt class="filename">boot.img</tt>. Au lieu de cela, vous devez simplement amorcer votre système à partir du CD-ROM source. </p> <p> Lorsque vous démarrez le CD Win98 vous vous retrouvez à l'invite <span class="emphasis"><em>A:</em></span>, qui est en fait le disque mémoire. Et <span class="emphasis"><em>D:</em></span> ou <span class="emphasis"><em>Z:</em></span> où se trouvent tous les fichiers d'installation. En utilisant la commande DOS <span><b class="command">diskcopy</b></span>, copiez l'image <span class="emphasis"><em>A:</em></span> dans le vrai lecteur de disquettes, qui est maintenant <span class="emphasis"><em>B:</em></span>. La commande suivante permet de le faire : </p> <pre class="programlisting"> diskcopy A: B: </pre> <p> Cela fonctionne exactement comme <span><b class="command">dd</b></span>. Vous pouvez essayer de démarrer à partir de ce disque fraîchement créé pour tester si le processus de démarrage est similaire à celui du CD source. Ensuite faites le <span><b class="command">dd</b></span> habituel de cette disquette vers un fichier comme <tt class="filename">boot.img</tt> et le reste sera comme d'habitude. </p> </div> </div> <div class="navfooter"> <hr> <table width="100%" summary="Navigation footer"> <tr> <td width="40%" align="left"> <a accesskey="p" href="ar01s10.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="ar01s12.html">Suivant</a> </td> </tr> <tr> <td width="40%" align="left" valign="top">10. La méthode des pros </td> <td width="20%" align="center"><a accesskey="h" href="index.html">Sommaire</a></td> <td width="40%" align="right" valign="top"> 12. Foire Aux Questions (FAQ)</td> </tr> </table> </div> </body> </html>