Sophie

Sophie

distrib > * > 2010.0 > * > by-pkgid > a412ceb851151854794ced2a242192bb > files > 481

howto-html-fr-20080722-1mdv2010.0.noarch.rpm

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>8. Réduire la taille du système racine</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="ar01s07.html" title="7. En cas de problème, ou l'agonie de la défaite">
<link rel="next" href="ar01s09.html" title="9. Sujets divers">
</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">8. Réduire la taille du système racine</th></tr>
<tr>
<td width="20%" align="left">
<a accesskey="p" href="ar01s07.html">Précédent</a> </td>
<th width="60%" align="center"> </th>
<td width="20%" align="right"> <a accesskey="n" href="ar01s09.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="slimfast"></a>8. Réduire la taille du système racine</h2></div></div>
<div></div>
</div>
<p>
Parfois un système racine est trop gros pour tenir sur une disquette,
même après compression. Voici quelques techniques pour réduire sa
taille, citées par ordre décroissant d'efficacité :
</p>
<div class="sect2" lang="fr">
<div class="titlepage">
<div><div><h3 class="title">
<a name="high-density"></a>8.1. Augmentez la densité du disque</h3></div></div>
<div></div>
</div>
<p>
Par défaut, les disquettes sont formatées à 1440 ko, mais des formats
plus denses existent. <tt class="filename">fdformat</tt> peut formater des
disques avec les tailles suivantes : 1600, 1680, 1722, 1743, 1760, 1840
et 1920. Lisez la page de manuel de <tt class="filename">fdformat</tt> ainsi
que <tt class="filename">/usr/src/linux/Documentation/devices.txt</tt>.
</p>
<p>
Mais quelles densités/géométries votre machine peut-elle supporter ? Voici des
réponses (légèrement modifiées) de Alain Knaff, l'auteur de
<span><b class="command">fdutils</b></span>.
</p>
<div class="blockquote"><table border="0" width="100%" cellspacing="0" cellpadding="0" class="blockquote" summary="Block quote">
<tr>
<td width="10%" valign="top"> </td>
<td width="80%" valign="top">
<p>
C'est plus le problème du <span class="acronym">BIOS</span> que du format physique
des disquettes. Si le <span class="acronym">BIOS</span> décide que tous les
numéros de secteurs supérieurs à 18 sont non valides, alors on ne peut
pas y faire grand chose. En effet, à moins de désassembler le
<span class="acronym">BIOS</span>, le seul moyen de trouver la bonne valeur est en
tâtonnant. Quoiqu'il en soit, si le <span class="acronym">BIOS</span> supporte les
disques ED (grande densité : 36 secteurs/piste et 2,88 Mo), il y a des
chances pour que les disquettes de 1722 ko soient également supportées.
</p>
<p>
Les disquettes super-formatées avec plus de 21 secteurs par piste ne
sont vraisemblablement pas amorçables : en fait, celles qui 
utilisent des secteurs de tailles non standard (1024 octets par 
secteur au lieu de 512, par exemple) ne sont vraisemblablement pas 
démarrables. Il devrait être malgré tout possible d'écrire un programme 
de démarrage du secteur pour contourner cela. Si je me souviens bien, le 
programme <span><b class="command">DOS 2m</b></span> en est capable, ainsi que les 
programmes <span><b class="command">XDF</b></span> de <span class="acronym">OS/2</span>.
</p>
<p>
Certains <span class="acronym">BIOS</span> clament artificiellement que tout
secteur supérieur à 18 est certainement défectueux. Comme les disquettes
de 1722 ko utilisent des secteurs supérieurs à 21, elles ne devraient
pas être amorçables. Le meilleur moyen de tester serait de formater une
disquette DOS ou syslinux en 1722 ko et de la rendre amorçable. Si 
vous utilisez <span><b class="command">LILO</b></span>, n'utilisez pas l'option
<tt class="option">linear</tt> (sans quoi <span><b class="command">LILO</b></span> penserait que
le format par défaut de la disquette est de 18 secteurs par piste, et la
disquette ne démarrera pas même si le <span class="acronym">BIOS</span> la
supporte).
</p>
</td>
<td width="10%" valign="top"> </td>
</tr>
<tr>
<td colspan="2" align="right" valign="top">--<span class="attribution">Alain Knaff</span>
</td>
<td width="10%" valign="top"> </td>
</tr>
</table></div>
</div>
<div class="sect2" lang="fr">
<div class="titlepage">
<div><div><h3 class="title">
<a name="id2518191"></a>8.2. Remplacer les utilitaires indispensables par BusyBox</h3></div></div>
<div></div>
</div>
<p>
La plupart de l'espace disque d'un système de fichiers est consommé par
des utilitaires indispensables tels que <span><b class="command">cat</b></span>,
<span><b class="command">chmod</b></span>, <span><b class="command">cp</b></span>, <span><b class="command">dd</b></span>,
<span><b class="command">df</b></span>, et cætera. Le projet <span class="emphasis"><em>BusyBox</em></span>
permet de fournir un remplacement à ces utilitaires indispensables.
BusyBox fournit un seul fichier monolithique exécutable,
<span><b class="command">/bin/busybox</b></span>, d'environ 150 ko, qui implémente les
fonctions de ces utilitaires. Vous pouvez créer des liens symboliques à
partir de différents programmes vers cet exécutable ;
<span><b class="command">busybox</b></span> voit comment il a été appelé et invoque le
code correcte. BusyBox inclut même un shell basique. BusyBox est
disponible sous forme de paquetage binaire pour plusieurs distributions,
et le code source est disponible sur le site de BusyBox.
</p>
</div>
<div class="sect2" lang="fr">
<div class="titlepage">
<div><div><h3 class="title">
<a name="id2518266"></a>8.3. Changez de shell</h3></div></div>
<div></div>
</div>
<p> Certains shells populaires sous Linux, tels que
<span><b class="command">bash</b></span> et <span><b class="command">tcsh</b></span>, sont gros et
nécessitent de nombreuses bibliothèques. Si vous n'utilisez pas le shell
de BusyBox, vous devriez quand même songer à remplacer le shell.
D'autres options plus légères existent, telles que
<span><b class="command">ash</b></span>, <span><b class="command">lsh</b></span>, <span><b class="command">kiss</b></span>
et <span><b class="command">smash</b></span>, bien plus petites et nécessitant peu (ou
pas) de bibliothèques. La plupart de ces shells de remplacement sont
disponibles sur
<a href="http://www.ibiblio.org/pub/Linux/system/shells/" target="_top">
http://www.ibiblio.org/pub/Linux/system/shells/</a>.
Vérifiez que le shell que vous utilisez sait faire tourner les commandes
de tous les scripts <span><b class="command">rc</b></span> que vous incluez sur le disque
d'amorce.  <a class="indexterm" name="id2518336"></a>
</p>
</div>
<div class="sect2" lang="fr">
<div class="titlepage">
<div><div><h3 class="title">
<a name="id2518345"></a>8.4. Nettoyez les bibliothèques et binaires</h3></div></div>
<div></div>
</div>
<p>
De nombreux binaires et bibliothèques restent non nettoyés (ils
contiennent les informations pour le déboguage). Si vous lancez
<span><b class="command">file</b></span> sur ces fichiers, il vous indiquera
<span class="emphasis"><em>not stripped</em></span> si c'est le cas. Lorsque vous copiez
des binaires sur votre système racine, une bonne habitude à prendre est
d'utiliser :
</p>
<pre class="programlisting">
objcopy --strip-all ORIGINE DESTINATION
</pre>
<a class="indexterm" name="id2518377"></a><a class="indexterm" name="id2518389"></a><a class="indexterm" name="id2518402"></a><p>
Et lorsque vous copiez des bibliothèques :
</p>
<pre class="programlisting">
objcopy --strip-debug ORIGINE DESTINATION
</pre>
</div>
<div class="sect2" lang="fr">
<div class="titlepage">
<div><div><h3 class="title">
<a name="id2518422"></a>8.5. Déplacez les fichiers non essentiels vers un disque
utilitaire</h3></div></div>
<div></div>
</div>
<p>
Si certains binaires ne sont pas immédiatement nécessaires au démarrage
ou au login, vous pouvez les déplacer sur un disque utilitaire. Lisez la
<a href="ar01s09.html#utilitydisk" title="9.2. Construire un disque utilitaire">Section 9.2, « Construire un disque utilitaire »</a> pour les détails. Vous pouvez aussi
déplacer les modules vers un disque utilitaire.
<a class="indexterm" name="id2518446"></a>
</p>
</div>
</div>
<div class="navfooter">
<hr>
<table width="100%" summary="Navigation footer">
<tr>
<td width="40%" align="left">
<a accesskey="p" href="ar01s07.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="ar01s09.html">Suivant</a>
</td>
</tr>
<tr>
<td width="40%" align="left" valign="top">7. En cas de problème, ou l'agonie de la défaite </td>
<td width="20%" align="center"><a accesskey="h" href="index.html">Sommaire</a></td>
<td width="40%" align="right" valign="top"> 9. Sujets divers</td>
</tr>
</table>
</div>
</body>
</html>