diff options
author | Marc Fonvieille <blackend@FreeBSD.org> | 2004-07-20 15:35:56 +0000 |
---|---|---|
committer | Marc Fonvieille <blackend@FreeBSD.org> | 2004-07-20 15:35:56 +0000 |
commit | 2b783895632e0077c9f6790cc5c058cde3f08932 (patch) | |
tree | e2c54d19b0545dbf00d2f3364d50b6b8dc48b0a1 /fr_FR.ISO8859-1 | |
parent | 1ca7da2715eb5390bc11816196d49ccc46eb83c5 (diff) |
Notes
Diffstat (limited to 'fr_FR.ISO8859-1')
-rw-r--r-- | fr_FR.ISO8859-1/books/handbook/advanced-networking/chapter.sgml | 945 |
1 files changed, 943 insertions, 2 deletions
diff --git a/fr_FR.ISO8859-1/books/handbook/advanced-networking/chapter.sgml b/fr_FR.ISO8859-1/books/handbook/advanced-networking/chapter.sgml index 977f31c062..928e6f5685 100644 --- a/fr_FR.ISO8859-1/books/handbook/advanced-networking/chapter.sgml +++ b/fr_FR.ISO8859-1/books/handbook/advanced-networking/chapter.sgml @@ -2212,8 +2212,949 @@ Exports list on foobar: </sect1> <sect1 id="network-diskless"> - <title>Diskless Operation ** Traduction en Cours **</title> - <para></para> + <sect1info> + <authorgroup> + <author> + <firstname>Jean-François</firstname> + <surname>Dockès</surname> + <contrib>Mis à jour par </contrib> + </author> + </authorgroup> + <authorgroup> + <author> + <firstname>Alex</firstname> + <surname>Dupre</surname> + <contrib>Réorganisé et augmenté + par </contrib> + </author> + </authorgroup> + </sect1info> + <title>Système sans disque dur</title> + + <indexterm><primary>station de travail sans disque + dur</primary></indexterm> + <indexterm><primary>système sans disque + dur</primary></indexterm> + + <para>Une machine &os; peut démarrer via le réseau + et fonctionner sans disque dur local, en utilisant des + systèmes de fichiers montés à partir d'un + serveur <acronym>NFS</acronym>. Aucune modification du + système n'est nécessaire en dehors des fichiers de + configuration standards. Un tel système est facile + à mettre en oeuvre comme tous les éléments + sont directement disponibles:</para> + + <itemizedlist> + <listitem> + <para>Il y a au moins deux métodes possibles pour + charger un noyau via le réseau:</para> + + <itemizedlist> + <listitem> + <para><acronym>PXE</acronym>: l'environnement + d'exécution préalable au démarrage + d'&intel; (Preboot eXecution Environment) est une sorte de + ROM intelligente présente sur certaines cartes + réseau ou cartes mère. Consultez la page de + manuel &man.pxeboot.8; pour plus de détails.</para> + </listitem> + + <listitem> + <para>Le logiciel porté + <application>Etherboot</application> (<filename + role="package">net/etherboot</filename>) produit un code + stockable dans une ROM pour démarrer des noyaux via + le réseau. Le code peut être soit + implanté dans une PROM de démarrage sur une + carte réseau, soit chargé à partir + d'une disquette (ou d'un disque dur local), ou à + partir d'un système &ms-dos; en fonctionnement. De + nombreuses cartes réseau sont + supportées.</para> + </listitem> + </itemizedlist> + </listitem> + + <listitem> + <para>Une procédure d'exemple + (<filename>/usr/share/examples/diskless/clone_root</filename>) + facilite la création et la maintenance du + système de fichiers racine de la station de travail sur + le serveur. La procédure demandera sûrement + quelques modifications mais vous permettra de démarrer + rapidement.</para> + </listitem> + + <listitem> + <para>Des fichiers de démarrage du système + existent dans le répertoire <filename + role="directory">/etc</filename> pour détecter et + supporter le démarrage d'un système sans disque + dur.</para> + </listitem> + + <listitem> + <para>La pagination, si nécessaire, peut être + faite par l'intermédiaire d'un fichier + <acronym>NFS</acronym> ou sur un disque local.</para> + </listitem> + </itemizedlist> + + <para>Il existe plusieurs façons de configurer des stations + de travail sans disque dur. Plusieurs éléments + entrent en oeuvre, et la plupart peuvent être + ajustés en fonction des besoins locaux. Ce qui suit + décrit des variations sur la configuration d'un + système complet, mettant en avant le simplicité et + la compatibilité avec les procédures standards de + démarrage de &os;. Le système décrit + présente les caractéristiques suivantes:</para> + + <itemizedlist> + <listitem> + <para>Les stations de travail sans disque dur utilisent des + systèmes de fichiers <filename>/</filename> et + <filename>/usr</filename> partagés et en lecture + seule.</para> + + <para>Le système de fichiers racine est une copie d'une + racine &os; standard (généralement celle du + serveur), avec certains fichiers de configuration + remplacés par des versions spécifiques + à un fonctionnement sans disque dur, et parfois + à la station de travail auxquels ils + appartiennent.</para> + + <para>Les parties de la racine qui doivent être + inscriptibles sont remplacées par des systèmes + de fichiers &man.mfs.8; (&os; 4.X) ou &man.md.4; + (&os; 5.X). Toute modification sera perdue au + redémarrage du système.</para> + </listitem> + + <listitem> + <para>Le noyau est transféré et chargé + soit à l'aide d'<application>Etherboot</application> + soit de <acronym>PXE</acronym> comme certaines situations + peuvent exiger l'utilisation de l'une ou l'autre + méthode.</para> + </listitem> + </itemizedlist> + + <caution> + <para>Ainsi décrit, le système n'est pas + sécurisé. Il devrait se trouver dans une partie + protégée du réseau, et les autres machines + ne devraient pas lui faire confiance aveuglément.</para> + </caution> + + <para>Toutes les instructions de cette section ont + été testées sous &os; 4.9-RELEASE et + 5.2.1-RELEASE. Le texte est destiné à l'origine + pour une utilisation sous 4.X. Des notes on été + insérées aux endroits nécessaires pour + indiquer les modifications concernant la branche 5.X.</para> + + <sect2> + <title>Information de fond</title> + + <para>Mettre en place des stations de travail sans disque dur + est à la fois relativement simple et enclin aux + erreurs. Ces dernières sont parfois difficiles + à diagnostiquer pour de nombreuses raisons. Par + exemple:</para> + + <itemizedlist> + <listitem> + <para>Des options de compilation peuvent donner lieu + à des comportements différents à + l'exécution.</para> + </listitem> + + <listitem> + <para>Les messages d'erreurs sont souvent cachés ou + totalement absents.</para> + </listitem> + </itemizedlist> + + <para>Dans ce contexte, avoir quelques connaissances des + mécanismes sousjacents impliqués est très + utile pour résoudre les problèmes qui peuvent + surgir.</para> + + <para>Plusieurs opérations doivent être + effectutées pour un amorçage + réussi:</para> + + <itemizedlist> + <listitem> + <para>La machine doit obtenir des paramètres de base + comme son adresse IP, le nom du fichier exécutable, + le nom du serveur, l'emplacement de la racine. Ceci est + fait en utilisant le protocole <acronym>DHCP</acronym> ou le + protocole BOOTP. <acronym>DHCP</acronym> est une extension + compatible de BOOTP, et utilise les mêmes + numéros de ports et son format de paquets + basic.</para> + + <para>Il est possible de configurer un système pour + n'utiliser que BOOTP. Le programme serveur &man.bootpd.8; + fait partie du système de base de &os;.</para> + + <para>Cependant, <acronym>DHCP</acronym> présente + plusieurs avantage sur BOOTP (des fichiers de + configuration plus lisibles, la possibilité + d'utiliser <acronym>PXE</acronym>, plus de nombreux autres + avantages n'ayant pas de relation directe avec les + systèmes sans disque dur), et nous décrirons + principalement une configuration <acronym>DHCP</acronym>, + avec des exemples équivalent utilisant + &man.bootpd.8; quand cela est possible. L'exemple de + configuration utilisera le logiciel <application>ISC + DHCP</application> (la version 3.0.1.r12 était + installée sur le serveur de test).</para> + </listitem> + + <listitem> + <para>La machine a besoin de transférer un ou + plusieurs programmes en mémoire locale. + <acronym>TFTP</acronym> ou <acronym>NFS</acronym> sont + utilisés. Le choix entre <acronym>TFTP</acronym> et + <acronym>NFS</acronym> est à de nombreux endroits une + option sélectionnée lors de la compilation. + Une source d'erreur courante est d'indiquer des noms de + fichiers pour le mauvais protocole: <acronym>TFTP</acronym> + transfère généralement tous les + fichiers à partir d'un seul répertoire sur le + serveur, et attendra des noms de fichiers relatifs à + ce répertoire. <acronym>NFS</acronym> a besoin de + chemins d'accès absolus.</para> + </listitem> + + <listitem> + <para>Les éventuels programmes d'amorce + intermédiaires et le noyau doivent être + initialisés et exécutés. Il existe + plusieurs variations à ce niveau:</para> + + <itemizedlist> + <listitem> + <para><acronym>PXE</acronym> chargera &man.pxeboot.8;, + qui est une version modifiée du chargeur. Le + chargeur (&man.loader.8;) récupérera la + plupart des paramètres nécessaires au + démarrage du système, et les transmettra + au noyau avant de lui abandonner le contrôle du + système. Dans ce cas il est possible d'utiliser + un noyau <filename>GENERIC</filename>.</para> + </listitem> + + <listitem> + <para><application>Etherboot</application>, chargera + directement le noyau avec moins de préparation. + Vous devrez compiler un noyau avec des options + particulières.</para> + </listitem> + </itemizedlist> + + <para><acronym>PXE</acronym> et + <application>Etherboot</application> fonctionnent aussi + bien l'un que l'autre avec des systèmes 4.X. Comme + le noyau des systèmes 5.X laisse au chargeur + (&man.loader.8;) un peu plus de travail à + effectuer, <acronym>PXE</acronym> est + préféré pour les systèmes + 5.X.</para> + + <para>Si votre <acronym>BIOS</acronym> et vos cartes + réseau supportent <acronym>PXE</acronym>, vous + devriez probablement l'utiliser. Cependant, il est + toujours possible de démarrer un système 5.X + à l'aide + d'<application>Etherboot</application>.</para> + </listitem> + + <listitem> + <para>Et enfin, la machine a besoin d'accéder + à ses systèmes de fichiers. + <acronym>NFS</acronym> est utilisé dans tous les + cas.</para> + </listitem> + </itemizedlist> + + <para>Consultez également la page de manuel + &man.diskless.8;.</para> + </sect2> + + <sect2> + <title>Configuration</title> + + <sect3> + <title>Configuration utilisant <application>ISC + DHCP</application></title> + <indexterm> + <primary>DHCP</primary> + <secondary>système sans disque dur</secondary> + </indexterm> + + <para>Le serveur <application>ISC DHCP</application> + peut répondre aux requêtes BOOTP et + <acronym>DHCP</acronym>.</para> + + <para>Avec la version 4.9, <application>ISC DHCP + 3.0</application> ne fait pas partie du système de + base. Vous devrez installer le logiciel porté + <filename role="package">net/isc-dhcp3-server</filename> ou + la version pré-compilée correspondante. + Veuillez vous référer au <xref + linkend="ports"> pour des informations sur les logiciels + portés et les logiciels + pré-compilés.</para> + + <para>Une fois <application>ISC DHCP</application> + installé, il nécessite un fichier de + configuration pour fonctionner (normalement appelé + <filename>/usr/local/etc/dhcpd.conf</filename>). Voici un + exemple commenté, où la machine + <hostid>margaux</hostid> utilise + <application>Etherboot</application> et où la machine + <hostid>corbieres</hostid> emploie + <acronym>PXE</acronym>:</para> + + <programlisting> +default-lease-time 600; +max-lease-time 7200; +authoritative; + +option domain-name "example.com"; +option domain-name-servers 192.168.4.1; +option routers 192.168.4.1; + +subnet 192.168.4.0 netmask 255.255.255.0 { + use-host-decl-names on; <co id="co-dhcp-host-name"> + option subnet-mask 255.255.255.0; + option broadcast-address 192.168.4.255; + + host margaux { + hardware ethernet 01:23:45:67:89:ab; + fixed-address margaux.example.com; + next-server 192.168.4.4; <co id="co-dhcp-next-server"> + filename "/data/misc/kernel.diskless"; <co id="co-dhcp-filename"> + option root-path "192.168.4.4:/data/misc/diskless"; <co id="co-dhcp-root-path"> + } + host corbieres { + hardware ethernet 00:02:b3:27:62:df; + fixed-address corbieres.example.com; + next-server 192.168.4.4; + filename "pxeboot"; + option root-path "192.168.4.4:/data/misc/diskless"; + } +} + </programlisting> + + <calloutlist> + <callout arearefs="co-dhcp-host-name"><para>Cette option dit + à <application>dhcpd</application> d'envoyer le + paramètre des déclarations + <literal>host</literal> comme nom de machine pour la + machine sans disque dur. Une autre méthode + aurait été d'ajouter <literal>option + host-name <replaceable>margaux</replaceable></literal> + à l'intérieur des déclarations + <literal>host</literal>.</para> + </callout> + + <callout arearefs="co-dhcp-next-server"><para>La directive + <literal>next-server</literal> désigne le serveur + <acronym>TFTP</acronym> ou <acronym>NFS</acronym> + à utiliser pour télécharger le + chargeur ou le noyau (le comportement par défaut + étant d'utiliser la même machine que le + serveur <acronym>DHCP</acronym>).</para> + </callout> + + <callout arearefs="co-dhcp-filename"><para>La directive + <literal>filename</literal> précise le fichier + que chargera <application>Etherboot</application> ou + <acronym>PXE</acronym> à la prochaine + étape. Il doit être défini en + fonction de la méthode de transfert + utilisée. <application>Etherboot</application> + peut être compilé pour utiliser + <acronym>NFS</acronym> ou <acronym>TFTP</acronym>. Le + logiciel porté pour &os; utilisera + <acronym>NFS</acronym> par défaut. + <acronym>PXE</acronym> emploie <acronym>TFTP</acronym>, + c'est pourquoi un chemin d'accès relatif est + utilisé ici (cela peut dépendre de la + configuration du serveur <acronym>TFTP</acronym>, mais + devrait être plutôt classique). De plus, + <acronym>PXE</acronym> charge + <filename>pxeboot</filename>, et non pas le noyau. Il + existe d'autres possibilités + intéressantes, comme le chargement de + <filename>pxeboot</filename> à partir du + répertoire <filename + role="directory">/boot</filename> d'un CD-ROM &os; + (comme &man.pxeboot.8; peut charger un noyau + <filename>GENERIC</filename> cela rend possible + l'utilisation de <acronym>PXE</acronym> pour + démarrer à partir d'un lecteur de CD-ROM + distant).</para> + </callout> + + <callout arearefs="co-dhcp-root-path"><para>L'option + <literal>root-path</literal> définie le chemin + d'accès au système de fichiers racine, + suivant la notation classique de <acronym>NFS</acronym>. + En utilisant <acronym>PXE</acronym>, il est possible de + ne pas préciser l'adresse IP de la machine + dès lors que vous n'activez pas l'option BOOTP du + noyau. Le serveur <acronym>NFS</acronym> sera alors le + même que le serveur + <acronym>TFTP</acronym>.</para> + </callout> + </calloutlist> + </sect3> + + <sect3> + <title>Configuration utilisant BOOTP</title> + <indexterm> + <primary>BOOTP</primary> + <secondary>système sans disque dur</secondary> + </indexterm> + + <para>Ce qui suit présente une configuration + <application>bootpd</application> équivalente + (réduite à un seul client). Elle se + trouverait sous <filename>/etc/bootptab</filename>.</para> + + <para>Veuillez noter qu'<application>Etherboot</application> + doit être compilé avec l'option + <literal>NO_DHCP_SUPPORT</literal> (qui n'est pas + activée par défaut) afin d'utiliser BOOTP et + que <acronym>PXE</acronym> + <emphasis>nécessite</emphasis> + <acronym>DHCP</acronym>. The seul avantage évident + de <application>bootpd</application> est qu'il est + disponible dans le système de base.</para> + + <programlisting> +.def100:\ + :hn:ht=1:sa=192.168.4.4:vm=rfc1048:\ + :sm=255.255.255.0:\ + :ds=192.168.4.1:\ + :gw=192.168.4.1:\ + :hd="/tftpboot":\ + :bf="/kernel.diskless":\ + :rp="192.168.4.4:/data/misc/diskless": + +margaux:ha=0123456789ab:tc=.def100 + </programlisting> + </sect3> + + <sect3> + <title>Préparation d'un programme de démarrage + avec <application>Etherboot</application></title> + + <indexterm> + <primary>Etherboot</primary> + </indexterm> + + <para>Le <ulink url="http://etherboot.sourceforge.net">site + Web d'Etherboot</ulink> propose une <ulink + url="http://etherboot.sourceforge.net/doc/html/userman/t1.html"> + documentation importante</ulink> principalement + destinée aux systèmes Linux, mais contenant + néamoins des informations utiles. Ce qui suit + présente comment vous utiliseriez + <application>Etherboot</application> sur un système + &os;.</para> + + <para>Vous devez tout d'abord installer le logiciel + porté <filename + role="package">net/etherboot</filename> ou sa version + pré-compilée.</para> + + <para>Vous pouvez modifier la configuration + d'<application>Etherboot</application> (i.e. pour utiliser + <acronym>TFTP</acronym> au lieu de <acronym>NFS</acronym>) + en éditant le fichier <filename>Config</filename> + dans le répertoire des sources + d'<application>Etherboot</application>.</para> + + <para>Pour notre configuration nous utiliserons une disquette + de démarrage. Pour d'autres méthodes (PROM, + ou un programme &ms-dos;), consultez la documentation + d'<application>Etherboot</application>.</para> + + <para>Pour créer une disquette de démarrage, + insérez une disquette dans le lecteur de la machine + où vous avez installé + <application>Etherboot</application>, puis rendez-vous dans + le répertoire <filename + role="directory">src</filename> de l'arborescence + <application>Etherboot</application> et tapez:</para> + + <screen> +&prompt.root; <userinput>gmake bin32/<replaceable>devicetype</replaceable>.fd0</userinput></screen> + + <para><replaceable>devicetype</replaceable> dépend du + type de carte Ethernet se trouvant dans la station de + travail sans disque dur. Référez-vous au + fichier <filename>NIC</filename> dans le même + répertoire pour déterminer la valeur + <replaceable>devicetype</replaceable> correcte.</para> + </sect3> + + <sect3> + <title>Démarrer avec <acronym>PXE</acronym></title> + + <para>Par défaut le chargeur &man.pxeboot.8; charge le + noyau via <acronym>NFS</acronym>. Il peut être + compilé pour utiliser <acronym>TFTP</acronym> + à la place en spécifiant l'option + <literal>LOADER_TFTP_SUPPORT</literal> dans le fichier + <filename>/etc/make.conf</filename>. Lisez les commentaires + dans le fichier <filename>/etc/defaults/make.conf</filename> + (ou <filename>/usr/share/examples/etc/make.conf</filename> + pour les systèmes 5.X) pour plus de + détails.</para> + + <para>Il existe deux autres options de + <filename>make.conf</filename> non-documentées qui + peuvent être utiles pour la configuration d'une + machine faisant fonction de console série sans disque + dur: <literal>BOOT_PXELDR_PROBE_KEYBOARD</literal>, et + <literal>BOOT_PXELDR_ALWAYS_SERIAL</literal> (cette + dernière n'existe que sous &os; 5.X).</para> + + <para>Pour utiliser <acronym>PXE</acronym> quand la machine + démarre, vous aurez normalement besoin de + sélectionner l'option <literal>Boot from + network</literal> dans votre <acronym>BIOS</acronym>, ou + d'appuyer sur une touche de fonction lors de + l'initialisation du PC.</para> + </sect3> + + <sect3> + <title>Configuration des serveurs <acronym>TFTP</acronym> et + <acronym>NFS</acronym></title> + + <indexterm> + <primary>TFTP</primary> + <secondary>système sans disque dur</secondary> + </indexterm> + <indexterm> + <primary>NFS</primary> + <secondary>système sans disque dur</secondary> + </indexterm> + + <para>Si vous utilisez <acronym>PXE</acronym> ou + <application>Etherboot</application> configurés pour + employer <acronym>TFTP</acronym>, vous devez activer + <application>tftpd</application> sur le serveur de + fichier:</para> + + <procedure> + <step> + <para>Créez un répertoire à partir + duquel <application>tftpd</application> proposera les + fichiers, e.g. <filename + role="directory">/tftpboot</filename>.</para> + </step> + + <step> + <para>Ajoutez la ligne suivante à votre fichier + <filename>/etc/inetd.conf</filename>:</para> + + <programlisting>tftp dgram udp wait root /usr/libexec/tftpd tftpd -l -s /tftpboot</programlisting> + + <note> + <para>Il apparaît que certaines versions de + <acronym>PXE</acronym> veulent la version + <acronym>TCP</acronym> de <acronym>TFTP</acronym>. + Dans ce cas, ajoutez une seconde ligne, en + remplaçant <literal>dgram udp</literal> par + <literal>stream tcp</literal>.</para> + </note> + </step> + <step> + <para>Demandez à <application>inetd</application> + de relire son fichier de configuration:</para> + + <screen>&prompt.root; <userinput>kill -HUP `cat /var/run/inetd.pid`</userinput></screen> + </step> + </procedure> + + <para>Le répertoire <filename + role="directory">tftpboot</filename> peut être + placé n'importe où sur le serveur. + Assurez-vous que son emplacement est défini dans les + fichiers <filename>inetd.conf</filename> et + <filename>dhcpd.conf</filename>.</para> + + <para>Dans tous les cas, vous devez également activer + <acronym>NFS</acronym> et exporter le système de + fichiers approprié sur le serveur + <acronym>NFS</acronym>.</para> + + <procedure> + <step> + <para>Ajoutez ce qui suit au fichier + <filename>/etc/rc.conf</filename>:</para> + + <programlisting>nfs_server_enable="YES"</programlisting> + </step> + + <step> + <para>Exportez le système de fichiers contenant le + répertoire racine du système sans disque dur + en ajoutant ce qui suit au fichier + <filename>/etc/exports</filename> (ajustez le point de + montage et remplacez <replaceable>margaux + corbieres</replaceable> avec les noms des stations de + travail sans disque dur):</para> + + <programlisting><replaceable>/data/misc</replaceable> -alldirs -ro <replaceable>margaux corbieres</replaceable></programlisting> + </step> + + <step> + <para>Demandez à <application>mountd</application> + de relire son fichier de configuration. Si vous avez eu + besoin d'activer <acronym>NFS</acronym> dans + <filename>/etc/rc.conf</filename> lors du premier point, + vous voudrez probablement plutot redémarrer la + machine.</para> + + <screen>&prompt.root; <userinput>kill -HUP `cat /var/run/mountd.pid`</userinput></screen> + </step> + </procedure> + </sect3> + + <sect3> + <title>Compilation d'un noyau pour système sans disque + dur</title> + + <indexterm> + <primary>système sans disque dur</primary> + <secondary>configuration du noyau</secondary> + </indexterm> + + <para>Si vous utilisez <application>Etherboot</application>, + vous devez créer un fichier de configuration du noyau + pour le client sans disque dur avec les options suivantes + (en plus des options habituelles):</para> + + <programlisting> +options BOOTP # Use BOOTP to obtain IP address/hostname +options BOOTP_NFSROOT # NFS mount root filesystem using BOOTP info + </programlisting> + + <para>Vous pouvez vouloir également employer les + options <literal>BOOTP_NFSV3</literal>, + <literal>BOOT_COMPAT</literal> et + <literal>BOOTP_WIRED_TO</literal> (réferez-vous au + fichier <filename>LINT</filename> sous 4.X ou + <filename>NOTES</filename> sous 5.X).</para> + + <para>Les noms de ces options sont historiques et + légèrement trompeur comme elles activent + indifférement l'utilisation de + <acronym>DHCP</acronym> et BOOTP dans le noyau (il est + également possible de forcer une utilisation stricte + de BOOTP ou <acronym>DHCP</acronym>).</para> + + <para>Compilez le noyau (voir <xref linkend="kernelconfig">), + et copiez-le à l'emplacement indiqué dans + <filename>dhcpd.conf</filename>.</para> + + <note> + <para>Quand on utilise <acronym>PXE</acronym>, la + compilation d'un noyau avec les options + précédentes n'est pas strictement + nécessaire (bien que conseillé). Les activer + causera un plus grand nombre de requêtes + <acronym>DHCP</acronym> générées lors + du démarrage du noyau, avec un petit risque + d'inconsistence entre les nouvelles valeurs et celles + récupérées par &man.pxeboot.8; dans + certains cas particuliers. L'avantage de leur utilisation + est que le nom de la machine sera forcément + défini. Sinon vous devrez définir le nom de + la machine par une autre méthode, par exemple dans un + fichier <filename>rc.conf</filename> particulier au + client.</para> + </note> + + <note> + <para>Afin d'être chargeable par + <application>Etherboot</application>, un noyau 5.X doit + être compilé avec les “device + hints”. Vous définirez normalement l'option + suivante dans le fichier de configuration (voir le fichier + de commentaires sur la configuration: + <filename>NOTES</filename>):</para> + + <programlisting>hints "GENERIC.hints"</programlisting> + </note> + </sect3> + + <sect3> + <title>Préparer le système de fichiers + racine</title> + + <indexterm> + <primary>système de fichiers racine</primary> + <secondary>système sans disque dur</secondary> + </indexterm> + + <para>Vous devez créer un système de fichiers + racine pour les stations de travail sans disque dur, + à l'emplacement défini par + <literal>root-path</literal> dans le fichier + <filename>dhcpd.conf</filename>. Les sections suivantes + décrivent deux manières de le faire.</para> + + <sect4> + <title>Utilisation de la procédure + <filename>clone_root</filename></title> + + <para>C'est la méthode la plus rapide pour + créer un système de fichiers racine, mais + elle est, pour le moment, uniquement supportée sous + &os; 4.X.. Cette procédure est située + à l'emplacement + <filename>/usr/share/examples/diskless/clone_root</filename> + et demande quelques modifications, pour au moins ajuster + l'emplacement du système de fichiers à + créer (la variable <literal>DEST</literal>).</para> + + <para>Référez-vous aux commentaires + situés en début de la procédure pour + information. Ils expliquent comment le système de + fichiers de base est construit, et comment les fichiers + peuvent être remplacés de façon + sélective par des versions spécifiques + à un fonctionnement sans disque dur, ou à un + sous-réseau, ou encore à une station de + travail particulière. Ils donnent également + des exemples de fichiers <filename>/etc/fstab</filename> + et <filename>/etc/rc.conf</filename> pour un + fonctionnement sans disque dur.</para> + + <para>Les fichiers <filename>README</filename> dans le + répertoire <filename + role="directory">/usr/share/examples/diskless</filename> + contiennent beaucoup d'information de fond, mais, avec les + autres exemples du répertoire <filename + role="directory">diskless</filename>, ils documentent une + méthode de configuration qui est distincte de celle + utilisée par <filename>clone_root</filename> et les + procédures de démarrage du système de + <filename role="directory">/etc</filename>, ce qui est un + peu à l'origine de confusions. Utilisez-les comme + référence uniquement, à moins que + vous préfériez la méthode qu'ils + décrivent, dans quel cas vous devrez modifier les + procédures <filename>rc</filename>.</para> + </sect4> + + <sect4> + <title>Utilisation de la procédure <command>make + world</command> standard</title> + + <para>Cette méthode s'applique aussi bien à + &os; 4.X qu'à &os; 5.X et installera un + système complet (et non pas uniquement le + système de fichiers racine) dans le + répertoire défini par + <envar>DESTDIR</envar>. Tout ce dont vous avez besoin de + faire est d'exécuter la procédure + suivante:</para> + + <programlisting>#!/bin/sh +export DESTDIR=/data/misc/diskless +mkdir -p ${DESTDIR} +cd /usr/src; make world && make kernel +cd /usr/src/etc; make distribution</programlisting> + + <para>Une fois cela terminé, vous devrez personaliser + vos fichiers <filename>/etc/rc.conf</filename> et + <filename>/etc/fstab</filename> situés dans + <envar>DESTDIR</envar> en fonction de vos besoins.</para> + </sect4> + </sect3> + + <sect3> + <title>Configuration de l'espace de pagination</title> + + <para>Si nécessaire, un fichier de pagination + situé sur le serveur peut être utilisé + via <acronym>NFS</acronym>. Une des méthodes + couramment utilisées pour cela n'est plus + supportée sous 5.X.</para> + + <sect4> + <title>Pagination via <acronym>NFS</acronym> sous + &os; 4.X</title> + + <para>L'emplacement et la taille du fichier de pagination + peuvent être spécifiés avec les + options BOOTP/<acronym>DHCP</acronym> 128 et 129 + spécifiques à &os;. Des exemples de + fichiers de configuration pour <application>ISC DHCP + 3.0</application> ou <application>bootpd</application> + suivent:</para> + + <procedure> + <step> + <para>Ajoutez les lignes suivantes au fichier + <filename>dhcpd.conf</filename>:</para> + + <programlisting> +# Global section +option swap-path code 128 = string; +option swap-size code 129 = integer 32; + +host margaux { + ... # Standard lines, see above + option swap-path <replaceable>"192.168.4.4:/netswapvolume/netswap"</replaceable>; + option swap-size <replaceable>64000</replaceable>; +} + </programlisting> + + <para><literal>swap-path</literal> est le chemin + d'accès vers un répertoire où les + fichiers de pagination sont situés. Chaque + fichier sera nommé + <filename>swap.<replaceable>ip-client</replaceable></filename>.</para> + + <para>Les anciennes version de + <application>dhcpd</application> utilisaient une + syntaxe du type <literal>option option-128 + "...</literal>, qui n'est plus + supportée.</para> + + <para><filename>/etc/bootptab</filename> utiliserait la + syntaxe suivante à la place:</para> + + <programlisting>T128="192.168.4.4:/netswapvolume/netswap":T129=0000fa00</programlisting> + + <note> + <para>Dans le fichier + <filename>/etc/bootptab</filename>, la taille de + l'espace de pagination doit être exprimée + en hexadécimal.</para> + </note> + </step> + + <step> + <para>Sur le serveur du fichier de pagination + par <acronym>NFS</acronym>, créez le(s) + fichier(s) de pagination:</para> + + <screen> +&prompt.root; <userinput>mkdir <replaceable>/netswapvolume/netswap</replaceable></userinput> +&prompt.root; <userinput>cd <replaceable>/netswapvolume/netswap</replaceable></userinput> +&prompt.root; <userinput>dd if=/dev/zero bs=1024 count=<replaceable>64000</replaceable> of=swap.<replaceable>192.168.4.6</replaceable></userinput> +&prompt.root; <userinput>chmod 0600 swap.<replaceable>192.168.4.6</replaceable></userinput></screen> + + <para><replaceable>192.168.4.6</replaceable> est + l'adresse IP du client sans disque dur.</para> + </step> + + <step> + <para>Sur le serveur du fichier de pagination par + <acronym>NFS</acronym>, ajoutez la ligne suivante au + fichier <filename>/etc/exports</filename>:</para> + + <programlisting> +<replaceable>/netswapvolume</replaceable> -maproot=0:10 -alldirs <replaceable>margaux corbieres</replaceable> + </programlisting> + + <para>Ensuite demandez à + <application>mountd</application> à relire le + fichier <filename>exports</filename>, comme plus + haut.</para> + </step> + </procedure> + </sect4> + + <sect4> + <title>Pagination via <acronym>NFS</acronym> sous + &os 5.X</title> + + <para>Le noyau ne supporte pas l'activation de la pagination + par <acronym>NFS</acronym> au démarrage. L'espace + de pagination doit être activé par les + procédures de démarrage, en montant un + système de fichiers accessible en écriture + et en créant et en activant un fichier de + pagination. Pour créer un fichier de pagination de + la taille appropriée, vous pouvez effectuer ce qui + suit:</para> + + <screen>&prompt.root; <userinput>dd if=/dev/zero of=<replaceable>/path/to/swapfile</replaceable> bs=1k count=1 oseek=<replaceable>100000</replaceable></userinput></screen> + + <para>Pour ensuite l'activer, vous devez ajouter la ligne + suivante à votre fichier + <filename>rc.conf</filename>:</para> + + <programlisting>swapfile=<replaceable>/path/to/swapfile</replaceable></programlisting> + </sect4> + </sect3> + + <sect3> + <title>Problèmes divers</title> + + <sect4> + <title>Utilisation d'un <filename>/usr</filename> en lecture + seule</title> + + <indexterm> + <primary>système sans disque dur</primary> + <secondary>/usr en lecture seule</secondary> + </indexterm> + + <para>Si la station de travail sans disque dur est + configurée pour exécuter X, you devrez + ajuster le fichier de configuration de + <application>XDM</application>, qui envoie le journal + d'erreurs sur <filename role="directory">/usr</filename> + par défaut.</para> + </sect4> + + <sect4> + <title>Utilisation d'un serveur non-&os;</title> + + <para>Quand le serveur pour le système de fichiers + racine ne fait pas tourner &os;, vous devrez créer + le système de fichiers racine sur une machine &os;, + puis le copier vers sa destination en utilisant + <command>tar</command> ou <command>cpio</command>.</para> + + <para>Dans cette situation, il y a parfois des + problèmes avec les fichiers spéciaux de + périphériques dans <filename + role="directory">/dev</filename>, en raison de + différences de taille sur les entiers. Une + solution à ce problème est d'exporter un + répertoire à partir du serveur non-&os;, de + monter ce répertoire sur une machine &os;, et + exécuter <command>MAKEDEV</command> sur la machine + &os; pour créer les entrées de + périphériques correctes (&os; 5.X et + les versions suivantes utilisent &man.devfs.5; pour + l'allocation des fichiers spéciaux de + périphériques de manière transparente + pour l'utilisateur, exécuter + <command>MAKEDEV</command> sur ces versions est + inutile).</para> + </sect4> + </sect3> + </sect2> </sect1> <sect1 id="network-isdn"> |