/usr/share/doc/HOWTO/fr-html/NFS-Root.html is in doc-linux-fr-html 2013.01-2.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<html>
<head>
<meta name="generator" content=
"HTML Tidy for Linux/x86 (vers 25 March 2009), see www.w3.org">
<meta name="GENERATOR" content="LinuxDoc-Tools 0.9.69">
<title>NFS-Root Mini-HowTo</title>
</head>
<body>
<h1>NFS-Root Mini-HowTo</h1>
<h2>par Andreas Kostyrka, <code>andreas@ag.or.at</code></h2>
Version 8, 8 Août 1997
<hr>
<em>(Adaptation française par Eric Dumas
<code>dumas@Linux.EU.Org</code>). Ce mini HowTo présente
comment configurer une station <b>Linux</b> "sans" disque, qui
monte sa racine via NFS. La dernière version de ce mini
HowTo peut toujours être trouvée et
récupérée sur le site
<code>ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO/mini/NFS-Root</code>,
ou sur n'importe quel miroir près de chez vous.</em>
<hr>
<h2><a name="s1">1. Copyright</a></h2>
<p>© 1996 Andreas Kostyrka
(<code>e9207884@student.tuwien.ac.at</code> ou
<code>andreas@ag.or.at</code>)</p>
<p>Sauf indication contraire, les documents HowTo <b>Linux</b> sont
copyrightés par leurs auteurs respectifs. Les documents
HowTo <b>Linux</b> peuvent être reproduits et diffusés
d'une manière complète ou partielle, sur n'importe
quel support, qu'il soit physique ou électronique, du moment
où ce copyright se trouve sur toutes les copies. Les
diffusions commerciales sont autorisées et même
encouragées. Toutefois, l'auteur aimerait bien être
averti de ce genre de distributions.</p>
<p>Toute traduction, travail dérivé, ou travaux plus
généraux incluant n'importe quel document HowTo
<b>Linux</b> doit être protégé par ce
copyright. De cette manière, vous ne pouvez pas créer
un document dérivant d'un HowTo et imposer des restrictions
supplémentaires sur sa distribution. Des exceptions à
ces règles peuvent être accordées sous
certaines conditions. Contactez dans ce cas le coordinateur des
HowTo <b>Linux</b> à l'adresse qui vous sera donnée
à la fin de cette section.</p>
<p>En résumé, nous souhaitons promouvoir la diffusion
de ces informations à travers le maximum de moyens de
communications. Toutefois, nous souhaitons absolument conserver un
copyright sur ces documents, et nous voulons être
consultés pour toute redistribution des HowTos.</p>
<p>Si vous avez des questions, contactez alors <em>Andreas
Kostyrka</em> <code>andreas@ag.or.at</code>, l'auteur de ce
mini-HOWTO, ou <em>Greg Hankins</em>, le coordinateur des HowTo
pour <b>Linux</b>, <code>gregh@sunsite.unc.edu</code> par courrier
électronique.</p>
<h2><a name="ss1.1">1.1 Contributeurs</a></h2>
<ul>
<li><em>Avery Pennarun</em> (<code>apenwarr@foxnet.net</code>) :
comment amorcer la machine sans LILO ;</li>
<li>Ofer Maor (<code>ofer@hadar.co.il</code>) : a écrit un
mini-HowTo bien meilleur pour configurer les stations de travail ne
possédant pas de disque ;</li>
<li>Christian Leutloff (<code>leutoff@sundancer.tng.oche.de</code>)
: informations sur netboot.</li>
</ul>
<h2><a name="s2">2. Présentation
générale</a></h2>
<p>En général, on peut rencontrer les
problèmes suivants concernant une station de travail :</p>
<ul>
<li>elle doit récupérer sa propre adresse IP, et si
besoin, également le reste de la configuration
Éthernet ;</li>
<li>elle doit connaître le serveur NFS et le chemin de
montage de sa partition racine.</li>
</ul>
<p>L'implémentation actuelle de <em>NFSROOT</em> dans le
noyau <b>Linux</b> (à partir de la version 1.3.7x) autorise
les "solutions" suivantes :</p>
<ul>
<li>l'adresse IP peut être trouvée par RARP, ou la
configuration Éthernet complète peut être
passée au noyau via des paramètres à LILO ou
LOADLIN ;</li>
<li>le chemin NFS pour monter la partition peut être
passé au noyau via des paramètres. Si cela n'est pas
fait, alors le noyau suppose que le serveur RARP est
également le serveur NFS, et utilise le chemin par
défaut (le chemin par défaut est codé en dur
dans le noyau : <code>/tftpboot/</code><em>adresse-IP de la
machine</em>.).</li>
<li>la configuration du client peut être trouvée par
BOOTP.</li>
</ul>
<p>Avant de commencer à configurer un environnement sans
disque, vous devez décider si vous allez amorcer la machine
en utilisant LILO ou LOADLIN. L'avantage de les utiliser est la
souplesse. L'inconvénient est la rapidité. Amorcer un
noyau <b>Linux</b> sans LILO est plus rapide.</p>
<h2><a name="s3">3. Configurer le serveur</a></h2>
<h2><a name="ss3.1">3.1 Compiler les noyaux</a></h2>
<p>Inclure le support RARP dans le noyau du serveur est
sûrement une très bonne idée. Vous devez
absolument l'inclure si vous allez amorcer sans donner des
paramètres au noyau. D'un autre côté, cela ne
vous aidera pas vraiment si le client n'est pas sur le même
sous réseau que le serveur.</p>
<p>Le noyau de la station de travail doit posséder les
éléments suivant au minimum :</p>
<ul>
<li>système de fichiers NFS inclu (ce n'est pas la peine de
compiler le système de fichiers ext2 : un module suffira)
;</li>
<li>"Root on NFS" doit être activé ;</li>
<li>le gestionnaire Éthernet pour la carte réseau de
la station doit être inclue dans le noyau ;</li>
<li>en fonction de vos besoin, il est possible que vous ayez
à inclure les protocoles RARP ou BOOTBP pour Nfs-Root (voir
les questions posées lors de la configuration du noyau
après avoir activé NFS).</li>
</ul>
<p>Si la station de travail sera amorcée sans aucun
paramètre passé au noyau, vous devez également
fixer le périphérique de la <em>racine</em> à
<code>0:255</code>. Pour faire cela, il suffit de créer un
fichier de périphérique avec :</p>
<p><code>mknod /dev/nfsroot b 0 255</code>.</p>
<p>Après avoir crée un tel fichier de
périphérique, vous pouvez fixer le
périphérique racine pour l'image du noyau avec :</p>
<p><code>rdev</code><em>image-noyau</em>
<code>/dev/nfsroot</code>.</p>
<h2><a name="ss3.2">3.2 Création du système de
fichiers racine</a></h2>
<h3>Copier le système de fichiers</h3>
<p>Attention : bien ces instructions peuvent très bien
fonctionner chez vous, elles ne sont peut être pas
très bien adaptées dans un environnement de
production. Consultez le mini-HowTo NFS-Root-Client de Ofer Maor
(<code>ofer@hadar.co.il</code>) pour une meilleur solution.</p>
<p>Après avoir décidé où placer la
racine de l'arborescence, il suffit de la créer avec par
exemple :</p>
<p><code>mkdir -p</code> <em>répertoire</em></p>
<p>et</p>
<p><code>tar cClf / - | tar xpCf</code> <em>répertoire</em>
<code>-</code>.</p>
<p>Si votre noyau s'amorce sans LILO, alors la racine doit
être <code>/tftpboot/</code><em>adresse-IP</em>. Si cela ne
vous plait pas, il suffit de le changer dans le fichier Makefile
dans les sources du noyau. Recherchez et modifiez la ligne
<code>NFS_ROOT = -DNFS_ROOT</code>. Si vous modifiez cela, vous
devrez alors recompiler le noyau.</p>
<h3>Changer la racine du système de fichiers</h3>
<p>Maintenant, supprimez les fichiers inutiles et vérifiez
les scripts situés dans <code>/etc/rc.d</code>. Certains
points sont vitaux :</p>
<ul>
<li>il est important que le périphérique
<code>eth0</code> soit configuré. La station de travaille
est lancée avec une interface <code>eth0</code> au moins
configurée partiellement. Donner comme adresse IP à
la station l'adresse du serveur n'est pas vraiment une chose
vraiment intelligente à faire (comme cela est arrivé
une fois à l'auteur lors de ses essais...).</li>
<li>un autre point important concerne le fichier
<code>/etc/fstab</code> de la station de travail. Il doit
être configuré pour des systèmes de fichiers
nfs.</li>
<li>ATTENTION : ne mélangez pas la racine du système
de fichiers situé sur le serveur la racine du système
de fichiers de la station de travail (j'ai déjà
patché un fichier <code>rc.inet1</code> sur le serveur et je
me demandais pourquoi la station de travail ne fonctionnait
toujours pas.).</li>
</ul>
<h3>Exporter le système de fichiers</h3>
<p>Exporter le répertoire racine de la station de travail.
Consultez la page de manuel <code>exports(5)</code>. Vous devriez
également relancer les démons <code>nfsd</code> et
<code>mountd</code> après ces modifications. Avec la RedHat,
vous pouvez effectuer très simplement cette opération
en lançant <code>/etc/rc.d/init.d/nfs stop</code> puis
<code>/etc/rc.d/init.d/nfs start</code>.</p>
<h3>Configuration RARP</h3>
<p>Configurer le serveur RARP quelque part sur le réseau. Si
vous amorcez sans un paramètre <em>nfsroot</em>, le serveur
RARP doit également être un serveur NFS. En principe,
ce sera le cas. Pour cela, vous devrez utiliser un noyau
possédant le support RARP.</p>
<p>Pour réaliser cette opération, lancez (et
insérez-le quelque part dans un fichier
<code>/etc/rc.d</code> du serveur !) :</p>
<p><code>/sbin/rarp -s</code> <em>adresse-ip
adresse-matériel</em></p>
<p>où</p>
<ul>
<li><em>adresse-ip</em> : est l'adresse IP de la station de travail
;</li>
<li><em>adresse-matériel</em> : est l'adresse
Éthernet de la carte réseau de la station de
travail.</li>
</ul>
Par exemple : <code>/sbin/rarp -s 131.131.90.200
00:00:c0:47:10:12</code>
<p>Vous pouvez également utiliser un nom symbolique à
la place de l'adresse IP, du moment où le serveur est
capable de trouver l'adresse IP (fichier <code>/etc/hosts</code> ou
résolution par le DNS).</p>
<h3>Configuration de BOOTP</h3>
<p>Pour configurer BOOTP, vous devrez éditer le fichier
<code>/etc/bootptab</code>. Consultez les pages de manuel
<em>bootpd(8)</em> et <em>bootptab(5)</em>.</p>
<h3>Trouver les adresses matérielles</h3>
<p>Je ne connais pas l'adresse de la carte ! Comment la trouver
?</p>
<ul>
<li>amorcez avec la disquette de boot, et regardez la ligne
où votre carte réseau est identifiée. Elle
contient normalement six octets en hexadécimal, qui
devraient normalement correspondre à l'adresse de la
carte.</li>
<li>amorcez la station avec un système d'exploitation qui
utilise TCP/IP. Ensuite, lancez un <code>ping</code> depuis le
serveur sur la station. Regardez enfin le cache ARP en
exécutant <code>/sbin/arp -a</code>.</li>
</ul>
<h2><a name="s4">4. Amorcer la station de travail</a></h2>
<h2><a name="ss4.1">4.1 Utiliser une ROM bootable</a></h2>
<p>Comme je ne l'ai pas utilisé par moi-même, je ne
peut donc vous donner que les conseils suivants (merci à
Christian Leutloff,
<code>leutloff@sundancer.tng.oche.de</code>).</p>
<ul>
<li>utiliser des bootroms "normale" ;</li>
<li>utiliser le paquetage <code>netboot</code> écrit par
Gero Kuhlmann, et qui est disponibles pour Linux, avec des
informations supplémentaires. netboot est
récupérable sur les miroirs Linux, ou dans le
paquetage de la Debian (<code>netboot-0.4</code>).</li>
<li>lire attentivement la documentation fournie avec votre bootrom
;</li>
<li>vous devrez probablement à activer le démon
<code>tftpd</code> sur votre serveur, mais cela dépend un
peu de la manière dont votre bootrom charge le noyau ;</li>
<li>toute information concernant les vendeurs de bootrom pour Linux
sont les bienvenues, étant donné que tout le monde
n'a pas forcément accès à un grossiste en prom
(tout spécialement en Europe, puisque c'est là
où je suis)</li>
</ul>
<h2><a name="ss4.2">4.2 Utiliser simplement une disquette</a></h2>
<p>Si vous avez exporté la racine du système de
fichier avec un nom correcte et que votre serveur NFS est
également le serveur RARP (ce qui implique que les deux
machines soient sur le même sous-réseau), alors il
suffit tout simplement d'amorcer la machine en utilisant un noyau
qui aura été copié sur la disquette (par
exemple avec <code>cat</code>). Vous devez fixer le
périphérique racine dans le noyau à 0:255.
Cela suppose au préalable que le répertoire racine
sur le serveur soit <code>/tftpboot/IP-Address</code> (cette valeur
peut être modifée en recompilant le noyay).</p>
<h2><a name="ss4.3">4.3 Utiliser un <em>bootloader</em> et
RARP</a></h2>
<p>Donnez au noyau tous les paramètres nécessaire
lorsque vous souhaitez amorcer la machine, et ajoutez :</p>
<p>
<code>nfsroot=</code><em>adresse-ip-serveur</em><code>:</code><em>/chemin
d'accès</em></p>
<p>où <em>adresse-ip-serveur</em> est l'adresse IP du
serveur NFS et <em>/chemin d'accès</em> est le chemin
d'accès au répertoire racine.</p>
<p>Quelques astuces :</p>
<ul>
<li>lorsque vous utilisez LILO, pensez à utiliser la
caractéristique "lock". Tapez une seule fois correctement
tous les paramètres et ajoutez "lock". La prochaine fois que
vous amorcerez la machine, LILO lancera un timeout directement et
amorcera la machine sans plus attendre.</li>
<li>lorsque vous générez une disquette
d'amorçage spécifique à une station, vous
pouvez également utiliser l'option <code>append=</code> dans
le fichier <code>lilo.conf</code>.</li>
</ul>
<h2><a name="ss4.4">4.4 Utiliser un <em>bootloader</em> sans
RARP</a></h2>
<p>En plus de <code>nfsroot</code>, il est nécessaire de
donner en argument au noyau :</p>
<p>
<code>nfsaddrs=</code><em>wst-IP</em><code>:</code><em>srv-IP</em><code>:</code>
<em>gw-IP</em><code>:</code><em>netm-IP</em><code>:</code><em>nommachine</em></p>
<p>Le noyau va alors configurer <code>eth0</code> avec les
paramètres donnés :</p>
<ul>
<li>wst-IP : adresse IP de la machine ;</li>
<li>srv-IP : adresse IP du serveur NFS ;</li>
<li>gw-IP : adresse IP de la passerelle ;</li>
<li>netm-IP : masque réseau ;</li>
<li>nommachine : nom de la machine.</li>
</ul>
<h2><a name="s5">5. Problèmes connus</a></h2>
<h2><a name="ss5.1">5.1 /sbin/init ne se lance pas</a></h2>
<p>Un problème fréquent avec <code>/sbin/init</code>
est que certaines distributions récentes sont fournies avec
une version du programme <code>init</code> dynamiquement
lié. Donc, vous devez fournir une configuration correcte
concernant le répertoire <code>/lib</code> au client. Une
solution assez simple consiste à remplacer /sbin/init (pour
le client) par un programme statiquement lié "Hello World".
De cette manière, vous pouvez déterminer si c'est
bien la cause du problème, ou bien un problème plus
grave.</p>
<h2><a name="ss5.2">5.2 Problèmes avec le répertoire
/dev</a></h2>
<p>Lors de l'amorçage de la machine, si vous obtenez tout un
tas de messages d'erreurs concernant les ttys, vous devriez alors
lancer un <code>MAKEDEV</code> sur le client dans le
répertoire <code>/dev</code>. Certaines rumeurs font part
que cela ne fonctionne pas avec certains serveurs qui utilisent des
numéros de périphériques codés sur 64
bits. Contactez-moi si vous avez ce genre de problème. Une
solution possible consiste à créer un petit disque
mapé en méoire (ram disc) contenant le
répertoire <code>/dev</code> et de réinstaller les
i-noeuds des périphériques à chaque fois.</p>
<h2><a name="s6">6. Pour plus de renseignements...</a></h2>
<ul>
<li>il existe un client <code>BOOTP</code> :
<em>ftp://sunsite.unc.edu/system/Network/admin/bootpc.v045.tgz</em>.
Avec <code>initrd</code> (inclus dans Linux 2.0), cela devrait
fonctionner assez simplement pour les stations sans disque. Ce
démon est en fait un choix judicieux surtout si vous avez
besoin d'une configuration particulière.</li>
<li>Pour les amorçages basés sur bootpd, cela n'est
pas vraiment nécessaire puisque Linux 2.0 contient
également l'option d'utiliser BOOTP au lieu de RARP. Pour
être plus précis, vous pouvez inclure les deux options
dans le noyau lors de sa configuration, et la réponse la
plus rapide sera celle choisie.</li>
<li>dans le répertoire <code>Documentation</code> des
sources du noyau, vous pourrez y trouver un fichier documentant les
systèmes NFS-Root ;</li>
<li>il existe un patch quelque part qui permet de swapper
<em>via</em> NFS. On me l'a envoyé (durant une
période très surchargée), mais j'ai comme qui
dirait perdu le mail...</li>
</ul>
<p>Vous le trouverez probablement sur le site
<code>http://www.linuxhq.com/</code>< dans la partie "patches
non-officiels".</p>
<p>Ma clef PGP publique peut être consultée en
effectuant un finger à l'adresse
<code>andreas@ag.or.at</code>. Il s'agit de :</p>
<pre>
F1 F7 43 D5 07 C4 6C 87 BF 6B 33 A2 2C EE 5A F9
</pre>
</body>
</html>
|