aboutsummaryrefslogtreecommitdiff
path: root/fr_FR.ISO8859-1
diff options
context:
space:
mode:
authorNik Clayton <nik@FreeBSD.org>1999-11-10 21:29:15 +0000
committerNik Clayton <nik@FreeBSD.org>1999-11-10 21:29:15 +0000
commit0f9e3260d70b88672037b1ccf761db8079500840 (patch)
treef8ad8659aabb0980cf651bc5b5bfdf2d9b8337cb /fr_FR.ISO8859-1
parent212679edca0d1e666ee1cffbbd82e2ddba57c69a (diff)
downloaddoc-0f9e3260d70b88672037b1ccf761db8079500840.tar.gz
doc-0f9e3260d70b88672037b1ccf761db8079500840.zip
French translation tree, meet CVS, CVS, this is the French translation
tree. A round of applause, please, for Sebastien Gioria, Frederic Haby, and the other volunteers on the French FreeBSD Documentation Project. I haven't turned this on in the top level Makefile yet because I've almost certainly missed something. I want to be able to grab a copy of the tree after I've committed it and build it from scratch to make sure everything works before I break the website. . .
Notes
Notes: svn path=/head/; revision=6043
Diffstat (limited to 'fr_FR.ISO8859-1')
-rw-r--r--fr_FR.ISO8859-1/Makefile9
-rw-r--r--fr_FR.ISO8859-1/articles/Makefile24
-rw-r--r--fr_FR.ISO8859-1/articles/Makefile.inc9
-rw-r--r--fr_FR.ISO8859-1/articles/diskless-x/Makefile20
-rw-r--r--fr_FR.ISO8859-1/articles/diskless-x/article.sgml298
-rw-r--r--fr_FR.ISO8859-1/articles/fonts/Makefile20
-rwxr-xr-xfr_FR.ISO8859-1/articles/fonts/article.sgml775
-rw-r--r--fr_FR.ISO8859-1/articles/formatting-media/Makefile20
-rwxr-xr-xfr_FR.ISO8859-1/articles/formatting-media/article.sgml557
-rw-r--r--fr_FR.ISO8859-1/articles/ip-aliasing/Makefile20
-rwxr-xr-xfr_FR.ISO8859-1/articles/ip-aliasing/article.sgml277
-rw-r--r--fr_FR.ISO8859-1/articles/make-world/Makefile20
-rwxr-xr-xfr_FR.ISO8859-1/articles/make-world/article.sgml1376
-rw-r--r--fr_FR.ISO8859-1/articles/mh/Makefile20
-rw-r--r--fr_FR.ISO8859-1/articles/mh/article.sgml744
-rw-r--r--fr_FR.ISO8859-1/articles/multi-os/Makefile20
-rwxr-xr-xfr_FR.ISO8859-1/articles/multi-os/article.sgml700
-rw-r--r--fr_FR.ISO8859-1/articles/new-users/Makefile20
-rwxr-xr-xfr_FR.ISO8859-1/articles/new-users/article.sgml827
-rw-r--r--fr_FR.ISO8859-1/articles/ntfs/Makefile20
-rw-r--r--fr_FR.ISO8859-1/articles/ntfs/article.sgml490
-rw-r--r--fr_FR.ISO8859-1/articles/ppp/Makefile20
-rwxr-xr-xfr_FR.ISO8859-1/articles/ppp/article.sgml1894
-rw-r--r--fr_FR.ISO8859-1/articles/programming-tools/Makefile20
-rwxr-xr-xfr_FR.ISO8859-1/articles/programming-tools/article.sgml2001
-rw-r--r--fr_FR.ISO8859-1/books/Makefile15
-rw-r--r--fr_FR.ISO8859-1/books/Makefile.inc9
-rw-r--r--fr_FR.ISO8859-1/books/faq/Makefile45
-rw-r--r--fr_FR.ISO8859-1/books/faq/acknowledgments.sgml92
-rw-r--r--fr_FR.ISO8859-1/books/faq/admin.sgml893
-rw-r--r--fr_FR.ISO8859-1/books/faq/applications.sgml149
-rw-r--r--fr_FR.ISO8859-1/books/faq/book.sgml93
-rw-r--r--fr_FR.ISO8859-1/books/faq/commercial.sgml254
-rw-r--r--fr_FR.ISO8859-1/books/faq/hackers.sgml299
-rw-r--r--fr_FR.ISO8859-1/books/faq/hardware.sgml478
-rw-r--r--fr_FR.ISO8859-1/books/faq/includes.sgml10
-rw-r--r--fr_FR.ISO8859-1/books/faq/install.sgml860
-rw-r--r--fr_FR.ISO8859-1/books/faq/kernelconfig.sgml147
-rw-r--r--fr_FR.ISO8859-1/books/faq/misc.sgml353
-rw-r--r--fr_FR.ISO8859-1/books/faq/network.sgml1588
-rw-r--r--fr_FR.ISO8859-1/books/faq/preface.sgml785
-rw-r--r--fr_FR.ISO8859-1/books/faq/serial.sgml626
-rw-r--r--fr_FR.ISO8859-1/books/faq/troubleshoot.sgml640
-rw-r--r--fr_FR.ISO8859-1/books/faq/x.sgml475
-rw-r--r--fr_FR.ISO8859-1/books/handbook/Makefile67
-rw-r--r--fr_FR.ISO8859-1/books/handbook/advanced-networking/chapter.sgml1124
-rw-r--r--fr_FR.ISO8859-1/books/handbook/backups/chapter.sgml774
-rw-r--r--fr_FR.ISO8859-1/books/handbook/basics/chapter.sgml163
-rw-r--r--fr_FR.ISO8859-1/books/handbook/bibliography/chapter.sgml498
-rw-r--r--fr_FR.ISO8859-1/books/handbook/book.sgml142
-rw-r--r--fr_FR.ISO8859-1/books/handbook/chapter.decl1
-rw-r--r--fr_FR.ISO8859-1/books/handbook/chapters.ent53
-rw-r--r--fr_FR.ISO8859-1/books/handbook/contrib/chapter.sgml5888
-rw-r--r--fr_FR.ISO8859-1/books/handbook/cutting-edge/chapter.sgml2628
-rwxr-xr-xfr_FR.ISO8859-1/books/handbook/disks/chapter.sgml191
-rw-r--r--fr_FR.ISO8859-1/books/handbook/eresources/chapter.sgml1357
-rw-r--r--fr_FR.ISO8859-1/books/handbook/hw/chapter.sgml5780
-rw-r--r--fr_FR.ISO8859-1/books/handbook/in-progress.sgml9
-rw-r--r--fr_FR.ISO8859-1/books/handbook/install/chapter.sgml1298
-rw-r--r--fr_FR.ISO8859-1/books/handbook/internals/chapter.sgml2141
-rw-r--r--fr_FR.ISO8859-1/books/handbook/introduction/chapter.sgml727
-rwxr-xr-xfr_FR.ISO8859-1/books/handbook/kernelconfig/chapter.sgml1876
-rw-r--r--fr_FR.ISO8859-1/books/handbook/kerneldebug/chapter.sgml682
-rw-r--r--fr_FR.ISO8859-1/books/handbook/kernelopts/chapter.sgml200
-rw-r--r--fr_FR.ISO8859-1/books/handbook/l10n/chapter.sgml376
-rw-r--r--fr_FR.ISO8859-1/books/handbook/linuxemu/chapter.sgml973
-rw-r--r--fr_FR.ISO8859-1/books/handbook/mail/chapter.sgml653
-rw-r--r--fr_FR.ISO8859-1/books/handbook/mailing-lists.ent110
-rw-r--r--fr_FR.ISO8859-1/books/handbook/mirrors/chapter.sgml1420
-rw-r--r--fr_FR.ISO8859-1/books/handbook/pgpkeys/chapter.sgml627
-rw-r--r--fr_FR.ISO8859-1/books/handbook/policies/chapter.sgml404
-rw-r--r--fr_FR.ISO8859-1/books/handbook/ports/chapter.sgml5197
-rw-r--r--fr_FR.ISO8859-1/books/handbook/ppp-and-slip/chapter.sgml2783
-rwxr-xr-xfr_FR.ISO8859-1/books/handbook/printing/chapter.sgml5375
-rwxr-xr-xfr_FR.ISO8859-1/books/handbook/quotas/chapter.sgml284
-rwxr-xr-xfr_FR.ISO8859-1/books/handbook/security/chapter.sgml1894
-rw-r--r--fr_FR.ISO8859-1/books/handbook/serialcomms/chapter.sgml2351
-rw-r--r--fr_FR.ISO8859-1/books/handbook/staff/chapter.sgml859
-rw-r--r--fr_FR.ISO8859-1/books/handbook/todo.sgml9
-rw-r--r--fr_FR.ISO8859-1/books/handbook/x11/chapter.sgml29
-rw-r--r--fr_FR.ISO8859-1/share/sgml/abstract.ent15
-rw-r--r--fr_FR.ISO8859-1/share/sgml/artheader.ent14
-rw-r--r--fr_FR.ISO8859-1/share/sgml/bookinfo.ent16
-rw-r--r--fr_FR.ISO8859-1/share/sgml/copyright.sgml13
-rw-r--r--fr_FR.ISO8859-1/share/sgml/disclaimer.sgml19
-rw-r--r--fr_FR.ISO8859-1/share/sgml/legalnotice.sgml14
-rw-r--r--fr_FR.ISO8859-1/share/sgml/license.sgml27
-rw-r--r--fr_FR.ISO8859-1/share/sgml/translators.ent46
-rw-r--r--fr_FR.ISO8859-1/share/sgml/urls.ent22
89 files changed, 67141 insertions, 0 deletions
diff --git a/fr_FR.ISO8859-1/Makefile b/fr_FR.ISO8859-1/Makefile
new file mode 100644
index 0000000000..1097bbc7d9
--- /dev/null
+++ b/fr_FR.ISO8859-1/Makefile
@@ -0,0 +1,9 @@
+# $FreeBSD$
+
+SUBDIR = articles
+SUBDIR+= books
+
+COMPAT_SYMLINK = fr
+
+DOC_PREFIX?= ${.CURDIR}/..
+.include "${DOC_PREFIX}/share/mk/doc.project.mk"
diff --git a/fr_FR.ISO8859-1/articles/Makefile b/fr_FR.ISO8859-1/articles/Makefile
new file mode 100644
index 0000000000..ab5bfabee6
--- /dev/null
+++ b/fr_FR.ISO8859-1/articles/Makefile
@@ -0,0 +1,24 @@
+#
+# The FreeBSD Documentation Project
+# The FreeBSD French Documentation Project
+#
+# $FreeBSD$
+# Original revision: 1.3
+#
+
+SUBDIR = diskless-x
+SUBDIR+= fonts
+SUBDIR+= formatting-media
+SUBDIR+= ip-aliasing
+SUBDIR+= make-world
+SUBDIR+= mh
+SUBDIR+= multi-os
+SUBDIR+= new-users
+SUBDIR+= ntfs
+SUBDIR+= ppp
+SUBDIR+= programming-tools
+
+ROOT_SYMLINKS+= new-users
+
+DOC_PREFIX?= ${.CURDIR}/../..
+.include "${DOC_PREFIX}/share/mk/doc.project.mk"
diff --git a/fr_FR.ISO8859-1/articles/Makefile.inc b/fr_FR.ISO8859-1/articles/Makefile.inc
new file mode 100644
index 0000000000..3e2eea4dc7
--- /dev/null
+++ b/fr_FR.ISO8859-1/articles/Makefile.inc
@@ -0,0 +1,9 @@
+#
+# The FreeBSD Documentation Project
+# The FreeBSD French Documentation Project
+#
+# $FreeBSD$
+# Original revision: 1.2
+#
+
+DESTDIR?= ${DOCDIR}/fr_FR.ISO_8859-1/books/${.CURDIR:T}
diff --git a/fr_FR.ISO8859-1/articles/diskless-x/Makefile b/fr_FR.ISO8859-1/articles/diskless-x/Makefile
new file mode 100644
index 0000000000..72c1d9b8c9
--- /dev/null
+++ b/fr_FR.ISO8859-1/articles/diskless-x/Makefile
@@ -0,0 +1,20 @@
+#
+# The FreeBSD Documentation Project
+# The FreeBSD French Documentation Project
+#
+# $FreeBSD$
+# Original revision: 1.4
+#
+
+DOC?= article
+
+FORMATS?= html
+
+INSTALL_COMPRESSED?=gz
+INSTALL_ONLY_COMPRESSED?=
+
+SRCS= article.sgml
+
+DOC_PREFIX?= ${.CURDIR}/../../..
+
+.include "${DOC_PREFIX}/share/mk/doc.project.mk"
diff --git a/fr_FR.ISO8859-1/articles/diskless-x/article.sgml b/fr_FR.ISO8859-1/articles/diskless-x/article.sgml
new file mode 100644
index 0000000000..fdbd117e7c
--- /dev/null
+++ b/fr_FR.ISO8859-1/articles/diskless-x/article.sgml
@@ -0,0 +1,298 @@
+<!--
+ The FreeBSD Documentation Project
+ The FreeBSD French Documentation Project
+
+ $FreeBSD$
+ Original revision: n.nn
+-->
+
+<!DOCTYPE ARTICLE PUBLIC "-//FreeBSD//DTD DocBook V3.1-Based Extension//EN" [
+<!ENTITY % man PUBLIC "-//FreeBSD//ENTITIES DocBook Manual Page Entities//EN"> %man;
+<!ENTITY % urls PUBLIC "-//FreeBSD//ENTITIES Common Document URL Entities//FR"> %urls;
+<!ENTITY % abstract PUBLIC "-//FreeBSD//ENTITIES DocBook Abstract Entities//FR"> %abstract;
+<!ENTITY % artheader PUBLIC "-//FreeBSD//ENTITIES DocBook ArtHeader Entities//FR"> %artheader;
+<!ENTITY % translators PUBLIC "-//FreeBSD//ENTITIES DocBook Translator Entities//FR"> %translators;
+
+<!ENTITY % authors SYSTEM "../../../en_US.ISO_8859-1/books/handbook/authors.ent"> %authors;
+<!ENTITY % mailing-lists SYSTEM "../../books/handbook/mailing-lists.ent"> %mailing-lists;
+ <!ENTITY rel.current CDATA "3.2">
+]>
+
+<article lang="fr">
+ <artheader>
+ <title>Mise en oeuvre d'un terminal X sans disque dur</title>
+
+ <authorgroup>
+ <author>
+ <firstname> Jerry</firstname>
+ <surname>Kendall</surname>
+ <affiliation>
+ <address>
+ <email>jerry@kcis.com</email>
+ </address>
+ </affiliation>
+ </author></authorgroup>
+
+ <pubdate>28 D&eacute;cembre 1996</pubdate>
+
+ <copyright>
+ <year>1996</year>
+ <holder>Jerry Kendall</holder>
+ </copyright>
+
+ <abstract>
+ <para>Avec l'aide de quelques amis de la &a.hackers;, j'ai pu mettre en service un terminal X sans disque dur. Pour cela, j'ai d'abord d&ucirc; installer une station sans disque qui dispose d'un minimum d'utilitaires mont&eacute;s par NFS. J'ai r&eacute;p&eacute;t&eacute; l'op&eacute;ration pour disposer de deux syst&egrave;mes sans disque. Pour les deux, j'ai proc&eacute;d&eacute; de la m&ecirc;me fa&ccedil;on. Le premier est <hostid role="fqdn">altair.kcis.com</hostid>. C'est un terminal X sur mon vieux 386DX-40. Il a bien un disque dur de 340 Mo, mais je ne voulais pas y toucher. Il d&eacute;marre donc &agrave; partir de <hostid role="fqdn">antares.kcis.com</hostid> sur le r&eacute;seau Ethernet. Le second est un 486DX2-66. J'ai install&eacute; un syst&egrave;me FreeBSD (complet) qui n'utilise pas de disque local. Le serveur de d&eacute;marrage est un Sun 670MP sous SunOs 4.1.3. Les deux syst&egrave;mes FreeBSD sont configur&eacute;s de la m&ecirc;me fa&ccedil;on.</para>
+
+ <para>Je suis s&ucirc;r qu'il y a des choses &agrave; ajouter &agrave; ce document. Faites-moi s'il vous pla&icirc;t part de vos commentaires.</para>
+
+ &abstract.license;
+ &abstract.disclaimer;
+ &trans.a.haby;
+ </abstract>
+ </artheader>
+
+ <sect1>
+ <title>Pr&eacute;paration de la disquette de d&eacute;marrage (sur le syst&egrave;me sans disque)</title>
+
+ <para>Les gestionnaires de d&eacute;marrage via le r&eacute;seau ne sont pas compatibles avec les TSRs et autres qu'utilise MS-DOS, il est pr&eacute;f&eacute;rable de pr&eacute;parer une disquette de d&eacute;marrage, ou, si vous le pouvez, de mettre en place un menu MS-DOS qui (par l'interm&eacute;diaire des fichiers <filename>config.sys</filename>/<filename>autoexec.bat</filename>) vous demande au d&eacute;marrage quelle configuration charger. C'est cette derni&egrave;re m&eacute;thode que j'ai utilis&eacute;e et elle fonctionne &agrave; merveille. Voici mon menu MS-DOS&nbsp;:</para>
+
+ <example>
+ <title><filename>config.sys</filename></title>
+
+ <programlisting>[menu]
+menuitem=normal, normal
+menuitem=unix, unix
+[normal]
+....
+config.sys habituel
+...
+[unix]</programlisting>
+ </example>
+
+ <example>
+ <title><filename>autoexec.bat</filename></title>
+
+ <programlisting>@ECHO OFF
+goto %config%
+
+:normal
+...
+autoexec.bat habituel
+...
+goto end
+
+:unix
+cd \netboot
+nb8390.com
+
+:end</programlisting>
+ </example>
+ </sect1>
+
+ <sect1>
+ <title>G&eacute;n&eacute;rer les programmes de d&eacute;marrage en r&eacute;seau (sur le serveur)</title>
+
+ <para>Compilez les programmes de &ldquo;d&eacute;marrage en r&eacute;seau&rdquo; que vous trouverez dans <filename>/usr/src/sys/i386/boot/netboot</filename>. Lisez les commentaires au d&eacute;but du <filename>Makefile</filename>. Faites les modifications n&eacute;cessaires. Faites une sauvegarde de l'original, pour vous pr&eacute;munir en cas de probl&egrave;mes. Apr&egrave;s compilation, vous devriez obtenir deux ex&eacute;cutables, <filename>nb8390.com</filename> et <filename>nb3c509.com</filename>. C'est l'un de ces programmes que vous devrez ex&eacute;cuter sur la machine sans disque. Il chargera le noyau depuis le serveur de d&eacute;marrage. Recopiez alors ces deux programmes sur la disquette de d&eacute;marrage que vous avez cr&eacute;&eacute;e auparavant.</para>
+ </sect1>
+
+ <sect1>
+ <title>D&eacute;terminer le programme &agrave; utiliser (sur la machine sans disque)</title>
+
+ <para>Si vous savez quel composant utilise votre carte Ethernet, c'est facile. Si vous avez un circuit NS8390 ou &eacute;quivalent, servez vous de <filename>nb8390.com</filename>. Si vous avez un circuit de type 3Com 509, utilisez le programme de d&eacute;marrage <filename>nb3C509.com</filename>. Si vous ne savez pas, essayez l'un et si vous avez le message &ldquo;<errorname>No adapter found</errorname>&rdquo;, essayez avec l'autre. Si rien ne marche, vous &ecirc;tes livr&eacute; &agrave; vous-m&ecirc;me.</para>
+ </sect1>
+
+ <sect1>
+ <title>D&eacute;marrer en r&eacute;seau</title>
+
+ <para>D&eacute;marrez la station sans disque sans fichiers <filename>config.sys/autoexec.bat</filename>. Essayez d'ex&eacute;cuter le programme de d&eacute;marrage qui correspond &agrave; votre carte Ethernet.</para>
+
+ <para>Ma carte Ethernet utilise le mode 16bit WD8013 16bit, j'ex&eacute;cute donc
+ <filename>nb8390.com</filename>&nbsp;:</para>
+
+ <screen><prompt>C:&gt;</prompt> <userinput>cd \netboot</userinput>
+<prompt>C:&gt</prompt> <userinput>nb8390</userinput>
+
+<prompt>Boot from Network (Y/N) ?</prompt> <userinput>Y</userinput>
+
+BOOTP/TFTP/NFS bootstrap loader ESC for menu
+
+Searching for adapter..
+WD8013EBT base 0x0300, memory 0x000D8000, addr 00:40:01:43:26:66
+
+Searching for server...</screen>
+
+ <para>La machine sans disque essaye maintenant de trouver un serveur de d&eacute;marrage. Notez la valeur de <literal>addr</literal> sur l'avant derni&egrave;re ligne, vous en aurez besoin ensuire. Red&eacute;marrez la machine sans disque et modifiez vos
+fichiers <filename>config.sys</filename> et <filename>autoexec.bat</filename> pour qu'ils fassent automatiquement ce que vous venez de faire &agrave; la main. Peut-&ecirc;tre avec un menu. Si vous aviez d&ucirc; utiliser <command>nb3c509.com</command> au lieu de <command>nb8390.com</command>, les messages seraient identiques. Si vous obtenez le message &ldquo;<errorname>No adapter found</errorname>&rdquo; apr&egrave;s &ldquo;<literal>Searching for adapter...</literal>&rdquo;, v&eacute;rifiez que vous avez d&eacute;fini les bonnes valeurs dans le <filename>Makefile</filename> au moment de compiler.</para>
+ </sect1>
+
+ <sect1>
+ <title>Permettre aux syst&egrave;mes de d&eacute;marrer via le r&eacute;seau (sur le serveur)</title>
+
+ <para>V&eacute;rifiez qu'il y a bien des entr&eacute;es pour <citerefentry><refentrytitle>tftp</refentrytitle></citerefentry> et <citerefentry><refentrytitle>bootps</refentrytitle></citerefentry> dans le fichier <filename>/etc/inetd.conf</filename>. Voici le mien&nbsp;:</para>
+
+ <programlisting>tftp dgram udp wait nobody /usr/libexec/tftpd tftpd
+#
+# Ajout de qui que vous soyez
+bootps dgram udp wait root /usr/libexec/bootpd bootpd /etc/bootptab</programlisting>
+
+ <para>Si vous devez modifier le fichier <filename>/etc/inetd.conf</filename>, envoyez ensuite un signal <literal>HUP</literal> &agrave; <citerefentry><refentrytitle>inetd</refentrytitle></citerefentry>. Pour cela, utilisez la commande <command>ps -ax | grep inetd | grep -v grep</command> pour conna&icirc;tre le num&eacute;ro de processus d'<citerefentry><refentrytitle>inetd</refentrytitle></citerefentry>. Une fois que vous l'avez, envoyez lui le signal HUP. Cela se fait avec <command>kill -HUP &lt;pid&gt;</command>. Cela obligera <citerefentry><refentrytitle>inetd</refentrytitle></citerefentry> &agrave; relire ses fichiers de configuration.</para>
+
+ <para>Vous avez bien not&eacute; la valeur de <literal>addr</literal> dans les messages du programme de d&eacute;marrage sur la machine sans disque&nbsp;? C'est maintenant que vous allez en avoir besoin.</para>
+
+ <para>Ajoutez une entr&eacute;e &agrave; <literal>/etc/bootptab</literal> (vous devrez peut-&ecirc;tre cr&eacute;er ce fichier). Voici &agrave; quoi elle doit ressembler&nbsp;:</para>
+
+ <programlisting>altair:\
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:ht=ether:\
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:ha=004001432666:\
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:sm=255.255.255.0:\
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:hn:\
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:ds=199.246.76.1:\
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:ip=199.246.76.2:\
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:gw=199.246.76.1:\
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:vm=rfc1048:</programlisting>
+
+ <para>Ce qui, ligne par ligne, signifie&nbsp;:</para>
+
+ <informaltable frame="none">
+ <tgroup cols="2">
+ <tbody>
+ <row>
+ <entry><literal>altair</literal></entry>
+ <entry>nom du syst&egrave;me sans disque, sans nom de domaine</entry>
+ </row>
+
+ <row>
+ <entry><literal>ht=ether</literal></entry>
+ <entry>type mat&eacute;riel &ldquo;ethernet&rdquo;</entry>
+ </row>
+
+ <row>
+ <entry><literal>ha=004001432666</literal></entry>
+ <entry>adresse mat&eacute;rielle (le nombre que vous avez not&eacute; auparavant)</entry>
+ </row>
+
+ <row>
+ <entry><literal>sm=255.255.255.0</literal></entry>
+ <entry>masque de sous-r&eacute;seau</entry>
+ </row>
+
+ <row>
+ <entry><literal>hn</literal></entry>
+ <entry>dit au serveur de donner au client son nom de machine</entry>
+ </row>
+
+ <row>
+ <entry><literal>ds=199.246.76.1</literal></entry>
+ <entry>dit au client quel est son serveur de noms de domaine</entry>
+ </row>
+
+ <row>
+ <entry><literal>ip=199.246.76.2</literal></entry>
+ <entry>dit au client quelle est son adresse IP</entry>
+ </row>
+
+ <row>
+ <entry><literal>gw=199.246.76.1</literal></entry>
+ <entry>dit au client quelle est sa passerelle par d&eacute;faut</entry>
+ </row>
+
+ <row>
+ <entry><literal>vm=...</literal></entry>
+ <entry>laissez cela tel que</entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </informaltable>
+
+ <note>
+ <para>Veillez &agrave; bien d&eacute;finir les adresses IP, j'ai invent&eacute; celles de l'exemple.</para>
+
+ </note>
+
+ <para>Cr&eacute;ez le r&eacute;pertoire <filename>/tftpboot</filename> sur le serveur. Il contiendra les fichiers de configuration pour les syst&egrave;mes sans disque dont ce sera le serveur de d&eacute;marrage. Ces fichiers s'appeleront <filename>cfg.&lt;ip&gt;</filename>, o&ugrave; &lt;ip&gt; est l'adresse IP de la machine sans disque. Le fichier de configuration pour &ldquo;altair&rdquo; est <filename>/tftpboot/cfg.199.246.76.2</filename>. Voici son contenu&nbsp;:</para>
+
+ <programlisting>rootfs 199.246.76.1:/DiskLess/rootfs/altair
+hostname altair.kcis.com</programlisting>
+
+ <para>La ligne <literal>hostname altair.kcis.com</literal> indique seulement au syst&egrave;me sans disque quel est son nom qualifi&eacute;.</para>
+
+ <para>La ligne <literal>rootfs 199.246.76.1:/DiskLess/rootfs/altair</literal> lui dit o&ugrave; est son syst&egrave;me de fichiers racine qui sera mont&eacute; par NFS.</para>
+
+ <note>
+ <para>Ce syst&egrave;me de fichiers racine sera mont&eacute; en <emphasis>lecture seule</emphasis> par NFS.</para>
+ </note>
+
+ <para>L'arborescence de la machine sans disque peut ensuite &ecirc;tre remont&eacute;e pour autoriser les op&eacute;rations de lecture/&eacute;criture.</para>
+
+ <para>J'utilise mon 386DX-40 comme terminal X d&eacute;di&eacute;.</para>
+
+ <para>Voici l'arborescence d'&ldquo;altair&rdquo;&nbsp;:</para>
+
+ <literallayout>/
+/bin
+/etc
+/tmp
+/sbin
+/dev
+/dev/fd
+/usr
+/var
+/var/run</literallayout>
+
+ <para>Et la liste des fichiers qu'elle contient&nbsp;:</para>
+
+ <screen>-r-xr-xr-x 1 root wheel 779984 Dec 11 23:44 ./kernel
+-r-xr-xr-x 1 root bin 299008 Dec 12 00:22 ./bin/sh
+-rw-r--r-- 1 root wheel 499 Dec 15 15:54 ./etc/rc
+-rw-r--r-- 1 root wheel 1411 Dec 11 23:19 ./etc/ttys
+-rw-r--r-- 1 root wheel 157 Dec 15 15:42 ./etc/hosts
+-rw-r--r-- 1 root bin 1569 Dec 15 15:26 ./etc/XF86Config.altair
+-r-x------ 1 bin bin 151552 Jun 10 1995 ./sbin/init
+-r-xr-xr-x 1 bin bin 176128 Jun 10 1995 ./sbin/ifconfig
+-r-xr-xr-x 1 bin bin 110592 Jun 10 1995 ./sbin/mount_nfs
+-r-xr-xr-x 1 bin bin 135168 Jun 10 1995 ./sbin/reboot
+-r-xr-xr-x 1 root bin 73728 Dec 13 22:38 ./sbin/mount
+-r-xr-xr-x 1 root wheel 1992 Jun 10 1995 ./dev/MAKEDEV.local
+-r-xr-xr-x 1 root wheel 24419 Jun 10 1995 ./dev/MAKEDEV</screen>
+
+ <para>N'oubliez pas d'ex&eacute;cuter <command>MAKEDEV all</command> dans le r&eacute;pertoire <filename>dev</filename>.</para>
+
+ <para>Voici enfin mon <filename>/etc/rc</filename> pour <hostid>altair</hostid>&nbsp;:</para>
+
+<programlisting>#!/bin/sh
+#
+PATH=/bin:/
+export PATH
+#
+# configurer l'interface &ldquo;en boucle&rdquo;
+/sbin/ifconfig lo0 127.0.0.1
+#
+# configurer la carte Ethernet
+/sbin/ifconfig ed0 199.246.76.2 netmask 0xffffff00
+#
+# monter le syst&egrave;me de fichiers racine via NFS
+/sbin/mount antares:/DiskLess/rootfs/altair /
+#
+# monter le syst&egrave;me de fichiers /usr via NFS
+/sbin/mount antares:/DiskLess/usr /usr
+#
+/usr/X11R6/bin/XF86_SVGA -query antares -xf86config /etc/XF86Config.altair > /dev/null 2>&1
+#
+# R&eacute;demarrer lorsque l'on quitte X
+/sbin/reboot
+#
+# Nous avons plant&eacute; ...
+exit 1</programlisting>
+
+ <para>Vos commentaires et questions sont bienvenus.</para>
+ </sect1>
+</article>
+
+<!--
+ Local Variables:
+ mode: sgml
+ sgml-indent-data: t
+ sgml-omittag: nil
+ sgml-always-quote-attributes: t
+ End:
+-->
diff --git a/fr_FR.ISO8859-1/articles/fonts/Makefile b/fr_FR.ISO8859-1/articles/fonts/Makefile
new file mode 100644
index 0000000000..72c1d9b8c9
--- /dev/null
+++ b/fr_FR.ISO8859-1/articles/fonts/Makefile
@@ -0,0 +1,20 @@
+#
+# The FreeBSD Documentation Project
+# The FreeBSD French Documentation Project
+#
+# $FreeBSD$
+# Original revision: 1.4
+#
+
+DOC?= article
+
+FORMATS?= html
+
+INSTALL_COMPRESSED?=gz
+INSTALL_ONLY_COMPRESSED?=
+
+SRCS= article.sgml
+
+DOC_PREFIX?= ${.CURDIR}/../../..
+
+.include "${DOC_PREFIX}/share/mk/doc.project.mk"
diff --git a/fr_FR.ISO8859-1/articles/fonts/article.sgml b/fr_FR.ISO8859-1/articles/fonts/article.sgml
new file mode 100755
index 0000000000..146bd45422
--- /dev/null
+++ b/fr_FR.ISO8859-1/articles/fonts/article.sgml
@@ -0,0 +1,775 @@
+<!--
+ The FreeBSD Documentation Project
+ The FreeBSD French Documentation Project
+
+ $FreeBSD$
+ Original revision: n.nn
+-->
+
+<!DOCTYPE ARTICLE PUBLIC "-//FreeBSD//DTD DocBook V3.1-Based Extension//EN" [
+<!ENTITY % man PUBLIC "-//FreeBSD//ENTITIES DocBook Manual Page Entities//EN"> %man;
+<!ENTITY % urls PUBLIC "-//FreeBSD//ENTITIES Common Document URL Entities//FR"> %urls;
+<!ENTITY % abstract PUBLIC "-//FreeBSD//ENTITIES DocBook Abstract Entities//FR"> %abstract;
+<!ENTITY % artheader PUBLIC "-//FreeBSD//ENTITIES DocBook ArtHeader Entities//FR"> %artheader;
+<!ENTITY % translators PUBLIC "-//FreeBSD//ENTITIES DocBook Translator Entities//FR"> %translators;
+
+<!ENTITY % authors SYSTEM "../../../en_US.ISO_8859-1/books/handbook/authors.ent"> %authors;
+<!ENTITY % mailing-lists SYSTEM "../../books/handbook/mailing-lists.ent"> %mailing-lists;
+ <!ENTITY rel.current CDATA "3.2">
+]>
+
+<article lang="fr">
+ <artheader>
+ <title>FreeBSD et les polices de caract&egrave;res</title>
+ <subtitle>Un guide utilisateur</subtitle>
+ <authorgroup>
+ <author>
+ <firstname>Dave</firstname>
+ <surname>Bodenstab</surname>
+ </author>
+ </authorgroup>
+ &artheader.copyright;
+ <abstract>
+ <para><email>imdave@synet.net</email></para>
+ <para>Mercredi 7 Aout 1996</para>
+ <para>Ce document d&eacute;crit les diff&eacute;rents fichiers de polices de caract&egrave;res
+ qui peuvent &ecirc;tre utilis&eacute;s avec FreeBSD et le pilote syscons, X11,
+ GhostScript et Groff. Des exemples imm&eacute;diatement applicables sont donn&eacute;s
+ pour passer l'affichage &agrave; la console en mode 80x60 et pour se servir des
+ polices &ldquo;Type 1&rdquo; avec les programmes d'application
+ pr&eacute;cit&eacute;s.</para>
+ &abstract.license;
+ &abstract.disclaimer;
+ &trans.a.haby;
+ </abstract>
+ </artheader>
+ <sect1>
+ <title>Introduction</title>
+ <para>Il y a de nombreuses sources de polices de caract&egrave;res disponibles,
+ et l'on peut se demander comment les utiliser avec FreeBSD. La
+ r&eacute;ponse peut &ecirc;tre obtenue en d&eacute;taillant attentivement la
+ documentation du composant voulu. Cela peut prendre beaucoup de
+ temps, ce guide essaie donc de fournir un raccourci pour les autres
+ personnes que cela int&eacute;resserait.</para>
+ </sect1>
+ <sect1>
+ <title>Terminologie &eacute;l&eacute;mentaire</title>
+ <para>Il y a de nombreux formats de polices de caract&egrave;res avec chacun
+ son propre suffixe de nom de fichier. Quelques uns d'entre eux
+ seront discut&eacute;s dans ce document:</para>
+ <variablelist>
+ <varlistentry>
+ <term><filename>.pfa</filename>, <filename>.pfb</filename></term>
+ <listitem>
+ <para>Polices PostScript &ldquo;Type 1&rdquo;.
+ <filename>.pfa</filename> est le format <emphasis>A</emphasis>scii
+ et <filename>.pfb</filename> le format
+ <emphasis>B</emphasis>inaire.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><filename>.afm</filename></term>
+ <listitem>
+ <para>Le fichier de dimensions d'une police
+ &ldquo;Type 1&rdquo;.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><filename>.pfm</filename></term>
+ <listitem>
+ <para>Le fichier de dimensions pour l'impression d'une police
+ &ldquo;Type 1&rdquo;.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><filename>.ttf</filename></term>
+ <listitem>
+ <para>Police &ldquo;True Type&rdquo;.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><filename>.fot</filename></term>
+ <listitem>
+ <para>R&eacute;f&eacute;rence indirecte &agrave; une police &ldquo;True Type&rdquo; (ce
+ n'est pas la police elle-m&ecirc;me).</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><filename>.fon</filename>, <filename>.fnt</filename></term>
+ <listitem>
+ <para>Police de caract&egrave;res &ldquo;bitmap&rdquo; pour affichage &agrave;
+ l'&eacute;cran.</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ <para>Les fichiers <filename>.fot</filename> sont employ&eacute;s par Windows un
+ peu de la m&ecirc;me fa&ccedil;on que des liens symboliques vers le fichiers de police
+ &ldquo;True Type&rdquo; (<filename>.ttf</filename>). Les fichiers
+ <filename>.fon</filename> sont aussi utilis&eacute;s par Windows. Je ne
+ connais pas de moyen de se servir de ces fichiers avec FreeBSD.</para>
+ </sect1>
+ <sect1>
+ <title>Quels formats de polices de caract&egrave;res puis-je utiliser?</title>
+ <para>Le format de fichier de police de caract&egrave;res utile d&eacute;pend de
+ l'application. FreeBSD lui-m&ecirc;me n'utilise pas de police de
+ caract&egrave;res. Ce sont les programmes d'application et/ou les pilotes
+ qui se servent &eacute;ventuellement de ces fichiers. Voici un petit tableau
+ associant application/pilote de p&eacute;riph&eacute;rique et suffixe des fichiers de
+ police de caract&egrave;res:</para>
+ <informaltable>
+ <tgroup cols="6">
+ <thead>
+ <row>
+ <entry></entry>
+ <entry><filename>.fnt</filename></entry>
+ <entry><filename>.pfa</filename></entry>
+ <entry><filename>.pfb</filename></entry>
+ <entry><filename>.ttf</filename></entry>
+ <entry><filename>.afm</filename></entry>
+ </row>
+ </thead>
+ <tbody>
+ <row>
+ <entry>Pilote <devicename>syscons</devicename></entry>
+ <entry>Oui</entry>
+ <entry></entry>
+ <entry></entry>
+ <entry></entry>
+ <entry></entry>
+ </row>
+ <row>
+ <entry><application>GhostScript</application></entry>
+ <entry></entry>
+ <entry>Oui</entry>
+ <entry>Oui</entry>
+ <entry>Oui</entry>
+ <entry></entry>
+ </row>
+ <row>
+ <entry>X11</entry>
+ <entry></entry>
+ <entry>Oui</entry>
+ <entry>Oui</entry>
+ <entry></entry>
+ <entry></entry>
+ </row>
+ <row>
+ <entry><application>Groff</application></entry>
+ <entry></entry>
+ <entry>Oui</entry>
+ <entry></entry>
+ <entry></entry>
+ <entry>Oui</entry>
+ </row>
+ <row>
+ <entry><application>Povray</application></entry>
+ <entry></entry>
+ <entry></entry>
+ <entry></entry>
+ <entry>Oui</entry>
+ <entry></entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </informaltable>
+ <para>Le suffixe <filename>.fnt</filename> est assez fr&eacute;quemment utilis&eacute;.
+ Je soup&ccedil;onne que lorsque quelqu'un veut cr&eacute;er un fichier de police de
+ caract&egrave;res sp&eacute;cialis&eacute; pour son application, il choisit la plupart du temps
+ ce suffixe. Il y a donc des chances pour que des fichiers avec ce
+ suffixe n'aient pas tous le m&ecirc;me format; en particulier, les fichiers
+ <filename>.fnt</filename> utilis&eacute;s par le pilote syscons de FreeBSD
+ n'auront peut-&ecirc;tre pas le m&ecirc;me format qu'un fichier
+ <filename>.fnt</filename> utilis&eacute; dans l'environnement DOS/Windows. Je
+ n'ai jamais essay&eacute; d'utiliser d'autres fichiers <filename>.fnt</filename>
+ que ceux fournis avec FreeBSD.</para>
+ </sect1>
+ <sect1>
+ <title>Configurer une console virtuelle en mode 80x60 lignes</title>
+ <para>Il faut d'abord charger une police de caract&egrave;res 8x8. Le fichier
+ <filename>/etc/sysconfig</filename><footnote><para>N.d.T.:
+ <filename>/etc/rc.conf</filename> dans les versions r&eacute;centes de
+ FreeBSD.</para></footnote> doit donc contenir les lignes:</para>
+ <programlisting>
+# choose font 8x8 from /usr/share/syscons/fonts/* (or NO for default)
+font8x8=/usr/share/syscons/fonts/cp437-8x8.fnt
+ </programlisting>
+ <para>La commande pour changer de mode d'affichage est
+ <citerefentry><refentrytitle>vidcontrol</refentrytitle>
+ <manvolnum>1</manvolnum></citerefentry>:</para>
+ <informalexample>
+<screen><prompt>bash$</prompt> <userinput>vidcontrol VGA_80x60</userinput></screen>
+ </informalexample>
+ <para>Diff&eacute;rents programmes en mode plein-&eacute;cran, tel
+ <citerefentry><refentrytitle>vi</refentrytitle>
+ <manvolnum>1</manvolnum></citerefentry>,
+ doivent pouvoir d&eacute;terminer la taille actuelle de l'&eacute;cran. Elle peut &ecirc;tre
+ configur&eacute;e avec
+ <citerefentry><refentrytitle>stty</refentrytitle>
+ <manvolnum>1</manvolnum></citerefentry>:</para>
+ <informalexample>
+<screen><prompt>bash$</prompt> <userinput>stty crt rows 60 columns 80</userinput></screen>
+ </informalexample>
+ <para>Pour rendre cela moins fastidieux, ces commandes peuvent &ecirc;tre
+ introduites dans une proc&eacute;dure ex&eacute;cut&eacute;e au d&eacute;marrage du syst&egrave;me. Voici une
+ fa&ccedil;on de le faire:</para>
+ <orderedlist>
+ <listitem>
+ <para>Modifiez <filename>/etc/sysconfig</filename> comme expliqu&eacute; plus
+ haut,</para>
+ </listitem>
+ <listitem>
+ <para>Ajoutez les lignes suivantes &agrave;
+ <filename>/etc/rc.local</filename>:</para>
+ <programlisting>
+for tty in /dev/ttyv?
+do
+ vidcontrol VGA_80x60 <$tty >/dev/null 2>&1
+done
+ </programlisting>
+ </listitem>
+ <listitem>
+ <para>Ajoutez les lignes suivantes &agrave;
+ <filename>/etc/profile</filename>:</para>
+ <programlisting>
+TTYNAME=`basename \`tty\``
+if expr "$TTYNAME" : 'ttyv' > /dev/null
+then
+ stty crt rows 60 columns 80
+fi
+ </programlisting>
+ </listitem>
+ </orderedlist>
+ <para>R&eacute;f&eacute;rences:
+ <citerefentry><refentrytitle>stty</refentrytitle>
+ <manvolnum>1</manvolnum></citerefentry>,
+ <citerefentry><refentrytitle>vidcontrol</refentrytitle>
+ <manvolnum>1</manvolnum></citerefentry>.</para>
+ </sect1>
+ <sect1>
+ <title>X11 et les polices &ldquo;Type 1&rdquo;</title>
+ <para>X11 peut employer les formats de police de caract&egrave;res
+ <filename>.pfa</filename> et <filename>.pfb</filename>. Il y a une
+ r&eacute;f&eacute;rence crois&eacute;e de chaque fichier sur son nom X11 par l'interm&eacute;diaire du
+ fichier <filename>fonts.dir</filename> de chaque r&eacute;pertoire.</para>
+ <para>Il y a d&eacute;j&agrave; un r&eacute;pertoire appel&eacute; <filename>Type1</filename>. La fa&ccedil;on
+ la plus imm&eacute;diate d'ajouter une police de caract&egrave;res est de la mettre dans
+ ce r&eacute;pertoire. Une meilleure mani&egrave;re de proc&eacute;der est de mettre toutes les
+ nouvelle polices dans un r&eacute;pertoire distinct et d'utiliser un lien
+ symbolique sur ces nouvelles polices. Il est alors plus facile de
+ distinguer ses propres polices de celles qui sont fournies d'origine. Par
+ exemple:</para>
+ <itemizedlist>
+ <listitem>
+ <para><emphasis>Cr&eacute;er un repertoire pour les fichiers de police de
+ caract&egrave;res.</emphasis></para>
+ <informalexample>
+<screen><prompt>bash$</prompt> <userinput>mkdir -p /usr/local/share/fonts/type1</userinput>
+<prompt>bash$</prompt> <userinput>cd /usr/local/share/fonts/type1</userinput></screen>
+ </informalexample>
+ </listitem>
+ <listitem>
+ <para><emphasis>Y mettre les fichiers <filename>.pfa</filename>,
+ <filename>.pfb</filename> et <filename>.afm</filename>. On peut aussi
+ vouloir y conserver les fichiers <filename>README</filename> et autres
+ documentations concernant les polices de caract&egrave;res.</emphasis></para>
+ <informalexample>
+<screen><prompt>bash$</prompt> <userinput>cp /cdrom/fonts/atm/showboat/showboat.pfb .</userinput>
+<prompt>bash$</prompt> <userinput>cp /cdrom/fonts/atm/showboat/showboat.afm .</userinput></screen>
+ </informalexample>
+ </listitem>
+ <listitem>
+ <para><emphasis>Tenir &agrave; jour un index pour cr&eacute;er les r&eacute;f&eacute;rences crois&eacute;es
+ sur les polices.</emphasis></para>
+ <informalexample>
+<screen><prompt>bash$</prompt> <userinput>echo showboat - InfoMagic CICA, Dec 1994, /fonts/atm/showboat >>INDEX</userinput></screen>
+ </informalexample>
+ </listitem>
+ </itemizedlist>
+ <para>Pour pouvoir maintenant utiliser une nouvelle police de caract&egrave;res, il
+ faut mettre le fichier &agrave; disposition, et mettre &agrave; jour le fichier des
+ noms de polices. Les noms de police X11 se pr&eacute;sentent comme suit:</para>
+ <programlisting>
+-bitstream-charter-medium-r-normal-xxx-0-0-0-0-p-0-iso8859-1
+ | | | | | | | | | | | | \ \
+ | | | | | \ \ \ \ \ \ \ +----+- jeu de caract&egrave;res
+ | | | | \ \ \ \ \ \ \ +- largeur moyenne
+ | | | | \ \ \ \ \ \ +- espacement
+ | | | \ \ \ \ \ \ +- r&eacute;solution verticale
+ | | | \ \ \ \ \ +- r&eacute;solution horizontale
+ | | | \ \ \ \ +- points
+ | | | \ largeur \ +- pixels
+ | | | \ \
+ casse famille graisse inclinaison style suppl&eacute;mentaire
+ </programlisting>
+ <para>Il faut cr&eacute;er un nouveau nom pour chaque nouvelle police. Si la
+ documentation qui l'accompagne vous donne quelques informations, elle
+ peut servir de base pour d&eacute;finir ce nom. Si vous n'avez aucune
+ information, vous pouvez utiliser la commande
+ <citerefentry><refentrytitle>strings</refentrytitle>
+ <manvolnum>1</manvolnum></citerefentry> sur le fichier de police. Par
+ exemple:</para>
+ <informalexample>
+<screen><prompt>bash$</prompt> <userinput>strings showboat.pfb | more</userinput></screen>
+ </informalexample>
+ <programlisting>
+%!FontType1-1.0: Showboat 001.001
+%%CreationDate: 1/15/91 5:16:03 PM
+%%VMusage: 1024 45747
+% Generated by Fontographer 3.1
+% Showboat
+ 1991 by David Rakowski. Alle Rechte Vorbehalten.
+FontDirectory/Showboat known{/Showboat findfont dup/UniqueID known{dup
+/UniqueID get 4962377 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
+12 dict begin
+/FontInfo 9 dict dup begin
+ /version (001.001) readonly def
+ /FullName (Showboat) readonly def
+ /FamilyName (Showboat) readonly def
+ /Weight (Medium) readonly def
+ /ItalicAngle 0 def
+ /isFixedPitch false def
+ /UnderlinePosition -106 def
+ /UnderlineThickness 16 def
+ /Notice (Showboat
+ 1991 by David Rakowski. Alle Rechte Vorbehalten.) readonly def
+end readonly def
+/FontName /Showboat def
+--stdin--
+ </programlisting>
+ <para>A partir de ces informations, le nom pourrait &ecirc;tre:</para>
+ <programlisting>
+-type1-Showboat-medium-r-normal-decorative-0-0-0-0-p-0-iso8859-1
+ </programlisting>
+ <para>Les composantes de ce nom sont:</para>
+ <variablelist>
+ <varlistentry>
+ <term>Casse</term>
+ <listitem>
+ <para>Appelons simplement toutes nos nouvelles polices
+ <literal>type1</literal>.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>Famille</term>
+ <listitem>
+ <para>Le nom de la police.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>Graisse</term>
+ <listitem>
+ <para>Normal, gras, m&eacute;dium, semi-gras, etc. D'apr&egrave;s les r&eacute;sultats
+ de <citerefentry><refentrytitle>strings</refentrytitle>
+ <manvolnum>1</manvolnum></citerefentry> ci-dessus, la police a une
+ graisse <emphasis>m&eacute;dium</emphasis>.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>Inclinaison</term>
+ <listitem>
+ <para><emphasis>r</emphasis>oman, <emphasis>i</emphasis>talique ou
+ <emphasis>o</emphasis>blique. Comme
+ <emphasis>ItaliqueAngle</emphasis> vaut 0, nous utiliserons
+ <emphasis>roman</emphasis>.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>Largeur</term>
+ <listitem>
+ <para>Normale, large, condens&eacute;e, &eacute;tendue, etc. Jusqu'&agrave; ce que nous la
+ d&eacute;terminions &agrave; l'usage, nous supposerons qu'elle est
+ <emphasis>normale</emphasis>.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>Style suppl&eacute;mentaire</term>
+ <listitem>
+ <para>Habituellement non renseign&eacute;, mais nous nous en servons pour
+ indiquer que la police contient des majuscules d&eacute;coratives.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>Espacement</term>
+ <listitem>
+ <para>Proportionnel ou fixe. Comme <emphasis>isFixedPitch</emphasis>
+ est faux, nous utilisons <emphasis>Proportionnel</emphasis>.</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ <para> Tous ces noms sont arbitraires, mais il faut essayer de rester
+ compatible avec les conventions existantes. Une police est connue d'une
+ application X11 sous un nom qui peut &eacute;ventuellement comporter des
+ caract&egrave;res de substitution, il faut donc choisir un nom significatif. On
+ peut commencer en utilisant simplement:</para>
+ <programlisting>
+...-normal-r-normal-...-p-...
+ </programlisting>
+ <para>comme nom, puis se servir de
+ <citerefentry><refentrytitle>xfontsel</refentrytitle>
+ <manvolnum>1</manvolnum></citerefentry> pour visualiser la police et
+ affiner son nom en fonction de ce &agrave; quoi elle ressemble.</para>
+ <para>Donc, pour compl&eacute;ter notre exemple:</para>
+ <itemizedlist>
+ <listitem>
+ <para><emphasis>Rendre la police accessible &agrave; X11</emphasis></para>
+ <informalexample>
+<screen><prompt>bash$</prompt> <userinput>cd /usr/X11R6/lib/X11/fonts/Type1</userinput>
+<prompt>bash$</prompt> <userinput>ln -s /usr/local/share/fonts/type1/showboat.pfb .</userinput></screen>
+ </informalexample>
+ </listitem>
+ <listitem>
+ <para><emphasis>Editer <filename>fonts.scale</filename> et
+ <filename>fonts.dir</filename> pour y ajouter une ligne d&eacute;crivant la
+ nouvelle police et incr&eacute;menter le nombre de polices qui est d&eacute;fini en
+ premi&egrave;re ligne</emphasis></para>
+ <informalexample>
+<screen><prompt>bash$</prompt> <userinput>ex fonts.dir</userinput>
+<userinput>:1p</userinput>
+<userinput>25</userinput>
+<userinput>:1c</userinput>
+<userinput>26</userinput>
+<userinput>.</userinput>
+<userinput>:$a</userinput>
+<userinput>showboat.pfb -type1-showboat-medium-r-normal-decorative-0-0-0-0-p-0-iso8859-1</userinput>
+<userinput>.</userinput>
+<userinput>:wq</userinput></screen>
+ </informalexample>
+ </listitem>
+ <listitem>
+ <para><emphasis><filename>fonts.scale</filename> et
+ <filename>fonts.dir</filename> sont apparemment
+ identiques</emphasis></para>
+ <informalexample>
+<screen><prompt>bash$</prompt> <userinput>cp fonts.dir fonts.scale</userinput></screen>
+ </informalexample>
+ </listitem>
+ <listitem>
+ <para><emphasis>Informer X11 des modifications</emphasis></para>
+ <informalexample>
+<screen><prompt>bash$</prompt> <userinput>xset fp rehash</userinput></screen>
+ </informalexample>
+ </listitem>
+ <listitem>
+ <para><emphasis>Visualiser la nouvelle police</emphasis></para>
+ <informalexample>
+<screen><prompt>bash$</prompt> <userinput>xfontsel -pattern -type1-*</userinput></screen>
+ </informalexample>
+ </listitem>
+ </itemizedlist>
+ <para>R&eacute;f&eacute;rences: <citerefentry><refentrytitle>xfontsel</refentrytitle>
+ <manvolnum>1</manvolnum></citerefentry>,
+ <citerefentry><refentrytitle>xset</refentrytitle>
+ <manvolnum>1</manvolnum></citerefentry>, <emphasis>The X Window System
+ in a Nutshell</emphasis>, <ulink url="http://www.ora.com">O'Reilly &amp;
+ Associates</ulink>.</para>
+ </sect1>
+ <sect1>
+ <title>Utiliser les polices &ldquo;Type 1&rdquo; avec GhostScript</title>
+ <para>GhostScript r&eacute;f&eacute;rence les polices via son fichier
+ <filename>Fontmap</filename>. Il doit donc &ecirc;tre modifi&eacute; de la m&ecirc;me fa&ccedil;on
+ que le fichier X11 <filename>fonts.dir</filename>. GhostScript peut
+ utiliser des fichiers de police de caract&egrave;res aux formats
+ <filename>.pfa</filename> ou <filename>.pfb</filename>. Voici comment nous
+ utiliserions la police de l'exemple pr&eacute;c&eacute;dent avec GhostScript:</para>
+ <itemizedlist>
+ <listitem>
+ <para><emphasis>Mettre la police dans le r&eacute;pertoire des polices de
+ GhostScript</emphasis></para>
+ <informalexample>
+<screen><prompt>bash$</prompt> <userinput>cd /usr/local/share/ghostscript/fonts</userinput>
+<prompt>bash$</prompt> <userinput>ln -s /usr/local/share/fonts/type1/showboat.pfb .</userinput></screen>
+ </informalexample>
+ </listitem>
+ <listitem>
+ <para><emphasis>Editer le fichier <filename>Fontmap</filename> pour que
+ GhostScript ait connaissance de la nouvelle police</emphasis></para>
+ <informalexample>
+<screen><prompt>bash$</prompt> <userinput>cd /usr/local/share/ghostscript/4.01</userinput>
+<prompt>bash$</prompt> <userinput>ex Fontmap</userinput>
+<userinput>:$a</userinput>
+<userinput>/Showboat (showboat.pfb) ; % From CICA /fonts/atm/showboat</userinput>
+<userinput>:wq</userinput></screen>
+ </informalexample>
+ </listitem>
+ <listitem>
+ <para><emphasis>Utiliser GhostScript pour visualiser la
+ police</emphasis></para>
+ <informalexample>
+<screen><prompt>bash$</prompt> <userinput>gs prfont.ps</userinput></screen>
+ </informalexample>
+ <programlisting>
+Aladdin Ghostscript 4.01 (1996-7-10)
+Copyright (C) 1996 Aladdin Enterprises, Menlo Park, CA. All rights
+reserved.
+This software comes with NO WARRANTY: see the file PUBLIC for details.
+Loading Times-Roman font from /usr/local/share/ghostscript/fonts/tir_____.pfb...
+ /1899520 581354 1300084 13826 0 done.
+ </programlisting>
+ <informalexample>
+<screen><prompt>GS&gt;</prompt> <userinput>Showboat DoFont</userinput></screen>
+ </informalexample>
+ <programlisting>
+Loading Showboat font from /usr/local/share/ghostscript/fonts/showboat.pfb...
+ 1939688 565415 1300084 16901 0 done.
+&gt;&gt;showpage, press &lt;return&gt; to continue&lt;&lt;
+&gt;&gt;showpage, press &lt;return&gt; to continue&lt;&lt;
+&gt;&gt;showpage, press &lt;return&gt; to continue&lt;&lt;
+ </programlisting>
+ <informalexample>
+<screen><prompt>GS&gt;</prompt> <userinput>quit</userinput></screen>
+ </informalexample>
+ </listitem>
+ </itemizedlist>
+ <para>R&eacute;f&eacute;rences: <filename>fonts.txt</filename> de la distribution de
+ GhostScript 4.01.</para>
+ </sect1>
+ <sect1>
+ <title>Utiliser les polices &ldquo;Type 1&rdquo; avec Groff</title>
+ <para>Maintenant que nous pouvons utiliser la nouvelle police avec X11 et
+ GhostScript, comment faire pour s'en servir aussi avec groff? Tout
+ d'abord, comme nous nous occupons de polices PostScript
+ &ldquo;Type 1&rdquo;, le p&eacute;riph&eacute;rique groff &agrave; utiliser est
+ <devicename>ps</devicename>. Il faut cr&eacute;er un fichier de police pour
+ chaque police utilis&eacute;e par groff. Le nom d'une police groff se r&eacute;sume &agrave; un
+ fichier dans le r&eacute;pertoire
+ <filename>/usr/share/groff_font/devps</filename>. Dans notre exemple, ce
+ pourrait &ecirc;tre <filename>/usr/share/groff_font/devps/SHOWBOAT</filename>.
+ Il faut cr&eacute;er ce fichier avec les outils fournis par groff.</para>
+ <para>Le premier outil est <filename>afmtodit</filename>. Il n'est pas
+ normalement install&eacute; et doit donc &ecirc;tre extrait de la distribution sous
+ forme de sources. Je me suis aper&ccedil;u qu'il fallait modifier la premi&egrave;re
+ ligne du fichier, voici donc ce que j'ai fait:</para>
+ <informalexample>
+<screen><prompt>bash$</prompt> <userinput>cp /usr/src/gnu/usr.bin/groff/afmtodit/afmtodit.pl /tmp</userinput>
+<prompt>bash$</prompt> <userinput>ex /tmp/afmtodit.pl</userinput>
+<userinput>:1c</userinput>
+<userinput>#!/usr/bin/perl -P-</userinput>
+<userinput>.</userinput>
+<userinput>:wq</userinput></screen>
+ </informalexample>
+ <para>Cet outil cr&eacute;e le fichier de police groff &agrave; partir du fichier de
+ dimensions de la police (suffixe <filename>.afm</filename>). Pour
+ continuer avec notre exemple:</para>
+ <itemizedlist>
+ <listitem>
+ <para><emphasis>De nombreux fichiers <filename>.afm</filename> sont au
+ format Mac... avec des lignes termin&eacute;es par des ^M</emphasis></para>
+ <para>Il faut les convertir au style Unix avec des lignes termin&eacute;es par
+ des ^J</para>
+ <informalexample>
+<screen><prompt>bash$</prompt> <userinput>cd /tmp</userinput>
+<prompt>bash$</prompt> <userinput>cat /usr/local/share/fonts/type1/showboat.afm |</userinput>
+ <userinput>tr '\015' '\012' >showboat.afm</userinput></screen>
+ </informalexample>
+ </listitem>
+ <listitem>
+ <para><emphasis>Cr&eacute;ons maintenant le fichier de police
+ groff</emphasis></para>
+ <informalexample>
+<screen><prompt>bash$</prompt> <userinput>cd /usr/share/groff_font/devps</userinput>
+<prompt>bash$</prompt> <userinput>/tmp/afmtodit.pl -d DESC -e text.enc /tmp/showboat.afm generate/textmap SHOWBOAT</userinput></screen>
+ </informalexample>
+ </listitem>
+ </itemizedlist>
+ <para>La police peut maintenant &ecirc;tre r&eacute;f&eacute;renc&eacute;e par le nom SHOWBOAT.</para>
+ <para>Si l'on utilise GhostScript pour piloter les imprimantes du syst&egrave;me,
+ il n'y a rien d'autre &agrave; faire. Si, par contre, l'on utilise de vraies
+ imprimantes PostScript, il faut alors charger la police sur l'imprimante
+ pour pouvoir l'utiliser (&agrave; moins que l'imprimante ne dispose de la police
+ &ldquo;showboat&rdquo; en interne ou sur une disquette de polices
+ accessible). La derni&egrave;re &eacute;tape consiste &agrave; cr&eacute;er la police chargeable.
+ L'outil <filename>pfbtops</filename> est utilis&eacute; pour cr&eacute;er le format
+ <filename>.pfa</filename> de la police et le fichier
+ <filename>download</filename> est modifi&eacute; pour faire r&eacute;f&eacute;rence &agrave; la
+ nouvelle police. Le fichier <filename>download</filename> doit indiquer le
+ nom interne de la police. Ce nom peut &ecirc;tre facilement connu &agrave; l'aide du
+ fichier de police groff, comme le montre l'exemple:</para>
+ <itemizedlist>
+ <listitem>
+ <para><emphasis>Cr&eacute;er le fichier de police
+ <filename>.pfa</filename></emphasis></para>
+ <informalexample>
+<screen><prompt>bash$</prompt> <userinput>fgrep internalname SHOWBOAT</userinput>
+internalname Showboat</screen>
+ </informalexample>
+ </listitem>
+ <listitem>
+ <para><emphasis>Dire &agrave; groff qu'il faut charger la
+ police</emphasis></para>
+ <informalexample>
+<screen><prompt>bash$</prompt> <userinput>ex download</userinput>
+<userinput>:$a</userinput>
+<userinput>Showboat showboat.pfa</userinput>
+<userinput>.</userinput>
+<userinput>:wq</userinput></screen>
+ </informalexample>
+ </listitem>
+ </itemizedlist>
+ <para>Pour tester la police:</para>
+ <informalexample>
+<screen><prompt>bash$</prompt> <userinput>cd /tmp</userinput>
+<prompt>bash$</prompt> <userinput>cat &gt;exemple.t &lt;&lt;EOF</userinput>
+<userinput>.sp 5</userinput>
+<userinput>.ps 15</userinput>
+<userinput>C'est un exemple de police Showboat:</userinput>
+<userinput>.br</userinput>
+<userinput>.ps 48</userinput>
+<userinput>.vs (\n(.s+2)p</userinput>
+<userinput>.sp</userinput>
+<userinput>.ft SHOWBOAT</userinput>
+<userinput>ABCDEFGHI</userinput>
+<userinput>.br</userinput>
+<userinput>JKLMNOPQR</userinput>
+<userinput>.br</userinput>
+<userinput>STUVWXYZ</userinput>
+<userinput>.sp</userinput>
+<userinput>.ps 16</userinput>
+<userinput>.vs (\n(.s+2)p</userinput>
+<userinput>.fp 5 SHOWBOAT</userinput>
+<userinput>.ft 5</userinput>
+<userinput>Utilis&eacute;e comme premi&egrave;re lettre d'un paragraphe. Cela ressemblera &agrave;:</userinput>
+<userinput>.sp50p</userinput>
+<userinput>\s(48\f5V\s0\fRoici la premi&egrave;re phrase d'un paragraphe qui utilise</userinput>
+<userinput>la police showboat pour sa premi&egrave;re lettre. Il faut augmenter</userinput>
+<userinput>l'espacement vertical pour laisser de la place pour la premi&egrave;re</userinput>
+<userinput>lettre.</userinput>
+<userinput>EOF</userinput>
+<prompt>bash$</prompt> <userinput>groff -Tps exemple.t &gt;exemple.ps</userinput></screen>
+ </informalexample>
+ <itemizedlist>
+ <listitem>
+ <para><emphasis>Pour utiliser GhostScript/GhostView</emphasis></para>
+ <informalexample>
+<screen><prompt>bash$</prompt> <userinput>ghostview exemple.ps</userinput></screen>
+ </informalexample>
+ </listitem>
+ <listitem>
+ <para><emphasis>Pour l'imprimer</emphasis></para>
+ <informalexample>
+<screen><prompt>bash$</prompt> <userinput>lpr -Ppostscript exemple.ps</userinput></screen>
+ </informalexample>
+ </listitem>
+ </itemizedlist>
+ <para>R&eacute;f&eacute;rences:
+ <filename>/usr/src/gnu/usr.bin/groff/afmtodit/afmtodit.man</filename>,
+ <citerefentry><refentrytitle>groff_font</refentrytitle>
+ <manvolnum>5</manvolnum></citerefentry>,
+ <citerefentry><refentrytitle>groff_char</refentrytitle>
+ <manvolnum>5</manvolnum></citerefentry>,
+ <citerefentry><refentrytitle>pfbtops</refentrytitle>
+ <manvolnum>1</manvolnum></citerefentry>.</para>
+ </sect1>
+ <sect1>
+ <title>Peut-on utiliser des polices &ldquo;True Type&rdquo;?</title>
+ <para>Le format de police &ldquo;True Type&rdquo; est utilis&eacute;e par Windows,
+ Windows 95 et le Macintosh. Il est assez r&eacute;pandu et il y a de nombreuses
+ polices de ce format disponibles.</para>
+ <para>Malheureusement, je connais peu d'applications qui puissent utiliser
+ ce format: GhostScript et Povray viennent &agrave; l'esprit. Le support par
+ GhostScript est, d'apr&egrave;s la documentation, assez rudimentaire et il y a
+ des chances que le r&eacute;sultat soit moins bon qu'avec les polices
+ &ldquo;Type 1&rdquo;. Povray version 3 est aussi capable d'utiliser des
+ des polices &ldquo;True Type&rdquo;, mais je doute que beaucoup de
+ personnes cr&eacute;ent des documents sous forme de pages g&eacute;n&eacute;r&eacute;es par lancer de
+ rayon :-).</para>
+ <para>Il est difficile d'utiliser une police &ldquo;True Type&rdquo; avec
+ groff parce que groff a besoin d'un fichier de description de la police,
+ et je ne connais pas d'outil pour d&eacute;terminer les dimensions d'une police
+ &ldquo;True Type&rdquo;. De plus, il faudrait charger la police sur les
+ imprimantes PostScript avec le format appropri&eacute; et, de nouveau, groff ne
+ peut g&eacute;rer de cette fa&ccedil;on les polices &ldquo;True Type&rdquo;.</para>
+ <para>Cette situation plut&ocirc;t d&eacute;solante changera peut-&ecirc;tre bient&ocirc;t. Le
+ <ulink url="http://www.freetype.org">Projet FreeType</ulink> d&eacute;veloppe
+ actuellement un ensemble d'utilitaire FreeType:</para>
+ <itemizedlist>
+ <listitem>
+ <para>Le serveur de polices <filename>xfsft</filename> pour X11 peut
+ g&eacute;rer les polices &ldquo;TrueType&rdquo; en plus des polices
+ ordinaires. Bien que ce soit encore une version b&eacute;ta, elle a la
+ r&eacute;putation d'&ecirc;tre &agrave; peu pr&egrave;s utilisable. Voyez
+ <ulink url="http://www.dcs.ed.sc.uk/home/jec/programs/xfsft">la page de
+ Juliusz Chroboczek</ulink> pour plus d'informations. Il y a des
+ instructions de portage sous FreeBSD sur
+ <ulink url="http://math.missouri.edu/~stephen/software">la page
+ logicielle de Stephen Montgomery</ulink>.</para>
+ </listitem>
+ <listitem>
+ <para><filename>xfstt</filename> est un autre serveur X11, disponible
+ sur <ulink url="ftp://sunsite.unc.edu/pub/Linux/X11/fonts">ftp://sunsite.unc.edu/pub/Linux/X11/fonts</ulink>.</para>
+ </listitem>
+ <listitem>
+ <para>Il y a un programme appel&eacute; <filename>ttf2bdf</filename> qui peut
+ cr&eacute;er des fichiers BDF utilisables en environnement X &agrave; partir de
+ fichiers &ldquo;TrueType&rdquo;. Les binaires pour Linux sont cens&eacute;s
+ &ecirc;tre disponibles sur
+ <ulink url="ftp://crl.nmsu.edu/CLR/multiling/General/">ftp://crl.nmsu.edu/CLR/multiling/General/</ulink>.</para>
+ </listitem>
+ <listitem>
+ <para>Pour les personnes qui ont besoin de polices &ldquo;True
+ Type&rdquo; asiatiques, il peut valoir la peine de jetter un coup
+ d'oeil au serveur de polices <filename>XTT</filename>. Il y a des
+ informations sur <filename>XTT</filename> &agrave; l'adresse:
+ <ulink url="http://hawk.ise.chuo-u.ac.jp/student/person/tshiozak/study/freebsd-at-random/x-tt/index-en.html">http://hawk.ise.chuo-u.ac.jp/student/person/tshiozak/study/freebsd-at-random/x-tt/index-en.html</ulink>.</para>
+ </listitem>
+ <listitem>
+ <para>et d'autres ...</para>
+ </listitem>
+ </itemizedlist>
+ </sect1>
+ <sect1>
+ <title>O&ugrave; peut-on trouver des polices suppl&eacute;mentaires?</title>
+ <para>Il y a de nombreuses polices disponibles sur l'Internet. Elles sont
+ soit compl&egrave;tement gratuites ou en &ldquo;partagiciel&rdquo;. Il y a aussi
+ de nombreux CD-ROMs peux on&eacute;reux qui contiennent beaucoup de polices.
+ Voici quelques sites Internet (au mois d'Ao&ucirc;t 1996):</para>
+ <itemizedlist>
+ <listitem>
+ <para><ulink url="ftp://ftp.winsite.com">ftp://ftp.winsite.com</ulink>
+ (auparavant CICA),</para>
+ </listitem>
+ <listitem>
+ <para><ulink url="http://www.simtel.net/simcgi-bin/dosfind.cgi">http://www.simtel.net/simcgi-bin/dosfind.cgi</ulink>,</para>
+ </listitem>
+ <listitem>
+ <para><ulink url="ftp://ftp.coast.net/">ftp://ftp.coast.net/</ulink>,</para>
+ </listitem>
+ <listitem>
+ <para><ulink url="http://af-pc-plloyd.ecel.uwa.edu.au/fonts/index.html">http://af-pc-plloyd.ecel.uwa.edu.au/fonts/index.html</ulink>,</para>
+ </listitem>
+ <listitem>
+ <para><ulink url="http://www.esselte.com/letraset/index.html">http://www.esselte.com/letraset/index.html</ulink>,</para>
+ </listitem>
+ <listitem>
+ <para><ulink url="http://www.inil.com/users/elfring/esf.htm">http://www.inil.com/users/elfring/esf.htm</ulink>.</para>
+ </listitem>
+ </itemizedlist>
+ </sect1>
+ <sect1>
+ <title>D'autres questions</title>
+ <itemizedlist>
+ <listitem>
+ <para>Que sont que les fichiers <filename>.pfm</filename>?</para>
+ </listitem>
+ <listitem>
+ <para>Peut-on g&eacute;n&eacute;rer des fichiers <filename>.afm</filename> &agrave; partir de
+ fichiers <filename>.pfa</filename> ou
+ <filename>.pfb</filename>?</para>
+ </listitem>
+ <listitem>
+ <para>Comment g&eacute;n&eacute;rer des fichiers de correspondance de caract&egrave;res pour
+ groff pour les polices PostScript dont les caract&egrave;res ont des noms qui
+ ne sont pas standard?</para>
+ </listitem>
+ <listitem>
+ <para>Les p&eacute;riph&eacute;riques <filename>xditview</filename> et
+ <devicename>devX??</devicename> peuvent-ils &ecirc;tre configur&eacute;s pour
+ acc&eacute;der aux nouvelles polices?</para>
+ </listitem>
+ <listitem>
+ <para>Il serait bien d'avoir des exemples d'utilisation de polices
+ &ldquo;True Type&rdquo; avec GhostScript et Povray.</para>
+ </listitem>
+ </itemizedlist>
+ </sect1>
+</article>
diff --git a/fr_FR.ISO8859-1/articles/formatting-media/Makefile b/fr_FR.ISO8859-1/articles/formatting-media/Makefile
new file mode 100644
index 0000000000..72c1d9b8c9
--- /dev/null
+++ b/fr_FR.ISO8859-1/articles/formatting-media/Makefile
@@ -0,0 +1,20 @@
+#
+# The FreeBSD Documentation Project
+# The FreeBSD French Documentation Project
+#
+# $FreeBSD$
+# Original revision: 1.4
+#
+
+DOC?= article
+
+FORMATS?= html
+
+INSTALL_COMPRESSED?=gz
+INSTALL_ONLY_COMPRESSED?=
+
+SRCS= article.sgml
+
+DOC_PREFIX?= ${.CURDIR}/../../..
+
+.include "${DOC_PREFIX}/share/mk/doc.project.mk"
diff --git a/fr_FR.ISO8859-1/articles/formatting-media/article.sgml b/fr_FR.ISO8859-1/articles/formatting-media/article.sgml
new file mode 100755
index 0000000000..f58946b2fd
--- /dev/null
+++ b/fr_FR.ISO8859-1/articles/formatting-media/article.sgml
@@ -0,0 +1,557 @@
+<!--
+ The FreeBSD Documentation Project
+ The FreeBSD French Documentation Project
+
+ $FreeBSD$
+ Original revision: n.nn
+-->
+
+<!DOCTYPE ARTICLE PUBLIC "-//FreeBSD//DTD DocBook V3.1-Based Extension//EN" [
+<!ENTITY % man PUBLIC "-//FreeBSD//ENTITIES DocBook Manual Page Entities//EN"> %man;
+<!ENTITY % urls PUBLIC "-//FreeBSD//ENTITIES Common Document URL Entities//FR"> %urls;
+<!ENTITY % abstract PUBLIC "-//FreeBSD//ENTITIES DocBook Abstract Entities//FR"> %abstract;
+<!ENTITY % artheader PUBLIC "-//FreeBSD//ENTITIES DocBook ArtHeader Entities//FR"> %artheader;
+<!ENTITY % translators PUBLIC "-//FreeBSD//ENTITIES DocBook Translator Entities//FR"> %translators;
+
+<!ENTITY % authors SYSTEM "../../../en_US.ISO_8859-1/books/handbook/authors.ent"> %authors;
+<!ENTITY % mailing-lists SYSTEM "../../books/handbook/mailing-lists.ent"> %mailing-lists;
+ <!ENTITY rel.current CDATA "3.2">
+]>
+
+<article lang="fr">
+ <artheader>
+ <title>Formatage des supports pour FreeBSD 2.2-RELEASE</title>
+ <subtitle>Un guide</subtitle>
+ <authorgroup>
+ <author>
+ <firstname>Doug</firstname>
+ <surname>White</surname>
+ </author>
+ </authorgroup>
+ &artheader.copyright;
+ <abstract>
+ <para><email>dwhite@resnet.uoregon.edu</email></para>
+ <para>Mars 1997</para>
+ <para>Ce document d&eacute;crit comment d&eacute;couper, partitionner et formater les
+ disques durs et autres supports similaires pour les utiliser avec
+ FreeBSD. Les exemples propos&eacute;s ont &eacute;t&eacute; test&eacute;s avec FreeBSD 2.2-GAMMA et
+ devraient &ecirc;tre applicables &agrave; d'autres versions.</para>
+ &abstract.license;
+ &abstract.disclaimer;
+ &trans.a.haby;
+ </abstract>
+ </artheader>
+ <sect1>
+ <title>Introduction et d&eacute;finitions</title>
+ <sect2>
+ <title>R&eacute;sum&eacute;</title>
+ <para>R&eacute;ussir &agrave; ajouter des disques &agrave; un syst&egrave;me existant est la
+ marque d'un administrateur syst&egrave;me exp&eacute;riment&eacute;. D&eacute;couper, partitionner
+ et ajouter des disques requiert de combiner avec soin commande
+ ad&eacute;quate et syntaxe de nommage. Une frappe malheureuse et un disque
+ entier peut dispara&icirc;tre en quelques secondes. Ce document est une
+ tentative pour simplifier le processus et &eacute;viter les accidents.
+ Heureusement, les outils existants (tout particuli&egrave;rement
+ <citerefentry><refentrytitle>sysinstall</refentrytitle></citerefentry>)
+ ont notablement am&eacute;lior&eacute; ce processus dans les derni&egrave;res versions de
+ FreeBSD.</para>
+ <para>Il y a deux possibilit&eacute;s de formatage d'un disque:</para>
+ <itemizedlist>
+ <listitem>
+ <para><emphasis>mode compatible</emphasis>: Configurer un disque
+ pour qu'il ait une table des
+ tranches&nbsp;-&nbsp;&ldquo;<foreignphrase>slices</foreignphrase>&rdquo;&nbsp;-&nbsp;utilisable
+ avec d'autres syst&egrave;mes d'exploitation.</para>
+ </listitem>
+ <listitem>
+ <para><emphasis>mode dangeureusement d&eacute;di&eacute;</emphasis>: Formater un
+ disque sans table des
+ tranches&nbsp;-&nbsp;&ldquo;<foreignphrase>slices</foreignphrase>&rdquo;.
+ Cela facilite l'ajout de disques, mais des syst&egrave;mes d'exploitation
+ autres que FreeBSD risquent de ne pas reconna&icirc;tre de tels
+ disques.</para>
+ </listitem>
+ </itemizedlist>
+ <para>Dans la plupart des cas, le mode d&eacute;di&eacute; est le plus facile &agrave; mettre
+ en oeuvre et &agrave; utiliser sur des syst&egrave;mes existants, auquel cas le
+ nouveau disque est en g&eacute;n&eacute;ral enti&egrave;rement d&eacute;di&eacute; &agrave; FreeBSD. Cependant,
+ le mode compatible garantit le maximum d'interop&eacute;rabilit&eacute; avec des
+ installations ult&eacute;rieures, au prix d'une plus grande complexit&eacute;.</para>
+ <para>En plus du choix du mode, il existe deux m&eacute;thodes pour d&eacute;couper le
+ disque. La premi&egrave;re est d'utiliser l'outil
+ <citerefentry><refentrytitle>/stand/sysinstall</refentrytitle></citerefentry>
+ d'installation du syst&egrave;me. A partir de la version 2.1.7-RELEASE de
+ FreeBSD,
+ <citerefentry><refentrytitle>sysinstall</refentrytitle></citerefentry>
+ contient du code qui facilite la
+ configuration de disques en cours d'op&eacute;ration normale du syst&egrave;me,
+ donnant essentiellement acc&egrave;s aux &eacute;diteurs de labels et de partitions,
+ et comportant un fonctionnalit&eacute; d'&eacute;criture qui ne met &agrave; jour que le
+ disque s&eacute;lectionn&eacute; sans toucher aux autres disques. La seconde m&eacute;thode
+ consiste &agrave; employer les utilitaires, &agrave; la main, depuis la ligne de
+ commande, en session sous le compte super-utilisateur
+ <username>root</username>. Pour le mode dangeureusement d&eacute;di&eacute;, il n'y
+ a que trois ou quatre commandes concern&eacute;es, alors que
+ <citerefentry><refentrytitle>sysinstall</refentrytitle></citerefentry>
+ demande quelques manipulations.</para>
+ </sect2>
+ <sect2>
+ <title>D&eacute;finitions</title>
+ <para>La gestion de disques Unix a, au fil des si&egrave;cles, invent&eacute; de
+ nombreuses nouvelles d&eacute;finitions pour d'anciens mots. Le glossaire
+ ci-dessous donne les d&eacute;finitions des expressions utilis&eacute;es dans
+ ce document et (esp&eacute;rons-le) pour ce qui concerne FreeBSD en
+ g&eacute;n&eacute;ral.</para>
+ <itemizedlist>
+ <listitem>
+ <para><emphasis>mode compatible</emphasis>: Configurer un disque
+ pour qu'il ait une table des
+ tranches&nbsp;-&nbsp;&ldquo;<foreignphrase>slices</foreignphrase>&rdquo;&nbsp;-&nbsp;utilisable
+ avec d'autres syst&egrave;mes d'exploitation. C'est le contraire du mode
+ dangeureusement d&eacute;di&eacute;.</para>
+ </listitem>
+ <listitem>
+ <para><emphasis>mode dangeureusement d&eacute;di&eacute;</emphasis>: Formater un
+ disque sans table des
+ tranches&nbsp;-&nbsp;&ldquo;<foreignphrase>slices</foreignphrase>&rdquo;.
+ Cela facilite l'ajout de disques, mais des syst&egrave;mes d'exploitation
+ autres que FreeBSD risquent de ne pas reconna&icirc;tre de tels
+ disques. C'est le contraire du mode compatible.</para>
+ </listitem>
+ <listitem>
+ <para>disque: un disque circulaire recouvert d'un mat&eacute;riau magn&eacute;tique
+ ou &eacute;quivalent, qui tourne, m&ucirc; par un moteur, devant une t&ecirc;te de
+ lecture. Les donn&eacute;es sont enregistr&eacute;es sur le disque en modifiant
+ la magn&eacute;tisation du support, et peuvent &ecirc;tre ensuite relues. Les
+ disques durs, CD-ROMs, disques magn&eacute;to-optiques et supports
+ amovibles Zip ou Jaz, sont des exemples de disques.</para>
+ </listitem>
+ <listitem>
+ <para>tranche&nbsp;-&nbsp;&ldquo;<foreignphrase>slice</foreignphrase>&rdquo;:
+ une subdivision du disque. Il peut y avoir jusqu'&agrave; quatre tranches
+ sur un disque d'apr&egrave;s le standard PC. Les tranches sont constitu&eacute;es
+ de secteurs adjacents. Les tranches sont d&eacute;crites par une
+ &ldquo;table des tranches&rdquo; utilis&eacute;e par le BIOS du syst&egrave;me
+ pour localiser les partitions d&eacute;marrables. La table des tranches
+ est habituellement appel&eacute;e &ldquo;table des partitions&rdquo; en
+ langage DOS. Les tranches sont g&eacute;r&eacute;es par l'utilitaire
+ <citerefentry><refentrytitle>fdisk</refentrytitle></citerefentry>.</para>
+ </listitem>
+ <listitem>
+ <para>partition: une subdivision de la
+ tranche&nbsp;-&nbsp;&ldquo;<foreignphrase>slice</foreignphrase>&rdquo;.
+ Habituellement utilis&eacute;e pour d&eacute;signer les divisions de la tranche
+ FreeBSD du disque. Chaque syst&egrave;me de fichiers et espace de
+ pagination r&eacute;side sur une partition. Les partitions sont g&eacute;r&eacute;es par
+ l'utilitaire
+ <citerefentry><refentrytitle>disklabel</refentrytitle></citerefentry>.</para>
+ </listitem>
+ <listitem>
+ <para>secteur: la plus petite subdivision d'un disque. Un secteur
+ contient habituellement 512 octets de donn&eacute;es.</para>
+ </listitem>
+ </itemizedlist>
+ </sect2>
+ <sect2>
+ <title>Avertissements et pi&egrave;ges &agrave; &eacute;viter</title>
+ <para>Installer des disques n'est pas quelque chose &agrave; prendre &agrave; la
+ l&eacute;g&egrave;re. Il est tout &agrave; fait possible de d&eacute;truire le contenu d'autres
+ disques de votre syst&egrave;me si vous ne prenez pas les pr&eacute;cautions
+ n&eacute;cessaires.</para>
+ <para><emphasis>V&eacute;rifiez avec soin ce que vous faites</emphasis>. Il est
+ tr&egrave;s facile d'effacer le mauvais disque quand vous utilisez ces
+ commandes. En cas de doute, consultez les messages de d&eacute;marrage du
+ noyau pour conna&icirc;tre le nom exact du p&eacute;riph&eacute;rique.</para>
+ <para>Inutile de pr&eacute;ciser que nous ne serions en rien responsable des
+ d&eacute;gats que vous causeriez &agrave; vos donn&eacute;es ou &agrave; votre mat&eacute;riel. Vous
+ travaillez &agrave; vos risques et p&eacute;rils.</para>
+ </sect2>
+ <sect2>
+ <title>Zip, Jaz et autres disques amovibles</title>
+ <para>Les disques amovibles peuvent &ecirc;tre format&eacute;s de la m&ecirc;me fa&ccedil;on que les
+ disques durs ordinaires. Il est indispensable que le lecteur soit
+ connect&eacute; et qu'il y ait un disque dedans au d&eacute;marrage du syst&egrave;me, pour
+ que le noyau puisse d&eacute;terminer la g&eacute;om&eacute;trie du disque. Consultez les
+ r&eacute;sultats de
+ <citerefentry><refentrytitle>dmesg</refentrytitle></citerefentry>
+ et v&eacute;rifiez que le disque et sa taille y figurent. Si le noyau &eacute;met le
+ message:</para>
+ <programlisting>
+Can't get the size
+ </programlisting>
+ <para>c'est que le disque n'&eacute;tait pas dans le lecteur. Dans ce cas, vous
+ devrez red&eacute;marrer la machine avant de formater des disques.</para>
+ </sect2>
+ </sect1>
+ <sect1>
+ <title>Formater des disques en mode d&eacute;di&eacute;</title>
+ <sect2>
+ <title>Introduction</title>
+ <para>Cette section explique en d&eacute;tail comment configurer des disques
+ enti&egrave;rement d&eacute;di&eacute;s &agrave; FreeBSD. N'oubliez pas que des disques en mode
+ d&eacute;di&eacute; ne peuvent pas &ecirc;tre utilis&eacute;s par l'architecture PC pour d&eacute;marrer
+ le syst&egrave;me.</para>
+ </sect2>
+ <sect2>
+ <title>Formater des disques en mode d&eacute;di&eacute; avec Sysinstall</title>
+ <para><filename>/stand/sysinstall</filename>, l'utilitaire
+ d'installation du syst&egrave;me, a &eacute;t&eacute; am&eacute;lior&eacute; dans les versions r&eacute;centes
+ pour rendre le processus de d&eacute;coupage propre des disques moins
+ p&eacute;nible. Les &eacute;diteurs
+ <citerefentry><refentrytitle>fdisk</refentrytitle></citerefentry> et
+ <citerefentry><refentrytitle>disklabel</refentrytitle></citerefentry>
+ inclus dans
+ <citerefentry><refentrytitle>sysinstall</refentrytitle></citerefentry>
+ sont des outils interactifs qui
+ dissipent une bonne partie de la confusion li&eacute;e aux op&eacute;rations de
+ d&eacute;coupage de disques en &ldquo;tranches&rdquo;. Avec FreeBSD 2.1.7 et
+ ult&eacute;rieur, c'est probablement la m&eacute;thode la plus simple pour le
+ faire.</para>
+ <orderedlist>
+ <listitem>
+ <para>Lancez
+ <citerefentry><refentrytitle>sysinstall</refentrytitle></citerefentry>
+ en tant que super-utilisateur <username>root</username> en
+ tapant:</para>
+ <informalexample>
+<screen>&prompt.root; <userinput>/stand/sysinstall</userinput></screen>
+ </informalexample>
+ <para>sur la ligne de commande.</para>
+ </listitem>
+ <listitem>
+ <para>S&eacute;lectionnez <option>Index</option>.</para>
+ </listitem>
+ <listitem>
+ <para>S&eacute;lectionnez <option>Partition</option>.</para>
+ </listitem>
+ <listitem>
+ <para>S&eacute;lectionnez le disque &agrave; configurer avec les touches Fl&egrave;ches et
+ la barre d'espacement.</para>
+ </listitem>
+ <listitem>
+ <para>Si vous utilisez tout le disque pour FreeBSD, s&eacute;lectionnez
+ <option>A</option>.</para>
+ </listitem>
+ <listitem>
+ <para>A la question:</para>
+ <programlisting>
+Do you want to do this with a true partition entry so as to remain
+cooperative with any future possible operating systems on the
+drive(s)?
+
+[Voulez-vous cr&eacute;er une vraie entr&eacute;e de partition pour rester
+compatible avec d'&eacute;ventuels futurs syst&egrave;mes d'exploitation
+sur le(s) disque(s)?]
+ </programlisting>
+ <para>r&eacute;pondez <option>No</option> (Non).</para>
+ </listitem>
+ <listitem>
+ <para>Quand on vous demande si vous voulez continuer, r&eacute;pondez
+ <option>Yes</option> (Oui).</para>
+ </listitem>
+ <listitem>
+ <para>S&eacute;lectionnez <option>Write</option> (Ecrire).</para>
+ </listitem>
+ <listitem>
+ <para>A l'avertissement &agrave; propos de l'&eacute;criture sur des syst&egrave;mes
+ d&eacute;j&agrave; install&eacute;s, r&eacute;pondez <option>Yes</option> (Oui).</para>
+ </listitem>
+ <listitem>
+ <para><option>Quit</option>tez l'&eacute;diteur
+ <citerefentry><refentrytitle>fdisk</refentrytitle></citerefentry>
+ et revenez au menu d'<option>Index</option> avec
+ <keycap>Echap</keycap>.</para>
+ </listitem>
+ <listitem>
+ <para>S&eacute;lectionnez <option>Label</option> dans le menu
+ d'<option>Index</option>.</para>
+ </listitem>
+ <listitem>
+ <para>Libellez le disque comme vous le souhaitez. Si vous ne voulez
+ qu'une seule partition, tapez <keycap>C</keycap> pour cr&eacute;er une
+ partition, validez la taille propos&eacute;e par d&eacute;faut, prenez comme
+ type de partition <option>Filesystem</option> (syst&egrave;me de fichiers)
+ et indiquez un point de montage (qui dans ce cas ne sert &agrave;
+ rien).</para>
+ </listitem>
+ <listitem>
+ <para>Tapez <keycap>W</keycap> une fois que vous avez termin&eacute;. Le
+ syst&egrave;me de fichiers sera initialis&eacute; avec
+ <citerefentry><refentrytitle>newfs</refentrytitle></citerefentry>
+ sans que vous n'ayez autre chose &agrave; faire, &agrave; moins que vous ne
+ fassiez un autre choix (pour les nouvelles partitions, il faut
+ initialiser le syst&egrave;me de fichiers!). Vous aurez un message
+ d'erreur:</para>
+ <programlisting>
+Error mounting /mnt/dev/wd2s1e on /mnt/blah : No such file or directory
+ </programlisting>
+ <para>Ne vous en occupez pas.</para>
+ </listitem>
+ <listitem>
+ <para>Quittez le programme, en utilisant &agrave; plusieurs reprises la
+ touche <keycap>Echap</keycap>.</para>
+ </listitem>
+ </orderedlist>
+ </sect2>
+ <sect2>
+ <title>Formater des disques en mode d&eacute;di&eacute; depuis la ligne de
+ commande</title>
+ <para>Ex&eacute;cutez les commandes suivantes, en substituant &agrave;
+ <devicename>wd2</devicename> le nom de votre disque. Les lignes
+ qui commencent par <literal>#</literal> sont des commentaires.</para>
+ <informalexample>
+<screen><userinput>dd if=/dev/zero of=/dev/rwd2 count=2</userinput>
+<userinput>disklabel /dev/rwd2 | disklabel -B -R -r wd2 /dev/stdin</userinput>
+# Nous ne voulons qu'une partition, utiliser la tranche 'c' devrait aller:
+<userinput>newfs /dev/rwd2c</userinput></screen>
+ </informalexample>
+ <para>Si vous avez besoin de modifier le label du disque pour cr&eacute;er
+ plusieurs partitions (pour la pagination par exemple), utilisez la
+ s&eacute;quence suivante:</para>
+ <informalexample>
+<screen><userinput>dd if=/dev/zero of=/dev/rwd2 count=2</userinput>
+<userinput>disklabel /dev/r$d > /tmp/label</userinput>
+# Modifiez le label du disque pour ajouter des partitions:
+<userinput>vi /tmp/label</userinput>
+<userinput>disklabel -B -R -r wd2 /tmp/label</userinput>
+# Cr&eacute;ez les syst&egrave;mes de fichiers sur les partitions avec newfs selon les besoins</screen>
+ </informalexample>
+ <para>Votre disque est maintenant pr&ecirc;t &agrave; &ecirc;tre utilis&eacute;.</para>
+ </sect2>
+ </sect1>
+ <sect1>
+ <title>Formater des disques en mode compatible</title>
+ <sect2>
+ <title>Introduction</title>
+ <para>Travailler depuis la ligne de commande est la mani&egrave;re la plus facile
+ de formater des disques d&eacute;di&eacute;s, et la pire pour formater des disques
+ compatibles. L'utilitaire en ligne de commande
+ <citerefentry><refentrytitle>fdisk</refentrytitle></citerefentry>
+ demande une bonne connaissance des math&eacute;matiques et une compr&eacute;hension en
+ profondeur de la structure de la table des &ldquo;tranches&rdquo;, qui
+ d&eacute;passent ce dont la plupart des gens souhaitent se pr&eacute;occuper. Utilisez
+ <citerefentry><refentrytitle>sysinstall</refentrytitle></citerefentry>
+ comme d&eacute;crit dans ce qui suit.</para>
+ </sect2>
+ <sect2>
+ <title>Formater des disques en mode compatible avec Sysinstall</title>
+ <orderedlist>
+ <listitem>
+ <para>Lancez
+ <citerefentry><refentrytitle>sysinstall</refentrytitle></citerefentry>
+ en tant que super-utilisateur <username>root</username> en
+ tapant:</para>
+ <informalexample>
+<screen>&prompt.root; <userinput>/stand/sysinstall</userinput></screen>
+ </informalexample>
+ <para>sur la ligne de commande.</para>
+ </listitem>
+ <listitem>
+ <para>S&eacute;lectionnez <option>Index</option>.</para>
+ </listitem>
+ <listitem>
+ <para>S&eacute;lectionnez <option>Partition</option>.</para>
+ </listitem>
+ <listitem>
+ <para>S&eacute;lectionnez le disque &agrave; configurer avec les touches Fl&egrave;ches et
+ la barre d'espacement.</para>
+ </listitem>
+ <listitem>
+ <para>Si vous utilisez tout le disque pour FreeBSD, s&eacute;lectionnez
+ <option>A</option>.</para>
+ </listitem>
+ <listitem>
+ <para>A la question:</para>
+ <programlisting>
+Do you want to do this with a true partition entry so as to remain
+cooperative with any future possible operating systems on the
+drive(s)?
+
+[Voulez-vous cr&eacute;er une vraie entr&eacute;e de partition pour rester
+compatible avec d'&eacute;ventuels futurs syst&egrave;mes d'exploitation
+sur le(s) disque(s)?]
+ </programlisting>
+ <para>r&eacute;pondez <option>Yes</option> (Oui).</para>
+ </listitem>
+ <listitem>
+ <para>S&eacute;lectionnez <option>Write</option> (Ecrire).</para>
+ </listitem>
+ <listitem>
+ <para><option>Quit</option>tez l'&eacute;diteur
+ <citerefentry><refentrytitle>fdisk</refentrytitle></citerefentry>.</para>
+ </listitem>
+ <listitem>
+ <para>A la question &agrave; propos du gestionnaire de d&eacute;marrage, r&eacute;pondez
+ encore <option>None</option> (aucun).</para>
+ </listitem>
+ <listitem>
+ <para>S&eacute;lectionnez <option>Label</option> dans le menu
+ d'<option>Index</option>.</para>
+ </listitem>
+ <listitem>
+ <para>Libellez le disque comme vous le souhaitez. Si vous ne voulez
+ qu'une seule partition, validez la taille propos&eacute;e par
+ d&eacute;faut, prenez comme type de partition <option>Filesystem</option>
+ (syst&egrave;me de fichiers) et indiquez un point de montage (qui dans ce
+ cas ne sert &agrave; rien).</para>
+ </listitem>
+ <listitem>
+ <para>Le syst&egrave;me de fichiers sera initialis&eacute; avec
+ <citerefentry><refentrytitle>newfs</refentrytitle></citerefentry>
+ sans que vous n'ayez autre chose &agrave; faire, &agrave; moins que vous ne
+ fassiez un autre choix (pour les nouvelles partitions, il faut
+ initialiser le syst&egrave;me de fichiers!). Vous aurez un message
+ d'erreur:</para>
+ <programlisting>
+Error mounting /mnt/dev/wd2s1e on /mnt/blah : No such file or directory
+ </programlisting>
+ <para>Ne vous en occupez pas.</para>
+ </listitem>
+ <listitem>
+ <para>Quittez le programme, en utilisant &agrave; plusieurs reprises la
+ touche <keycap>Echap</keycap>.</para>
+ </listitem>
+ </orderedlist>
+ <para>Votre nouveau disque est pr&ecirc;t &agrave; &ecirc;tre utilis&eacute;.</para>
+ </sect2>
+ </sect1>
+ <sect1>
+ <title>Autres op&eacute;rations sur les disques</title>
+ <sect2>
+ <title>Ajout d'espace de pagination</title>
+ <para>Au fur et &agrave; mesure que le syst&egrave;me grossit, ses besoins d'espace de
+ pagination peuvent aussi augmenter. Alors qu'il est tr&egrave;s difficile
+ d'ajouter de l'espace de pagination &agrave; des disques en service, un nouveau
+ disque peut &ecirc;tre partitionn&eacute; pour mettre en oeuvre de l'espace de
+ pagination suppl&eacute;mentaire.</para>
+ <para>Pour ajouter de l'espace de pagination au moment de l'installation
+ d'un nouveau disque:</para>
+ <orderedlist>
+ <listitem>
+ <para>Au moment de partitionner le disque, &eacute;ditez son label et
+ allouer la quantit&eacute; d'espace de pagination voulue en ajoutant une
+ partition 'b' et en affectant le reste &agrave; une autre partition,
+ telle que 'a' ou 'e'. La taille est &agrave; donner en blocs de 512
+ octets.</para>
+ </listitem>
+ <listitem>
+ <para>Au moment de cr&eacute;er les syst&egrave;mes de fichiers avec
+ <citerefentry><refentrytitle>newfs</refentrytitle></citerefentry>,
+ ne formatez pas la partition 'c'. Formatez &agrave; la place la partition
+ qui n'est pas r&eacute;serv&eacute;e &agrave; la pagination.</para>
+ </listitem>
+ <listitem>
+ <para>Ajoutez la ligne qui suit &agrave;
+ <filename>/etc/fstab</filename>:</para>
+ <programlisting>
+/dev/wd0b none swap sw 0 0
+ </programlisting>
+ <para>En remplacant <filename>/dev/wd0b</filename> par le nom du
+ nouvel espace de pagination.</para>
+ </listitem>
+ <listitem>
+ <para>Pour que l'espace de pagination soit imm&eacute;diatement utilisable,
+ utilisez la commande
+ <citerefentry><refentrytitle>newfs</refentrytitle></citerefentry>:</para>
+ <informalexample>
+<screen>&prompt.user; <userinput>swapon /dev/sd0b</userinput>
+swapon: added /dev/sd0b as swap space</screen>
+ </informalexample>
+ </listitem>
+ </orderedlist>
+ </sect2>
+ <sect2>
+ <title>Copier le contenu d'un disque sur un autre</title>
+ <para>Propos&eacute; par: Renauld Waldura
+ <email>renaud@softway.com</email>.</para>
+ <para>Pour d&eacute;placer le contenu d'un disque sur un nouveau, faites:</para>
+ <informalexample>
+<screen>&prompt.root; <userinput>mount /dev/wd2 /mnt</userinput>
+&prompt.root; <userinput>pax -r -w -p e /usr/home /mnt</userinput>
+&prompt.root; <userinput>umount /mnt</userinput>
+&prompt.root; <userinput>rm -rf /usr/home/*</userinput>
+&prompt.root; <userinput>mount /dev/wd2 /usr/home</userinput></screen>
+ </informalexample>
+ </sect2>
+ <sect2>
+ <title>Cr&eacute;er des disques &agrave; &eacute;critures r&eacute;parties avec
+ <devicename>ccd</devicename></title>
+ <para>Commandes transmises par: Stan Brown
+ <email>stanb@awod.com</email>.</para>
+ <para>Le pilote de disques
+ concat&eacute;n&eacute;s&nbsp;-&nbsp;&ldquo;<foreignphrase>Concatenated Disk
+ Driver</foreignphrase>&rdquo;, ou CCD&nbsp;-&nbsp;vous permet
+ d'utiliser plusieurs disques comme s'il s'agissait d'un seul. Les
+ &eacute;critures r&eacute;parties peuvent augmenter les performances disque en
+ distribuant les lectures et les &eacute;critures sur plusieurs disques.
+ Voyez les pages de manuel de
+ <citerefentry><refentrytitle>ccd</refentrytitle>
+ <manvolnum>4</manvolnum></citerefentry> et
+ <citerefentry><refentrytitle>ccdconfig</refentrytitle>
+ <manvolnum>4</manvolnum></citerefentry> ou la
+ <ulink url="http://stampede.cs.berkeley.edu/ccd/">page de
+ CCD</ulink>, pour plus d'informations.</para>
+ <para>Pour cr&eacute;er un nouveau CCD, ex&eacute;cutez les commandes ci-dessous.
+ Elles d&eacute;crivent comment concat&eacute;ner trois disques; ajoutez ou
+ supprimez des p&eacute;riph&eacute;riques selon vos besoins. Rappelez-vous
+ que les disques sur lequels se fera la r&eacute;partition doivent &ecirc;tre
+ <emphasis>identiques</emphasis>.</para>
+ <para>Avant d'ex&eacute;cuter ces commandes, v&eacute;rifiez que vous avez bien
+ ajout&eacute; la ligne:</para>
+ <programlisting>
+pseudo-device ccd 4
+ </programlisting>
+ <para>&agrave; la configuration de votre noyau.</para>
+ <informalexample>
+<screen>&prompt.root; <userinput>cd /dev ; sh MAKDEV ccd0</userinput></screen>
+ </informalexample>
+ <informalexample>
+<screen>&prompt.root; <userinput>disklabel -r -w sd0 auto</userinput>
+&prompt.root; <userinput>disklabel -r -w sd1 auto</userinput>
+&prompt.root; <userinput>disklabel -r -w sd2 auto</userinput></screen>
+ </informalexample>
+ <informalexample>
+<screen>&prompt.root; <userinput>disklabel -e sd0c</userinput> # changer le type en 4.2BSD
+&prompt.root; <userinput>disklabel -e sd1c</userinput> # changer le type en 4.2BSD
+&prompt.root; <userinput>disklabel -e sd2c</userinput> # changer le type en 4.2BSD</screen>
+ </informalexample>
+ <informalexample>
+<screen>&prompt.root; <userinput>ccdconfig ccd0 32 0 /dev/sd0c /dev/sd1c /dev/sd2c</userinput></screen>
+ </informalexample>
+ <informalexample>
+<screen>&prompt.root; <userinput>newfs /dev/rccd0c</userinput></screen>
+ </informalexample>
+ <para>Vous pouvez maintenant monter et utiliser votre CCD en le
+ r&eacute;f&eacute;ren&ccedil;ant comme p&eacute;riph&eacute;rique
+ <filename>/dev/ccd0c</filename>.</para>
+ </sect2>
+ </sect1>
+ <sect1>
+ <title>Remerciements</title>
+ <para>L'auteur aimerait remercier les personnes suivantes pour leur
+ contribution &agrave; ce projet:</para>
+ <itemizedlist>
+ <listitem>
+ <para>Darryl Okahata <email>darrylo@hpnmhjw.sr.hp.com</email>,
+ pour sa documentation simple sur la configuration de
+ disques en mode d&eacute;di&eacute;, que j'ai utilis&eacute;e &agrave; plusieurs reprises
+ sur la &a.questions;.</para>
+ </listitem>
+ <listitem>
+ <para>&a.jkh; pour avoir rendu
+ <citerefentry><refentrytitle>sysinstall</refentrytitle></citerefentry>
+ utile &agrave; ce type de t&acirc;ches.</para>
+ </listitem>
+ <listitem>
+ <para>John Fieber <email>jfieber@indiana.edu</email> pour avoir
+ mis au point la documentation et les exemples d'utilisation de
+ la <foreignphrase>DTD Docbook</foreignphrase> utilis&eacute;e
+ pour mettre en forme ce document.</para>
+ </listitem>
+ <listitem>
+ <para>&a.grog; pour avoir contr&ocirc;l&eacute; mon travail et mentionn&eacute; les
+ inexactitudes, ainsi que pour son concours sur divers points.</para>
+ </listitem>
+ </itemizedlist>
+ </sect1>
+</article>
diff --git a/fr_FR.ISO8859-1/articles/ip-aliasing/Makefile b/fr_FR.ISO8859-1/articles/ip-aliasing/Makefile
new file mode 100644
index 0000000000..72c1d9b8c9
--- /dev/null
+++ b/fr_FR.ISO8859-1/articles/ip-aliasing/Makefile
@@ -0,0 +1,20 @@
+#
+# The FreeBSD Documentation Project
+# The FreeBSD French Documentation Project
+#
+# $FreeBSD$
+# Original revision: 1.4
+#
+
+DOC?= article
+
+FORMATS?= html
+
+INSTALL_COMPRESSED?=gz
+INSTALL_ONLY_COMPRESSED?=
+
+SRCS= article.sgml
+
+DOC_PREFIX?= ${.CURDIR}/../../..
+
+.include "${DOC_PREFIX}/share/mk/doc.project.mk"
diff --git a/fr_FR.ISO8859-1/articles/ip-aliasing/article.sgml b/fr_FR.ISO8859-1/articles/ip-aliasing/article.sgml
new file mode 100755
index 0000000000..149e58a4da
--- /dev/null
+++ b/fr_FR.ISO8859-1/articles/ip-aliasing/article.sgml
@@ -0,0 +1,277 @@
+<!--
+ The FreeBSD Documentation Project
+ The FreeBSD French Documentation Project
+
+ $FreeBSD$
+ Original revision: n.nn
+-->
+
+<!DOCTYPE ARTICLE PUBLIC "-//FreeBSD//DTD DocBook V3.1-Based Extension//EN" [
+<!ENTITY % man PUBLIC "-//FreeBSD//ENTITIES DocBook Manual Page Entities//EN"> %man;
+<!ENTITY % urls PUBLIC "-//FreeBSD//ENTITIES Common Document URL Entities//FR"> %urls;
+<!ENTITY % abstract PUBLIC "-//FreeBSD//ENTITIES DocBook Abstract Entities//FR"> %abstract;
+<!ENTITY % artheader PUBLIC "-//FreeBSD//ENTITIES DocBook ArtHeader Entities//FR"> %artheader;
+<!ENTITY % translators PUBLIC "-//FreeBSD//ENTITIES DocBook Translator Entities//FR"> %translators;
+
+<!ENTITY % authors SYSTEM "../../../en_US.ISO_8859-1/books/handbook/authors.ent"> %authors;
+<!ENTITY % mailing-lists SYSTEM "../../books/handbook/mailing-lists.ent"> %mailing-lists;
+ <!ENTITY rel.current CDATA "3.2">
+]>
+
+<article lang="fr">
+ <artheader>
+ <title>Alias IP avec FreeBSD 2.x</title>
+ <authorgroup>
+ <author>
+ <firstname>Ben</firstname>
+ <surname>Black</surname>
+ </author>
+ </authorgroup>
+ &artheader.copyright;
+ <abstract>
+ <para><email>black@cypher.net</email></para>
+ &abstract.license;
+ &abstract.disclaimer;
+ &trans.a.haby;
+ </abstract>
+ </artheader>
+ <sect1>
+ <title>Introduction</title>
+ <para>D&eacute;finir des <emphasis>alias IP</emphasis> consiste &agrave; affecter plus
+ d'une adresse IP &agrave; une interface r&eacute;seau. Les alias IP sont typiquement
+ employ&eacute;s pour h&eacute;berger des serveurs Web et FTP virtuels et pour
+ r&eacute;organiser ses serveurs sans avoir &agrave; mettre &agrave; jour d'autres machines
+ (ce dernier usage est particuli&egrave;rement utile avec les serveurs de noms
+ de domaines). Voyez un alias IP comme un petit enfant perch&eacute; sur le
+ dos de son interface parente (qui est l'adresse primaire de l'interface
+ physique).</para>
+ <para>Les alias IP <emphasis>n'ont rien &agrave; voir</emphasis> avec la notion
+ de <emphasis>multi-h&eacute;bergement</emphasis>&nbsp;-&nbsp;&ldquo;<foreignphrase>multi-homing</foreignphrase>&rdquo;
+ (lorsqu'une machine dispose de plus d'une interface r&eacute;seau active), sauf
+ au cas o&ugrave; une machine sur plusieurs r&eacute;seaux fournit des services tels que
+ ceux list&eacute;s plus haut. La confusion entre les deux notions est une erreur
+ propag&eacute;e du monde Macintosh et vous seriez avis&eacute; de ne pas les suivre sur
+ ce point.</para>
+ <para>Il y a deux commandes essentielles &agrave; la mise en place d'alias IP sur
+ FreeBSD (et sur tous les autres syst&egrave;mes Unix que j'aie jamais utilis&eacute;s),
+ ce sont <command>ifconfig</command> et <command>route</command>.
+ L'utilisation correcte de ces commandes est d&eacute;crite ci-dessous. Pour
+ conna&icirc;tre toutes les subtilit&eacute;s de leur emploi, reportez-vous aux pages de
+ manuel correspondantes. Il y a deux autres commandes utiles pour v&eacute;rifier
+ que tout fonctionne comme il se doit et pour mettre les choses au point
+ si ce n'est pas le cas. <command>netstat</command> vous permet de
+ consulter la table de routage du noyau (entre autres choses utiles), et
+ ping est un appr&eacute;ciable petit outil pour tester l'acc&egrave;s &agrave; votre nouvel
+ alias (comme &agrave; toute autre adresse IP).</para>
+ <important>
+ <para>Vous <emphasis>devez</emphasis> &ecirc;tre en session sous le compte
+ super-utilisateur <username>root</username> pour pouvoir ex&eacute;cuter la
+ plupart des commandes d&eacute;crites dans ce qui suit.</para>
+ </important>
+ </sect1>
+ <sect1>
+ <title>Utiliser <command>ifconfig</command></title>
+ <para><citerefentry><refentrytitle>ifconfig</refentrytitle></citerefentry>
+ sert &agrave; configuer les diff&eacute;rentes caract&eacute;ristiques d'une interface r&eacute;seau
+ (adresse, protocole, masque de r&eacute;seau, etc.).
+ <citerefentry><refentrytitle>ifconfig</refentrytitle></citerefentry> nous
+ servira ici &agrave; ajouter (et parfois &agrave; supprimer) les adresses des alias des
+ interfaces.</para>
+ <para>Dans l'exemple ci-dessous, nous supposerons que notre machine n'a
+ qu'une seule interface Ethernet 3Com 3C509 (<devicename>ep0</devicename>)
+ d'adresse <hostid role="ipaddr">192.168.57.82</hostid> avec comme masque
+ de sous-r&eacute;seau <hostid role="netmask">255.255.255.0</hostid>, en plus
+ de l'interface &ldquo;en boucle&rdquo; standard
+ <hostid role="ipaddr">127.0.0.1</hostid>. Vous devrez bien s&ucirc;r remplacer
+ ces valeurs par l'adresse et le masque de sous-r&eacute;seau de votre(vos)
+ interface(s). L'adresse et le masque de sous-r&eacute;seau de l'interface
+ &ldquo;en boucle&rdquo; sont les m&ecirc;mes sur toutes les machines.</para>
+ <para>Pour ajouter un alias &agrave; <devicename>ep0</devicename>, nous passons
+ simplement une commande du style:</para>
+ <informalexample>
+<screen>&prompt.root; <userinput>ifconfig ep0 inet 192.168.57.10 netmask 255.255.255.255 alias</userinput></screen>
+ </informalexample>
+ <para>Ce qui dit &agrave; FreeBSD que nous d&eacute;finissons une adresse IP
+ (<literal>inet</literal>) pour la carte 3Com
+ (<devicename>ep0</devicename>) avec comme adresse
+ <hostid role="ipaddr">192.168.57.10</hostid>, comme masque de
+ sous-r&eacute;seau (<literal>netmask</literal>)
+ <hostid role="netmask">255.255.255.255</hostid> (i.e., tous
+ les bits &agrave; 1) pour &eacute;viter que le syst&egrave;me d'exploitation ne proteste qu'il
+ y a d&eacute;j&agrave; une adresse affect&eacute;e &agrave; cette interface, et que c'est un alias
+ pour cette interface (<literal>alias</literal>).</para>
+ <para>Vous pouvez aussi omettre le masque de sous-r&eacute;seau (ou lui donner une
+ autre valeur). Jusqu'&agrave; FreeBSD 2.1.0 compris, il y a n&eacute;anmoins un bogue
+ qui fait que les commandes <command>ifconfig alias</command> &eacute;chouent &agrave;
+ la premi&egrave;re tentative, mais r&eacute;ussissent &agrave; la seconde, si vous n'indiquez
+ pas <hostid role="netmask">255.255.255.255</hostid> comme masque de
+ sous-r&eacute;seau. Si vous ne donnez pas ce masque de sous-r&eacute;seau de
+ <hostid role="netmask">255.255.255.255</hostid>, vous devrez aussi ajouter
+ une route manuellement, comme d&eacute;crit ci-dessous.</para>
+ <para>Pour supprimer l'alias, nous ex&eacute;cutons une commande tr&egrave;s
+ similaire:</para>
+ <informalexample>
+<screen>&prompt.root; <userinput>ifconfig ep0 inet 192.168.57.10 -alias</userinput></screen>
+ </informalexample>
+ <para>Il n'y a pas besoin de param&egrave;tres suppl&eacute;mentaires, tels que le masque
+ de sous-r&eacute;seau, parce que l'alias est enti&egrave;rement d&eacute;fini par l'adresse IP,
+ de sorte que FreeBSD peut supprimer toutes les ressources associ&eacute;es en se
+ basant sur cette adresse.</para>
+ </sect1>
+ <sect1>
+ <title>Utiliser <command>route</command></title>
+ <para><citerefentry><refentrytitle>route</refentrytitle></citerefentry> sert
+ &agrave; modifier &agrave; la main la table de routage du noyau. Pour nos besoins, une
+ fois que nous avons donn&eacute; &agrave; FreeBSD l'alias pour l'interface, nous devons
+ d&eacute;finir une route IP vers cet alias. Si vous avez pr&eacute;cis&eacute; le masque de
+ sous-r&eacute;seau de <hostid role="netmask">255.255.255.255</hostid> avec la
+ commande pr&eacute;c&eacute;dente, vous pouvez vous dispenser de cette &eacute;tape.</para>
+ <para>Pour ajouter une route vers notre nouvelle interface, nous
+ ex&eacute;cutons:</para>
+ <informalexample>
+<screen>&prompt.root; <userinput>route add -host 192.168.57.10 127.0.0.1 0</userinput></screen>
+ </informalexample>
+ <para>Cela dit &agrave; FreeBSD que pour arriver &agrave; la machine
+ <hostid role="ipaddr">192.168.57.10</hostid>, les paquets doivent &ecirc;tre
+ envoy&eacute;s sur l'interface &ldquo;en boucle&rdquo;
+ (<hostid role="ipaddr">127.0.0.1</hostid> aussi appel&eacute;e
+ <hostid role="hostname">localhost</hostid> et que la distance (d&eacute;compte
+ de noeuds interm&eacute;diaires) est de <literal>0</literal>, ce qui signifie
+ que c'est la machine locale.</para>
+ <para>Pour supprimer cette route, nous ex&eacute;cutons:</para>
+ <informalexample>
+<screen>&prompt.root; <userinput>route delete -host 192.168.57.10</userinput></screen>
+ </informalexample>
+ <para>De nouveau, comme la route est enti&egrave;rement d&eacute;finie par les param&egrave;tres
+ indiqu&eacute;s, nous pouvons laisser de c&ocirc;t&eacute; les autres donn&eacute;es telles que
+ le masque de sous-r&eacute;seau et la distance. Pour des informations compl&egrave;tes
+ sur la commande
+ <citerefentry><refentrytitle>route</refentrytitle></citerefentry>,
+ voyez les pages de manuel.</para>
+ </sect1>
+ <sect1>
+ <title>Tester notre travail</title>
+ <para>Maintenant que nous avons (esp&eacute;rons-le) un alias d&eacute;fini et accessible,
+ nous devons v&eacute;rifier qu'il fonctionne correctement. Nous examinerons
+ d'abord la table de routage du noyau, pour v&eacute;rifier que la route vers
+ l'alias est bien pr&eacute;sente, puis nous utiliserons
+ <citerefentry><refentrytitle>ping</refentrytitle></citerefentry> pour
+ nous assurer que des paquets peuvent l'atteindre.</para>
+ <para>Pour voir la table de routage du noyau, sous forme num&eacute;rique,
+ tapons:</para>
+ <informalexample>
+<screen>&prompt.user; <userinput>netstat -nr</userinput></screen>
+ </informalexample>
+ <para>Dans notre exemple, voici &agrave; quoi ressemblerait le r&eacute;sultat:</para>
+ <programlisting>
+Routing tables
+
+Internet:
+Destination Gateway Flags Refs Use Netif Expire
+default 192.168.57.1 UGSc 4 964 ep0
+127.0.0.1 127.0.0.1 UH 1 39 lo0
+192.168.57 link#2 UC 0 0
+192.168.57.10/32 link#2 UC 0 0
+192.168.57.82 127.0.0.1 UGHS 0 0 lo0
+224/4 link#2 UCS 0 0
+ </programlisting>
+ <para>Nous y voyons la route par d&eacute;faut, la route vers l'interface
+ &ldquo;en boucle&rdquo;, la route vers notre r&eacute;seau local et une curieuse
+ route vers notre alias. Le <literal>/32</literal> qui suit l'adresse de
+ l'alias donne la longueur du masque de sous-r&eacute;seau (le nombre de 1, en
+ partant de la gauche). Comme nous avons utilis&eacute; un masque de sous-r&eacute;seau
+ de <hostid role="netmask">255.255.255.255</hostid>, la longueur de
+ celui-ci (le nombre de 1) est de 32.</para>
+ <para>Maintenant que nous avons v&eacute;rifi&eacute; que la route est bien dans la table
+ de routage du noyau, nous pouvons effectuer un contr&ocirc;le rapide pour nous
+ assurer que cette route fonctionne bien. Ex&eacute;cutons une commande
+ <citerefentry><refentrytitle>ping</refentrytitle></citerefentry> comme
+ ci-dessous:</para>
+ <informalexample>
+<screen>&prompt.user; <userinput>ping 192.168.57.10</userinput></screen>
+ </informalexample>
+ <para>Si tout va bien, voici ce que nous verrions:</para>
+ <programlisting>
+PING 192.168.57.10 (192.168.57.10): 56 data bytes
+64 bytes from 192.168.57.10: icmp_seq=0 ttl=255 time=0.313 ms
+64 bytes from 192.168.57.10: icmp_seq=1 ttl=255 time=0.197 ms
+64 bytes from 192.168.57.10: icmp_seq=2 ttl=255 time=0.190 ms
+ </programlisting>
+ <para>Appuyons simplement sur
+ <keycombo><keycap>Ctrl</keycap><keycap>C</keycap></keycombo> pour arr&ecirc;ter
+ <citerefentry><refentrytitle>ping</refentrytitle></citerefentry> si tout
+ para&icirc;t satisfaisant. Il nous &ldquo;crachera&rdquo; alors quelques
+ statistiques, que nous pouvons normalement ignorer. S'il n'y a pas de
+ retour ou s'il y a des messages d'erreur, quelque chose ne va pas.
+ Reprenez tout du d&eacute;but et lisez les pages de manuel (non, vraiment,
+ <emphasis>allez lire les pages de manuel</emphasis>), et, finalement,
+ posez vos questions sur la &a.questions;.</para>
+ </sect1>
+ <sect1>
+ <title>Tout mettre en place</title>
+ <para>Maintenant que nous avons compris comment utiliser les commandes
+ <citerefentry><refentrytitle>ifconfig</refentrytitle></citerefentry> et
+ <citerefentry><refentrytitle>route</refentrytitle></citerefentry> pour
+ ajouter et supprimer des alias IP, faisons en sorte que la machine
+ ex&eacute;cute les commandes voulues au d&eacute;marrage de fa&ccedil;on &agrave; ce que l'alias soit
+ toujours actif.</para>
+ <para>Vers la fin de notre fichier <filename>/etc/rc.local</filename>, nous
+ ajouterons la ligne:</para>
+ <programlisting>
+ifconfig ep0 inet 192.168.57.10 netmask 255.255.255.255 alias
+ </programlisting>
+ <para>Si nous utilisons un autre masque de sous-r&eacute;seau que
+ <hostid role="netmask">255.255.255.255</hostid>, nous devrons aussi
+ utiliser la commande
+ <citerefentry><refentrytitle>route</refentrytitle></citerefentry> comme
+ expliqu&eacute; plus haut. Il est possible d'ajouter de cette fa&ccedil;on autant
+ d'alias que l'on veut (en supposant que nous disposons de suffisamment
+ d'adresses allou&eacute;es). Il suffit de mettre plusieurs commandes comme
+ la pr&eacute;c&eacute;dente dans <filename>/etc/rc.local</filename>, avec les adresses
+ appropri&eacute;es. Il est m&ecirc;me possible de d&eacute;finir comme alias des adresses
+ d'un autre r&eacute;seau IP, si ce r&eacute;seau est aussi rout&eacute; sur nous. C'est une
+ situation diff&eacute;rente de celle d'une machine avec plusieurs interfaces
+ <emphasis>physiques</emphasis> qui doivent <emphasis>toujours</emphasis>
+ avoir des adresses sur des r&eacute;seaux IP diff&eacute;rents.</para>
+ <para>Il y a un certains nombre de points &agrave; conna&icirc;tre lorsque l'on utilise
+ un grand nombre d'alias (plus de ~10), que je citerai.</para>
+ <para>Tout d'abord, il y a un bogue dans toutes les distributions de
+ <application>bind</application> (le serveur DNS
+ <application>named</application> fait partie de
+ <application>BIND</application>) qui emp&ecirc;che le d&eacute;marrage correct de
+ <application>named</application> lorsqu'il y a plus de 64 alias sur
+ une interface. Il n'y a pas de palliatif particuli&egrave;rement simple, je ne
+ les mentionnerai donc pas ici.</para>
+ <para>En second lieu, pour &eacute;viter de truffer votre fichier
+ <filename>/etc/rc.local</filename> de quantit&eacute;
+ d'<citerefentry><refentrytitle>ifconfig</refentrytitle></citerefentry>, je
+ vous sugg&egrave;re d'utiliser un fichier &agrave; part dans <filename>/etc</filename>
+ pour les y mettre. Cr&eacute;ez par exemple un fichier
+ <filename>ifconfig.ep0</filename> et mettez-y tous les
+ <literal>ifconfig alias</literal>. Puis dans
+ <filename>/etc/rc.local</filename>, ajoutez les lignes suivantes:</para>
+ <programlisting>
+if [ -x /sbin/ifconfig ]; then
+ echo -n 'Adding local ifconfigs '
+ . /etc/ifconfig.ep0
+ echo ' done.'
+fi
+ </programlisting>
+ <para>Ce fragment de proc&eacute;dure provient d'un fichier
+ <filename>/etc/rc.local</filename> fourni par Neil Fowler Wright
+ <email>neil@corpex.com</email>. Le bricoleur trouvera moyen d'y mettre
+ des boucles s'il y a plusieurs interfaces dont les alias sont d&eacute;finis
+ dans diff&eacute;rents fichiers <filename>ifconfig.*</filename>.</para>
+ </sect1>
+ <sect1>
+ <title>O&ugrave; trouver plus d'aide</title>
+ <para>M'envoyer directement un courrier &eacute;lectronique n'est probablement pas
+ le meilleur moyen d'obtenir de l'aide sur les probl&egrave;mes d'alias IP. Je
+ suis assez occup&eacute; la plupart du temps, et ai tendance &agrave; devenir assez
+ rousp&eacute;teur. N&eacute;anmoins, les participants de la &a.questions; sont
+ amicaux et secourables et r&eacute;pondront &agrave; vos questions plus rapidement que
+ je ne le ferais.</para>
+ <para>Cette page a grandement b&eacute;n&eacute;fici&eacute; des suggestions de Neil Fowler
+ Wright, Paul DuBois, Gabe Schuyler, et de Brodie le chat.</para>
+ </sect1>
+</article>
diff --git a/fr_FR.ISO8859-1/articles/make-world/Makefile b/fr_FR.ISO8859-1/articles/make-world/Makefile
new file mode 100644
index 0000000000..72c1d9b8c9
--- /dev/null
+++ b/fr_FR.ISO8859-1/articles/make-world/Makefile
@@ -0,0 +1,20 @@
+#
+# The FreeBSD Documentation Project
+# The FreeBSD French Documentation Project
+#
+# $FreeBSD$
+# Original revision: 1.4
+#
+
+DOC?= article
+
+FORMATS?= html
+
+INSTALL_COMPRESSED?=gz
+INSTALL_ONLY_COMPRESSED?=
+
+SRCS= article.sgml
+
+DOC_PREFIX?= ${.CURDIR}/../../..
+
+.include "${DOC_PREFIX}/share/mk/doc.project.mk"
diff --git a/fr_FR.ISO8859-1/articles/make-world/article.sgml b/fr_FR.ISO8859-1/articles/make-world/article.sgml
new file mode 100755
index 0000000000..dd12d95e46
--- /dev/null
+++ b/fr_FR.ISO8859-1/articles/make-world/article.sgml
@@ -0,0 +1,1376 @@
+<!--
+ The FreeBSD Documentation Project
+ The FreeBSD French Documentation Project
+
+ $FreeBSD$
+ Original revision: 1.39
+-->
+
+<!DOCTYPE ARTICLE PUBLIC "-//FreeBSD//DTD DocBook V3.1-Based Extension//EN" [
+<!ENTITY % man PUBLIC "-//FreeBSD//ENTITIES DocBook Manual Page Entities//EN"> %man;
+<!ENTITY % urls PUBLIC "-//FreeBSD//ENTITIES Common Document URL Entities//FR"> %urls;
+<!ENTITY % abstract PUBLIC "-//FreeBSD//ENTITIES DocBook Abstract Entities//FR"> %abstract;
+<!ENTITY % artheader PUBLIC "-//FreeBSD//ENTITIES DocBook ArtHeader Entities//FR"> %artheader;
+<!ENTITY % translators PUBLIC "-//FreeBSD//ENTITIES DocBook Translator Entities//FR"> %translators;
+
+<!ENTITY % authors SYSTEM "../../../en_US.ISO_8859-1/books/handbook/authors.ent"> %authors;
+<!ENTITY % mailing-lists SYSTEM "../../books/handbook/mailing-lists.ent"> %mailing-lists;
+ <!ENTITY rel.current CDATA "3.2">
+]>
+
+<article lang="fr">
+ <artheader>
+ <title>Refaire votre monde (avec &ldquo;make world&rdquo;)</title>
+ <authorgroup>
+ <author>
+ <firstname/Nik/
+ <surname/Clayton/
+ <affiliation>
+ <address><email/Nik.Clayton@nothing-going-on.demon.co.uk/</address>
+ </affiliation>
+ </author>
+ </authorgroup>
+ <pubdate>10 Juillet 1997</pubdate>
+
+ <abstract>
+ <para>Ce document pr&eacute;suppose que vous ayez install&eacute; une version du code
+ source de FreeBSD dans le r&eacute;pertoire <filename>/usr/src</filename>.
+ Ce peut &ecirc;tre la derni&egrave;re version de la branche en cours de
+ d&eacute;veloppement -current, &agrave; moins que vous ne restiez simplement &agrave; niveau
+ sur la branche -stable. Vous pouvez avoir t&eacute;l&eacute;charg&eacute; l'instantan&eacute; le plus
+ r&eacute;cent, ou bien rester &agrave; jour en utilisant les m&eacute;canismes fournis
+ par CVSup ou CTM.</para>
+
+ <para>Dans les deux cas, vous diposez du code source et voulez maintenant
+ mettre &agrave; jour votre syst&egrave;me.</para>
+
+ <para>Il y a un certain nombre d'&eacute;tapes &agrave; effectuer pour y arriver,
+ et quelques pi&egrave;ges &agrave; &eacute;viter en cours de route. Ce document vous
+ guide pas &agrave; pas &agrave; chacune de ces &eacute;tapes.</para>
+
+ <para>Il existe aussi des <link linkend="translations">Traductions</link>
+ de ce document dans d'autres langues.</para>
+ &trans.a.haby;
+ </abstract>
+</artheader>
+
+<sect1>
+ <title>Avertissements pr&eacute;alables</title>
+ <note>
+ <title>Faites une sauvegarde</title>
+
+ <para>Je n'insisterai jamais assez sur l'importance de faire un sauvegarde
+ de votre syst&egrave;me <emphasis>avant</emphasis> toute autre chose. Bien qu'il
+ soit facile de &ldquo;refaire le monde&rdquo;
+ (N.d.T.: recompiler FreeBSD)&nbsp;-&nbsp;si
+ vous suivez ces instructions, vous ferez forc&eacute;ment des erreurs &agrave; un moment
+ ou &agrave; un autre, sans compter les erreurs des autres dans l'arborescence des
+ sources qui emp&ecirc;cheraient votre syst&egrave;me de red&eacute;marrer.</para>
+
+ <para>Assurez-vous que vous avez bien fait une sauvegarde. Ayez une
+ disquette de maintenance &agrave; port&eacute;e de la main. Je n'ai jamais eu &agrave; les
+ utiliser, et, je touche du bois, esp&egrave;re ne jamais devoir m'en servir,
+ mais prudence est m&egrave;re de s&ucirc;ret&eacute;.</para>
+ </note>
+
+ <note>
+ <title>Abonnez-vous &agrave; la bonne liste de diffusion</title>
+
+ <para>Les branches -stable et -current du code de FreeBSD sont, par nature,
+ <emphasis>en d&eacute;veloppement</emphasis>. Les gens qui participent au projet
+ FreeBSD sont humains, et des erreurs se produisent parfois.</para>
+
+ <para>Ces erreurs sont parfois b&eacute;nignes. Votre syst&egrave;me affiche simplement
+ un nouveau message d'avertissement. Elles peuvent aussi &ecirc;tre
+ catastrophiques, et emp&ecirc;cher votre syt&egrave;me de red&eacute;marrer, d&eacute;truire vos
+ syst&egrave;mes de fichiers (ou pire).</para>
+
+ <para>Quand de tels probl&egrave;mes se produisent, un avertissement
+ &ldquo;heads up&rdquo; est post&eacute; sur la liste de diffusion appropri&eacute;e,
+ d&eacute;crivant le probl&egrave;me et les machines concern&eacute;es. Un message
+ &ldquo;all clear&rdquo; est diffus&eacute; quand le probl&egrave;me est
+ r&eacute;solu.</Para>
+
+ <para>Si vous restez &agrave; niveau sur -stable ou -current et ne lisez pas
+ <email>FreeBSD-stable@FreeBSD.ORG</email> ou
+ <email>FreeBSD-current@FreeBSD.ORG</email>, vous allez au devant
+ d'ennuis.</para>
+ </note>
+
+ <important>
+ <para>S'il vous pla&icirc;t, ne me posez pas de questions que vous devriez poster
+ sur les listes -questions, -current, ou -stable. Je n'ai ni le temps
+ ni l'environnement n&eacute;cessaire pour diagnostiquer des probl&egrave;mes
+ sp&eacute;cifiques, et n'ai probablement pas votre r&eacute;ponse. Les membres de
+ ces listes de diffusion sont nombreux, exp&eacute;riment&eacute;s et serviables, aussi,
+ posez leur vos questions. Adressez-moi cependant vos commentaires,
+ r&eacute;ponses et corrections<footnote><para>En anglais !</para></footnote>.
+ Si vous vous adressez &agrave; moi au sujet de ce
+ document, <emphasis>merci</emphasis> de m'indiquer le num&eacute;ro de version
+ qui se trouve en haut de cette page, que je sache &agrave; quelle version vous
+ faites r&eacute;f&eacute;rence.</para>
+
+ <para>Ce document est un effort collectif. De nombreuses personnes y ont
+ particip&eacute;, elles sont mentionn&eacute;es dans les
+ <link linkend="contributors">Contributions</link>
+ en fin de document.</para>
+
+ <para>Copyright (c) 1997, 1998 Nik Clayton, All rights reserved.</para>
+
+ <para>Vous pouvez redistribuer et utiliser ce document sous forme
+ de source (SGML DocBook) ou 'compil&eacute;' (HTML, PDF, PostScript, RTF,
+ etc..) avec ou sans modifications &agrave; la condition suivante:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>Le document redistribu&eacute; doit inclure la notice de copyright
+ ci-dessus et l'avertissement ci-dessous, avant le corps du
+ document.</para>
+ </listitem>
+ </itemizedlist>
+
+ <para>THIS TUTORIAL IS PROVIDED BY NIK CLAYTON &ldquo;AS IS&rdquo; AND ANY
+ EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL NIK CLAYTON BE LIABLE FOR ANY
+ DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
+ STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ ANY WAY OUT OF THE USE OF THIS TUTORIAL, EVEN IF ADVISED OF THE
+ POSSIBILITY OF SUCH DAMAGE.</para>
+
+ <para>CE DOCUMENT EST FOURNI PAR NIK CLAYTON &ldquo;TEL QUEL&rdquo; ET
+ AUCUNE GARANTIE EXPRESSE OU IMPLICITE, Y COMPRIS, MAIS NON LIMITEE,
+ GARANTIES IMPLICITES DE COMMERCIABILITE ET D'ADEQUATION A UN BUT
+ PARTICULIER N'EST DONNEE. EN AUCUN CAS NIK CLAYTON NE
+ SAURAIT ETRE TENU RESPONSABLE
+ DES DOMMAGES DIRECTS, INDIRECTS, ACCIDENTELS, SPECIAUX OU CONSEQUENTS
+ (Y COMPRIS, MAIS SANS LIMITATION, LA FOURNITURE DE BIENS ET SERVICES
+ ANNEXES; DEFAUT D'UTILISABILITE, PERTE DE DONNEES OU DE PROFITS; OU
+ INTERRUPTION DE TRAVAIL) QUELLE QU'EN SOIT LA CAUSE ET SELON TOUTE
+ DEFINITION DE RESPONSABILITE, SOIT PAR CONTRAT, RESPONSABILITE STRICTE,
+ OU PREJUDICE (Y COMPRIS NEGLIGENCE OU AUTRES) IMPUTABLE D'UNE FACON
+ OU D'UNE AUTRE A L'UTILISATION DE CE DOCUMENT, MEME APRES AVOIR ETE AVISE
+ DE LA POSSIBILITE D'UN TEL DOMMAGE.</para>
+ </important>
+</sect1>
+
+ <sect1>
+ <title>Examinez <filename>/etc/make.conf</filename></title>
+
+ <para>Reportez-vous au fichier <filename>/etc/make.conf</filename>.
+ Il contient les valeurs par d&eacute;faut utilis&eacute;es par la commande
+ <command/make/, qui sera employ&eacute;e pour la recompilation. Elles sont aussi
+ utilis&eacute;es toutes les fois que vous invoquez <command/make/, il est donc
+ bon de vous assurer qu'elles comportent les valeurs appropri&eacute;es &agrave; votre
+ syst&egrave;me.</para>
+
+ <para>Tout y est, par d&eacute;faut, en commentaire. Activez les options qui
+ vous para&icirc;ssent utiles. Pour un utilisateur normal (qui ne d&eacute;veloppe
+ pas), il faut probalement utiliser les d&eacute;finitions de CFLAGS et
+ NOPROFILE.</para>
+
+ <note>
+ <title/Version 2.1.7 et ant&eacute;rieures/
+
+ <para>Si votre machine dispose d'une unit&eacute; de calcul en virgule
+ flottante (386DX, 486DX, Pentium et ult&eacute;rieurs) vous pouvez aussi
+ activer l'option HAVE_FPU.</para>
+
+ <para>Cette d&eacute;finition a disparu depuis la version 2.2.2 de
+ FreeBSD.</para>
+ </note>
+
+ <para>Examinez les autres d&eacute;finitions (COPTFLAGS, NOPORTDOCS et ainsi de
+ suite) et d&eacute;cidez de celles qui vous conviennent.</para>
+ </sect1>
+
+ <sect1>
+ <title>Mettez &agrave; jour le fichier <filename>/etc/group</filename></title>
+
+ <para>Le r&eacute;pertoire <filename>/etc</filename> contient la plupart des
+ informations de configuration de votre syst&egrave;me, ainsi que ses proc&eacute;dures
+ de d&eacute;marrage. Certaines de ces proc&eacute;dures changent d'une version &agrave; l'autre
+ de FreeBSD.</para>
+
+ <para>Certains fichiers de configuration sont aussi utilis&eacute;s en permanence
+ par le syst&egrave;me. En particulier, <filename>/etc/group</filename>.</para>
+
+ <para>Il est arriv&eacute; que la phase d'installation de &ldquo;make
+ world&rdquo; ait besoin que certains utilisateurs et groupes existent.
+ Il y a de fortes chances qu'ils n'aient pas &eacute;t&eacute; d&eacute;finis avant la mise
+ &agrave; jour. C'est une source de probl&egrave;mes.</para>
+
+ <para>L'exemple le plus r&eacute;cent concerne l'ajout du groupe &ldquo;ppp&rdquo;
+ (renomm&eacute; par la suite &ldquo;network&rdquo;). Les utilisateurs ont vu leur
+ mise &agrave; jour avorter &agrave; l'installation du sous-syt&egrave;me
+ <filename>ppp</filename> sous un groupe inexistant (chez eux).</para>
+
+ <para>La solution consiste &agrave; examiner le fichier
+ <filename>/usr/src/etc/group</filename> et &agrave; le comparer &agrave; votre propre
+ liste de groupes. S'il y a des groupes dans le nouveau fichier qui ne
+ sont pas dans votre fichier, copiez-les. De m&ecirc;me, vous devez renommer
+ tout groupe de votre fichier <filename>/etc/group</filename> qui a le
+ m&ecirc;me GID, mais un nom diff&eacute;rent, qu'un groupe du fichier
+ <filename>/usr/src/etc/group</filename>.</para>
+
+ <tip>
+ <para>Si vous &ecirc;tes particuli&egrave;rement parano&iuml;aque, vous pouvez contr&ocirc;ler
+ votre syst&egrave;me pour trouver les fichiers appartenant au groupe que vous
+ renommez ou supprimez. Une commande du type:
+
+ <informalexample>
+ <screen><prompt/#/ <userinput>find / -group <replaceable>GID</replaceable> -print</userinput></screen>
+ </informalexample>
+
+ vous donnera la liste des fichiers appartenant au groupe
+ <replaceable>GID</replaceable>
+ (qui peut &ecirc;tre un nom de groupe ou un identifiant num&eacute;rique).</para>
+ </tip>
+ </sect1>
+
+ <sect1>
+ <title/Passez en mode mono-utilisateur/
+
+ <para>Il vaut mieux recompiler le syst&egrave;me en mode mono-utilisateur. En
+ dehors du fait que cela ira un peu plus vite, la r&eacute;installation va
+ modifier un grand nombre de fichiers syst&egrave;mes importants, tous les
+ binaires de base, les biblioth&egrave;ques, les fichiers inclus et ainsi de
+ suite. Les modifier quand le syst&egrave;me est en service (en particulier
+ s'il y a des utilisateurs connect&eacute;s &agrave; ce moment l&agrave;), c'est aller au devant
+ de probl&egrave;mes.</para>
+
+ <para>Cela dit, si vous avez confiance en vous, vous pouvez vous en
+ passer.</para>
+
+ <note>
+ <title>Version 2.2.5 et ult&eacute;rieure</title>
+
+ <para>Comme d&eacute;crit plus bas, la version 2.2.5 et les suivantes de
+ FreeBSD s&eacute;parent la recompilation et l'installation. Vous pouvez
+ d&egrave;s lors <emphasis>compiler</emphasis> le nouveau syst&egrave;me en mode
+ multi-utilisateurs et passer en mode mono-utilisateur juste pour
+ l'installer.</para>
+ </note>
+
+ <para>En tant que super-utilisateur, vous pouvez passer la commande:
+
+ <informalexample>
+<screen><prompt/#/ <userinput/shutdown now/</screen>
+ </informalexample>
+
+ sur un syst&egrave;me en fonctionnement, pour passer en mode
+ mono-utilisateur.</para>
+
+ <para>Ou bien, red&eacute;marrez le syst&egrave;me, et, &agrave; l'invite de d&eacute;marrage, entrez
+ l'indicateur <option>-s</option>. Le syst&egrave;me red&eacute;marrera en mode
+ mono-utilisateur. A l'invite de l'interpr&eacute;teur de commandes, ex&eacute;cutez:
+
+ <informalexample>
+<screen><prompt/#/ <userinput/fsck -p/
+<prompt/#/ <userinput>mount -u /</userinput>
+<prompt/#/ <userinput/mount -a -t ufs/
+<prompt/#/ <userinput/swapon -a/</screen>
+ </informalexample>
+
+ pour effectuer la v&eacute;rification des syst&egrave;mes de fichiers, remontez
+ <filename>/</filename> en mode lecture/&eacute;criture, et monter tous les
+ autres syst&egrave;mes de fichiers UFS list&eacute;s dans le fichier
+ <filename>/etc/fstab</filename>, puis activez la pagination.</para>
+ </sect1>
+
+ <sect1>
+ <title>Effacez <filename>/usr/obj</filename></title>
+
+ <para>Les composants du syst&egrave;me reconstruit sont au fur et &agrave; mesure plac&eacute;s
+ dans les sous-r&eacute;pertoires de <filename>/usr/obj</filename> (par d&eacute;faut).
+ Ces r&eacute;pertoires masquent ceux de <filename>/usr/src</filename>.</para>
+
+ <para>Vous pouvez acc&eacute;l&eacute;rer le travail de &ldquo;make world&rdquo;,
+ et peut-&ecirc;tre vous &eacute;viter quelques maux de t&ecirc;te en supprimant aussi
+ le r&eacute;pertoire <filename>/usr/obj</filename>.</para>
+
+ <para>Certains fichiers dans <filename>/usr/obj</filename> sont marqu&eacute;s
+ immuables (reportez-vous aux pages de manuel de
+ <command>chflags(1)</command> pour plus de d&eacute;tails). Il faut d'abord
+ supprimer cet indicateur.</para>
+
+ <para><informalexample>
+<screen><prompt/#/ <userinput>cd /usr/obj</userinput>
+<prompt/#/ <userinput/chflags -R noschg */
+<prompt/#/ <userinput/rm -rf */</screen></informalexample></para>
+ </sect1>
+
+ <sect1>
+ <title/Recompilez les sources et installez le nouveau syst&egrave;me/
+
+ <sect2>
+ <title>Toutes versions</title>
+
+ <para>Vous devez &ecirc;tre dans le r&eacute;pertoire <filename>/usr/src</filename>,
+ donc:
+
+ <informalexample>
+ <screen><prompt/#/ <userinput>cd /usr/src</userinput></screen>
+ </informalexample>
+
+ (&agrave; moins, bien s&ucirc;r, que votre code source soit ailleurs, auquel cas vous
+ devez aller dans le r&eacute;pertoire correspondant).</para>
+
+ <para>Pour recompiler le syst&egrave;me, vous utilisez la commande <citerefentry>
+ <refentrytitle>make</refentrytitle>
+ <manvolnum>1</manvolnum>
+ </citerefentry>. Cette commande lit ses instructions dans le fichier
+ <filename>Makefile</filename>, qui d&eacute;crit comment reconstruire les
+ modules qui constituent FreeBSD, dans quel ordre,
+ et ainsi de suite.</para>
+
+ <para>Le format g&eacute;n&eacute;ral de la commande que vous taperez sera:
+
+ <informalexample>
+ <screen><prompt/#/ <userinput>make <option>-<replaceable/x/</option> <option>-D<replaceable>VARIABLE</replaceable></option> <replaceable>cible</replaceable></userinput></screen>
+ </informalexample>
+ </para>
+
+ <para>Dans cet exemple, <option>-<replaceable>x</replaceable></option> est
+ une option que vous donnez &agrave; <citerefentry>
+ <refentrytitle>make</refentrytitle>
+ <manvolnum>1</manvolnum>
+ </citerefentry>. Reportez-vous aux pages de manuel pour conna&icirc;tre les
+ options disponibles.</para>
+
+ <para><option>-D<replaceable>VARIABLE</replaceable></option> transmet une
+ variable au fichier <filename>Makefile</filename>. Le comportement de
+ <filename>Makefile</filename> est d&eacute;fini par ces variables. Ce sont les
+ m&ecirc;mes variables que l'on trouve dans
+ <filename>/etc/make.conf</filename>, et c'est un autre moyen de les
+ positionner.</para>
+
+ <para>Par exemple:
+
+ <informalexample>
+ <screen><prompt/#/ <userinput>make -DNOPROFILE=true <replaceable>cible</replaceable></userinput></screen>
+ </informalexample>
+
+ est une autre mani&egrave;re de dire qu'il ne faut pas compiler les
+ biblioth&egrave;ques profil&eacute;es et correspond aux lignes:
+
+ <programlisting>NOPROFILE= true
+# Avoid compiling profiled librairies
+# Ne pas compiler les biblioth&egrave;ques profil&eacute;es
+ </programlisting>
+
+ du fichier <filename>/etc/make.conf</filename>.</para>
+
+ <para><replaceable>cible</replaceable> dit &agrave; <citerefentry>
+ <refentrytitle>make</refentrytitle>
+ <manvolnum>1</manvolnum>
+ </citerefentry> ce que vous voulez faire. Chaque
+ <filename>Makefile</filename> d&eacute;finit un certains nombre de
+ &ldquo;cibles&rdquo; diff&eacute;rentes, et votre choix de cibles d&eacute;termine
+ ce qui se passe.</para>
+
+ <para>Il y a des cibles d&eacute;finies dans le fichier
+ <filename>Makefile</filename> que
+ vous n'avez pas &agrave; employer. Ce sont des &eacute;tapes interm&eacute;diaires utilis&eacute;es
+ par le processus de recompilation pour d&eacute;composer les &eacute;tapes en
+ sous-&eacute;tapes.</para>
+
+ <para>La plupart du temps, vous n'aurez pas besoin de donner d'options &agrave;
+ <citerefentry>
+ <refentrytitle>make</refentrytitle>
+ <manvolnum>1</manvolnum>
+ </citerefentry>, et votre commande sera simplement:
+
+ <informalexample>
+ <screen><prompt/#/ <userinput>make <replaceable>cible</replaceable></userinput></screen>
+ </informalexample>
+ </para>
+ </sect2>
+
+ <sect2>
+ <title>Enregistrez le r&eacute;sultat</title>
+
+ <para>C'est une bonne id&eacute;e d'enregistrer le r&eacute;sultat de
+ <citerefentry>
+ <refentrytitle>make</refentrytitle>
+ <manvolnum>1</manvolnum>
+ </citerefentry> dans un ficher. Si quelque chose se passe mal, vous
+ aurez une trace des messages d'erreur, et la liste compl&egrave;te de ce qui
+ a &eacute;t&eacute; fait. M&ecirc;me si cela ne vous aide pas &agrave; diagnostiquer ce qui n'a pas
+ march&eacute;, cela peut aider les autres si vous soumettez votre probl&egrave;me sur
+ une des listes de diffusion de FreeBSD.</para>
+
+ <para>La meilleure fa&ccedil;on de faire cela est d'utiliser la commande
+ <citerefentry><refentrytitle>script</refentrytitle>
+ <manvolnum>1</manvolnum>
+ </citerefentry>, avec en param&egrave;tre le nom du fichier o&ugrave; enregistrer
+ les r&eacute;sultats. Vous devez faire cela juste avant de recompiler le
+ syst&egrave;me, et taper <userinput>exit</userinput> une fois que c'est
+ termin&eacute;.</para>
+
+ <informalexample>
+ <screen><prompt/#/ <userinput>script /var/tmp/mw.out</userinput>
+Script started, output file is /var/tmp/mw.out
+<prompt/#/ <userinput/make world/
+<emphasis>&hellip; compile, compile, compile &hellip;</emphasis>
+<prompt/#/ <userinput/exit/
+Script done, &hellip;
+ </screen>
+ </informalexample>
+
+ <para>Si vous le faites, <emphasis>n'enregistrez pas</emphasis> les
+ r&eacute;sultats dans <filename>/tmp</filename>. Ce r&eacute;pertoire peut &ecirc;tre vid&eacute;
+ au prochain red&eacute;marrage du syt&egrave;me. Il vaut mieux les mettre dans
+ <filename>/var/tmp</filename>
+ (comme dans l'exemple pr&eacute;c&eacute;dent) ou dans le r&eacute;pertoire utilisateur de
+ root.</para>
+ </sect2>
+
+ <sect2>
+ <title>Version 2.2.2 et ant&eacute;rieure</title>
+
+ <para><filename>/usr/src/Makefile</filename> contient la cible
+ &ldquo;world&rdquo;, qui recompile tout le syst&egrave;me et
+ l'installe.</para>
+
+ <para>Utilisez donc:
+ <informalexample>
+ <screen><prompt/#/ <userinput>make world</userinput></screen>
+ </informalexample>
+ </para>
+ </sect2>
+
+ <sect2>
+ <title>Version 2.2.5 et ult&eacute;rieure</title>
+
+ <para>A partir de la version 2.2.5 de FreeBSD (de fait, c'est la premi&egrave;re
+ version &agrave; avoir &eacute;t&eacute; cr&eacute;&eacute;e sur la branche -current, puis rapatri&eacute;e dans
+ la branche -stable entre les versions 2.2.2 et 2.2.5) la cible
+ &ldquo;world&rdquo; a &eacute;t&eacute; d&eacute;compos&eacute;e en deux: &ldquo;buildworld&rdquo;
+ et &ldquo;installworld&rdquo;.</para>
+
+ <para>Comme leurs noms l'indiquent, &ldquo;buildworld&rdquo; reconstruit
+ la nouvelle arborescence dans <filename>/usr/obj</filename>, et
+ &ldquo;installworld&rdquo; l'installe sur la
+ machine.</para>
+
+ <para>C'est tr&egrave;s utile pour deux raisons. Tout d'abord, vous pouvez
+ recompiler en toute s&ucirc;ret&eacute;, sans toucher aux composants du syst&egrave;me
+ actuel. Le processus est &ldquo;autonome&rdquo;. Vous pouvez donc
+ ex&eacute;cuter &ldquo;buildworld&rdquo; sur une machine en mode
+ multi-utilisateurs
+ sans redouter d'effets f&acirc;cheux. Je vous recommande n&eacute;anmoins de toujours
+ ex&eacute;cuter l'&eacute;tape &ldquo;installworld&rdquo; en mode
+ mono-utilisateur.</para>
+
+ <para>En second lieu, cela vous permet d'utiliser des syst&egrave;mes de fichiers
+ mont&eacute;s par NFS pour mettre &agrave; jour les autres machines de votre r&eacute;seau.
+ Si vous avez trois machines, A, B, et C que vous voulez mettre &agrave; jour,
+ ex&eacute;cutez <command>make buildworld</command> et
+ <command>make installworld</command> sur A. B et C doivent alors monter
+ par NFS <filename>/usr/src</filename> et <filename>/usr/obj</filename>
+ depuis A, et vous pouvez alors ex&eacute;cuter
+ <command>make installworld</command> pour
+ installer le syst&egrave;me recompil&eacute; sur B et C.</para>
+
+ <para>La cible &ldquo;world&rdquo; existe toujours
+ et vous pouvez l'utiliser
+ exactement comme avec la version 2.2.2.
+ <command>make world</command> ex&eacute;cute
+ <command>make buildworld</command> suivi de <command>make
+ installworld</command>.</para>
+
+ <note>
+ <para>Si vous utilisez s&eacute;parement <command>make buildworld</command> et
+ <command>make installworld</command>, vous devez donner &agrave; chaque fois
+ les m&ecirc;mes param&egrave;tres &agrave; <citerefentry>
+ <refentrytitle>make</refentrytitle>
+ <manvolnum>1</manvolnum>
+ </citerefentry>.</para>
+
+ <para>Par exemple, si vous ex&eacute;cutez:
+
+ <informalexample>
+ <screen><prompt/#/ <userinput>make -DNOPROFILE=true buildworld</userinput></screen>
+ </informalexample>
+
+ vous devrez ensuite installer les r&eacute;sultats avec:
+
+ <informalexample>
+ <screen><prompt/#/ <userinput>make -DNOPROFILE=true installworld</userinput></screen>
+ </informalexample>
+
+ sinon il essayera d'installer les biblioth&egrave;ques profil&eacute;es
+ qui n'ont pas &eacute;t&eacute; recompil&eacute;es &agrave; l'&eacute;tape
+ <command>make buildworld</command>.</para>
+ </note>
+ </sect2>
+
+ <sect2>
+ <title>-current et ult&eacute;rieure</title>
+
+ <para>Si vous &ecirc;tes sur la branche -current, vous pouvez aussi donner
+ l'option <option>-j</option> &agrave; <command>make</command>. Cela permet &agrave;
+ <command>make</command> d'ex&eacute;cuter plusieurs programmes
+ simultan&eacute;ment.</para>
+
+ <para>C'est particuli&egrave;rement utile sur une machine avec plusieurs
+ processeurs. N&eacute;anmoins, comme la compilation est plus gourmande en
+ Entr&eacute;es/Sorties qu'en CPU, c'est aussi
+ utile sur une machine mono-processeur.</para>
+
+ <para>Typiquement, sur une machine mono-processeur, vous ex&eacute;cuteriez:
+
+ <informalexample>
+ <screen><prompt/#/ <userinput>make -j4 <replaceable>cible</replaceable></userinput></screen>
+ </informalexample>
+
+ pour autoriser
+ <citerefentry>
+ <refentrytitle>make</refentrytitle>
+ <manvolnum>1</manvolnum>
+ </citerefentry> &agrave; ex&eacute;cuter 4 programmes simultan&eacute;ment.
+ Les constatations empiriques post&eacute;es sur les listes de diffusion
+ montrent que c'est en g&eacute;n&eacute;ral ce qui apporte le plus de gain en
+ performances.</para>
+
+ <para>Si vous avez une machine multi-processeurs et que vous avez
+ configur&eacute; un noyau SMP, essayez des valeurs entre 6 et 10 et voyez quel
+ b&eacute;n&eacute;fice vous en tirez.</para>
+
+ <para>N'oubliez pas que c'est toujours exp&eacute;rimental (au moment o&ugrave; j'&eacute;cris
+ ceci), et que des modifications de l'arborescence des sources rendent
+ parfois cette possibilit&eacute; inutilisable. Si vous n'arrivez pas &agrave; recompiler
+ avec ce param&egrave;tre, essayez sans avant de signaler votre probl&egrave;me.</para>
+ </sect2>
+
+ <sect2>
+ <title/Dur&eacute;e/
+
+ <para>En supposant que tout ce passe bien, il vous faudra attendre
+ entre une heure et demie et une demi-journ&eacute;e.</para>
+
+ <para>En r&egrave;gle g&eacute;n&eacute;rale, un P6 200MHz avec plus de 32MB de RAM
+ et des disques SCSI corrects ex&eacute;cutera <command>make world</command>
+ en environ une heure et demie. Un P133 32MB prendra 5 &agrave; 6
+ heures. Revoyez ces chiffres &agrave; la baisse si vos machines sont
+ plus lentes&hellip;</para>
+ </sect2>
+ </sect1>
+
+ <sect1>
+ <title>Mettez &agrave; jour <filename>/etc</filename></title>
+
+ <para>Recompiler le syst&egrave;me ne met pas &agrave; jour certains r&eacute;pertoires (en
+ particulier, <filename>/etc</filename>, <filename>/var</filename> et
+ <filename>/usr</filename>) pour y installer des fichiers de configuration
+ nouveaux ou modifi&eacute;s.
+ Il vous faudra le faire &agrave; la main, &agrave; vue, et en utilisant &agrave; bon escient
+ la commande <command/diff/.</para>
+
+ <para>Vous ne pouvez pas vous contenter de copier les fichiers de
+ <filename>/usr/src/etc</filename> dans <filename>/etc</filename> pour
+ que cela marche. Certains de ces fichiers doivent d'abord &ecirc;tre
+ &ldquo;install&eacute;s&rdquo;.
+ En effet le r&eacute;pertoire <filename>/usr/src/etc</filename>
+ <emphasis>n'est pas</emphasis> une simple copie de ce que devrait
+ contenir votre r&eacute;pertoire<filename>/etc</filename>. De plus, il y a
+ des fichiers qui doivent &ecirc;tre dans <filename>/etc</filename> et ne
+ sont pas dans <filename>/usr/src/etc</filename>.</para>
+
+ <para>La fa&ccedil;on la plus simple de proc&eacute;der est d'installer les fichiers
+ dans un nouveau r&eacute;pertoire, puis de passer en revue les diff&eacute;rences.</para>
+
+ <note>
+ <title>Sauvegardez vos fichiers actuels dans
+ <filename>/etc</filename></title>
+
+ <para>Bien qu'en principe rien ne sera modifi&eacute; automatiquement dans ce
+ r&eacute;pertoire, prudence est m&egrave;re de s&ucirc;ret&eacute;. Copiez donc votre r&eacute;pertoire
+ <filename>/etc</filename> dans un endroit s&ucirc;r.
+ Quelque chose du genre:</para>
+
+ <informalexample>
+ <screen><prompt/#/ <userinput>cp -Rp /etc /etc.old</userinput></screen>
+ </informalexample>
+
+ <para>fera l'affaire (<option>-R</option> fait une copie r&eacute;cursive,
+ <option>-p</option> conserve la date, les autorisations des fichiers
+ et ainsi de suite).</para>
+ </note>
+
+ <para>Vous devez cr&eacute;er un jeu de r&eacute;pertoires provisoires pour y installer
+ les fichiers de <filename>/etc</filename> et autres. En g&eacute;n&eacute;ral,
+ je les mets dans <filename>/var/tmp/root</filename>;
+ il y a un certain nombre de sous-r&eacute;pertoires &agrave; cr&eacute;er. Pour ce faire,
+ ex&eacute;cutez:
+
+ <informalexample>
+ <screen><prompt/#/ <userinput>mkdir /var/tmp/root</userinput>
+<prompt/#/ <userinput>cd /usr/src/etc</userinput>
+<prompt/#/ <userinput>make DESTDIR=/var/tmp/root distrib-dirs distribution</userinput></screen>
+ </informalexample>
+
+ qui va cr&eacute;er l'arborescence n&eacute;cessaire et y installera les fichiers. Un
+ grand nombre des sous-r&eacute;pertoires cr&eacute;&eacute;s dans
+ <filename>/var/tmp/root</filename> seront vides et devront &ecirc;tre
+ supprim&eacute;s. La fa&ccedil;on la plus simple de le faire est:
+
+ <informalexample>
+ <screen><prompt/#/ <userinput>cd /var/tmp/root</userinput>
+<prompt/#/ <userinput>find -d . -type d | /usr/bin/perl -lne \
+ 'opendir(D,$_);@f=readdir(D);rmdir if $#f == 1;closedir(D);'</userinput></screen>
+ </informalexample>
+
+ qui fait une recherche en profondeur, examine chaque r&eacute;pertoire, et s'il
+ ne contient que 2 fichiers (&ldquo;1&rdquo; n'est pas une faute de frappe
+ dans la proc&eacute;dure), i.e. &ldquo;<filename>.</filename>&rdquo; et
+ &ldquo;<filename>..</filename>&rdquo; supprime le r&eacute;pertoire.</para>
+
+ <para><filename>/var/tmp/root</filename> contient maintenant tous les
+ fichiers &agrave; installer &agrave; l'endroit requis sous
+ <filename>/</filename>. Vous devez ensuite examiner chacun de ces
+ fichiers pour voir en quoi ils diff&egrave;rent de vos propres fichiers.</para>
+
+ <para>Notez que certains des fichiers qui ont &eacute;t&eacute; install&eacute;s dans
+ <filename>/var/tmp/root</filename> commencent par un &ldquo;.&rdquo; Au
+ moment o&ugrave; j'&eacute;cris ceci, les seuls fichiers concern&eacute;s sont les fichiers
+ d'initialisation des interpr&eacute;teurs de commandes dans
+ <filename>/var/tmp/root/</filename> et
+ <filename>/var/tmp/root/root/</filename>, mais il pourrait y en
+ avoir d'autres
+ (cela d&eacute;pend de quand vous lirez ces lignes). Assurez-vous d'utiliser
+ <command/ls -a/ pour ne pas les oublier.</para>
+
+ <para>La mani&egrave;re la plus simple de proc&eacute;der est d'utiliser la commande
+ <command/diff/ pour comparer deux fichiers.</para>
+
+ <para>Par exemple:
+
+ <informalexample>
+ <screen><prompt/#/ <userinput>diff /etc/shells /var/tmp/root/etc/shells</userinput></screen>
+ </informalexample>
+
+ vous indiquera les diff&eacute;rences entre votre fichier
+ <filename>/etc/shells</filename> et le nouveau fichier
+ <filename>/etc/shells</filename>. A partir de l&agrave;, d&eacute;cidez si vous
+ allez reporter les modifications que vous y avez apport&eacute;es ou si vous
+ allez simplement recopier le nouveau fichier.</para>
+
+ <para><ulink url="http://www.nothing-going-on.demon.co.uk/FreeBSD/make-world/dircmp.pl"><filename>http://www.nothing-going-on.demon.co.uk/FreeBSD/make-world/dircmp.pl</filename></ulink> est une
+ petite proc&eacute;dure Perl (Perl 4.036, qui est install&eacute; par d&eacute;faut &agrave; partir de
+ la version 2.0 de FreeBSD) qui compare les fichiers de deux r&eacute;pertoires
+ (<filename>/etc</filename> et
+ <filename>/var/tmp/root/etc</filename> par d&eacute;faut) et liste les fichiers
+ absents ou diff&eacute;rents dans les deux r&eacute;pertoires.</para>
+
+ <tip>
+ <title>Donnez au nouveau r&eacute;pertoire
+ (<filename>/var/tmp/root</filename>) un nom qui inclue une date, pour
+ pouvoir facilement comparer diff&eacute;rentes versions</title>
+
+ <para>Si vous recompilez fr&eacute;quemment votre syst&egrave;me, vous devrez aussi
+ souvent mettre &agrave; jour <filename>/etc</filename>, ce qui peut devenir
+ une vrai corv&eacute;e.</para>
+
+ <para>Vous pouvez acc&eacute;l&eacute;rer le processus en gardant une copie du dernier
+ jeu de fichiers report&eacute;s dans <filename>/etc</filename>. La
+ proc&eacute;dure suivante vous sugg&egrave;re comment faire.</para>
+
+ <procedure>
+ <step>
+ <para>Recompilez le syst&egrave;me comme d'habitude. Au moment de mettre &agrave;
+ jour <filename>/etc</filename> et les autres r&eacute;pertoires, donnez au
+ r&eacute;pertoire cible un nom bas&eacute; sur la date du jour. Si vous faisiez
+ cela le 14 F&eacute;vrier 1998, vous pouviez proc&eacute;der comme suit:</para>
+
+ <informalexample>
+ <screen><prompt/#/ <userinput>mkdir /var/tmp/root-980214</userinput>
+<prompt/#/ <userinput>cd /usr/src/etc</userinput>
+<prompt/#/ <userinput>make DESTDIR=/var/tmp/root-980214 \
+ distrib-dirs distribution</userinput></screen>
+ </informalexample>
+ </step>
+
+ <step>
+ <para>Reportez les modifications depuis ce r&eacute;pertoire comme d&eacute;crit
+ plus haut.</para>
+
+ <para><emphasis>Ne supprimez pas</emphasis> le r&eacute;pertoire
+ <filename>/var/tmp/root-980214</filename> quand vous aurez
+ termin&eacute;.</para>
+ </step>
+
+ <step>
+ <para>Quand vous chargerez la version la plus r&eacute;cente des sources et
+ la recompilerez, faites de m&ecirc;me. Vous aurez alors un nouveau
+ r&eacute;pertoire,
+ <filename>/var/tmp/root-980221</filename> par exemple
+ (si vous faites une mise &agrave; jour chaque semaine).</para>
+ </step>
+
+ <step>
+ <para>Vous pouvez maintenant voir les modifications intervenues
+ d'une semaine &agrave; l'autre avec quelque chose comme:
+
+ <informalexample>
+ <screen><prompt/#/ <userinput>cd /var/tmp</userinput>
+<prompt/#/ <userinput>diff -r root-980214 root-980221</userinput></screen>
+ </informalexample>
+
+ qui vous donnera les diff&eacute;rences entre tous les fichiers des deux
+ r&eacute;pertoires.</para>
+
+ <para>Typiquement, il y aura beaucoup moins de diff&eacute;rences
+ qu'entre <filename>/var/tmp/root-980221/etc</filename>
+ et <filename>/etc</filename>. Comme il y a beaucoup moins de
+ diff&eacute;rences, il est beaucoup plus facile de les reporter dans
+ le r&eacute;pertoire <filename>/etc</filename>.</para>
+ </step>
+
+ <step>
+ <para>Vous pouvez maintenant supprimer le plus ancien des deux
+ r&eacute;pertoires <filename>/var/tmp/root-*</filename>:
+
+ <informalexample>
+ <screen><prompt/#/ <userinput>rm -rf /var/tmp/root-980214</userinput></screen>
+ </informalexample>
+ </para>
+ </step>
+
+ <step>
+ <para>R&eacute;p&eacute;tez l'op&eacute;ration chaque fois que vous devez reporter
+ des modifications dans <filename>/etc</filename>.</para>
+ </step>
+ </procedure>
+
+ <para>Vous pouvez utiliser la commande <command>date(1)</command> pour
+ automatiser la g&eacute;n&eacute;ration des noms de r&eacute;pertoires. Par exemple:
+
+ <informalexample>
+ <screen><prompt/#/ <userinput>mkdir /var/tmp/root-`date "+%y%m%d"`</userinput></screen>
+ </informalexample>
+
+ cr&eacute;e un r&eacute;pertoire dont le nom d&eacute;pend de l'ann&eacute;e, du mois et
+ du jour.</para>
+ </tip>
+ </sect1>
+
+ <sect1>
+ <title>Mettez &agrave; jour <filename>/dev</filename></title>
+
+ <note>
+ <title>DEVFS</title>
+
+ <para>Si vous utilisez DEVFS ce qui suit ne vous concerne probalement
+ pas.</para>
+ </note>
+
+ <para>Pour des raisons de s&eacute;curit&eacute;, cette mise &agrave; jour se fait en plusieurs
+ &eacute;tapes.</para>
+
+ <para>Copiez tout d'abord <filename>/var/tmp/root/dev/MAKEDEV</filename>
+ dans <filename>/dev</filename>.
+
+ <informalexample>
+ <screen><prompt/#/ <userinput>cp /var/tmp/root/dev/MAKEDEV /dev</userinput></screen>
+ </informalexample></para>
+
+ <para>Prenez maintenant un instantan&eacute; de l'&eacute;tat de votre r&eacute;pertoire
+ <filename>/dev</filename>. Il doit indiquer
+ les propri&eacute;taires, les droits et les codes majeur et mineur de chaque
+ fichier sp&eacute;cial de p&eacute;riph&eacute;rique, mais pas leur date de derni&egrave;re mise &agrave; jour.
+ La fa&ccedil;on la plus facile de proc&eacute;der est d'utiliser
+ la commande <command>awk</command> pour &eacute;liminer les informations inutiles:
+
+ <informalexample>
+ <screen><prompt/#/ <userinput>cd /dev</userinput>
+<prompt/#/ <userinput>ls -l | awk '{print $1, $2, $3, $4, $5, $6, $NF}' > /var/tmp/dev.out</userinput></screen>
+ </informalexample></para>
+
+ <para>Ensuite, recr&eacute;ez tous les fichiers sp&eacute;ciaux de p&eacute;riph&eacute;riques:.
+
+ <informalexample>
+ <screen><prompt/#/ <userinput/sh MAKEDEV all/</screen>
+ </informalexample></para>
+
+ <para>Reprenez un instantan&eacute; de l'&eacute;tat de votre r&eacute;pertoire, cette fois-ci
+ dans <filename>/var/tmp/dev2.out</filename>. Comparez maintenant ces deux
+ instantan&eacute;s pour voir si certains fichiers sp&eacute;ciaux de p&eacute;riph&eacute;riques
+ n'ont pas &eacute;t&eacute; recr&eacute;&eacute;s. Il ne devrait pas en manquer, mais prudence est
+ m&egrave;re de s&ucirc;ret&eacute;.
+
+ <informalexample>
+ <screen><prompt/#/ <userinput>diff /var/tmp/dev.out /var/tmp/dev2.out</userinput></screen>
+ </informalexample></para>
+
+ <para>Il manquera peut-&ecirc;tre des descripteurs de partitions,
+ il vous faudra alors ex&eacute;cuter des commandes du type :
+
+ <informalexample>
+<screen><prompt/#/ <userinput>sh MAKEDEV sd0s1</userinput>
+</screen>
+ </informalexample>
+
+ pour les recr&eacute;er. Les d&eacute;tails d&eacute;pendent de votre installation.</para>
+ </sect1>
+
+ <sect1>
+ <title>Mettez &agrave; jour <filename>/stand</filename></title>
+
+ <note>
+ <para>Cette &eacute;tape n'est d&eacute;crite que pour &ecirc;tre exhaustif, elle peut &ecirc;tre
+ omise sans danger.</para>
+ </note>
+
+ <para>Pour &ecirc;tre exhaustif, vous pouvez aussi mettre &agrave; jour les fichiers de
+ <filename>/stand</filename>. Ces fichiers sont des liens physiques sur
+ le programme <filename>/stand/sysinstall</filename>. L'&eacute;dition de liens
+ de cet ex&eacute;cutable doit &ecirc;tre statique, pour qu'on puisse l'utiliser sans
+ qu'aucun autre syst&egrave;me de fichiers (et en particulier
+ <filename>/usr</filename>) ne soit mont&eacute;.</para>
+
+ <informalexample>
+ <screen><prompt/#/ <userinput>cd /usr/src/release/sysinstall</userinput>
+<prompt/#/ <userinput>make all install</userinput></screen>
+ </informalexample>
+
+ <note>
+ <title>Sources ant&eacute;rieurs au 2 Avril 1998</title>
+
+ <para>Si votre code source date d'avant le 2 Avril 1998, ou que
+ la version de votre <filename>Makefile</filename> est inf&eacute;rieure &agrave;
+ 1.68 (pour FreeBSD-current et les syst&egrave;mes 3.x) ou &agrave; 1.48.2.21
+ (pour les syst&egrave;mes 2.2.x), vous devrez ajouter l'option
+ <userinput>NOSHARED=yes</userinput> comme suit:</para>
+
+ <informalexample>
+ <screen><prompt/#/ <userinput>make NOSHARED=yes all install</userinput></screen>
+ </informalexample>
+
+ </note>
+ </sect1>
+
+ <sect1>
+ <title/Compilez et installez un nouvau noyau/
+
+ <para>Pour tirer pleinement parti de votre nouveau syst&egrave;me, vous devez
+ recompiler le noyau. C'est pratiquement indispensable, parce que des
+ structures de donn&eacute;es peuvent avoir chang&eacute;, et des programmes
+ comme <command/ps/ et <command/top/ ne marcheront pas
+ tant que le syst&egrave;me et le noyau ne seront pas au m&ecirc;me niveau
+ de version.</para>
+
+ <para>Suivez les instructions du "manuel" pour compiler un nouveau
+ noyau. Si vous avez d&eacute;j&agrave; recompil&eacute; un noyau personnalis&eacute;
+ examinez en d&eacute;tail le fichier de configuration
+ <filename/LINT/ pour voir s'il y a de nouvelles options dont vous
+ pourriez tirer parti.</para>
+
+ <para>Une version pr&eacute;c&eacute;dente de ce document sugg&eacute;rait de red&eacute;marrer
+ le syst&egrave;me avant de recompiler le noyau. C'est un erreur parce
+ que :</para>
+
+ <itemizedlist>
+ <listitem><para>Des commandes comme <command/ps/, <command/ifconfig/ and
+ <command/sysctl/ peuvent ne plus fonctionner. Dans ce cas, votre
+ machine ne peut plus se connecter au r&eacute;seau.</para></listitem>
+
+ <listitem><para>De m&ecirc;me, des utilitaires essentiels comme
+ <command/mount/ peuvent aussi &ecirc;tre inutilisables,
+ auquel cas <filename>/</filename>, <filename>/usr</filename> et ainsi
+ de suite, ne peuvent plus &ecirc;tre mont&eacute;s. Il y a peu de chances
+ que cela arrive si vous &ecirc;tes sur la branche -stable, mais c'est plus
+ probable sur la branche -current apr&egrave;s des modifications
+ importantes.</para></listitem>
+
+ <listitem>
+ <para>Les LKMs ("Loadable Kernel Modules"&nbsp;-&nbsp;modules du noyau &agrave; chargement
+ dynamique) reconstruits en m&ecirc;me temps que &ldquo;world&rdquo;
+ peuvent "planter" un noyau plus ancien.</para>
+ </listitem>
+ </itemizedlist>
+
+ <para>Pour toutes ces raisons, il vaut mieux recompiler et installer un
+ nouveau noyau avant de red&eacute;marrer.</para>
+
+ <para>Vous devez recompiler le noyau apr&egrave;s avoir termin&eacute;
+ <userinput>make world</userinput> (ou <userinput>make
+ installworld</userinput>). Si vous ne le faites pas (peut-&ecirc;tre
+ voulez-vous vous assurer que le noyau compile avant de mettre &agrave;
+ jour le syst&egrave;me), vous pourriez avoir des probl&egrave;mes. Cela parce que
+ votre commande <command>config</command> n'est pas &agrave; niveau
+ avec les sources du noyau.</para>
+
+ <para>Dans ce cas, ex&eacute;cutez:
+
+ <informalexample>
+ <screen><prompt/#/ <userinput>/usr/obj/usr/src/usr.sbin/config <replaceable>NOM_DU_NOYAU</replaceable></userinput></screen>
+ </informalexample>
+
+ pour recompiler le noyau avec la nouvelle version de
+ <command>config</command>. Cela ne marchera peut-&ecirc;tre pas &agrave; tous les
+ coups. Il est recommand&eacute; d'en finir avec
+ <userinput>make world</userinput> (ou
+ <userinput>make installworld</userinput>) avant de compiler un nouveau
+ noyau.</para>
+ </sect1>
+
+ <sect1>
+ <title/Red&eacute;marrez/
+
+ <para>Vous en avez fini. Apr&egrave;s avoir v&eacute;rifi&eacute; que tout semble &ecirc;tre en
+ place, vous pouvez maintenant red&eacute;marrez votre syst&egrave;me. Un simple
+ <citerefentry>
+ <refentrytitle>fastboot</refentrytitle>
+ <manvolnum>8</manvolnum>
+ </citerefentry> devrait suffire.</para>
+
+ <informalexample>
+ <screen><prompt/#/ <userinput>fastboot</userinput></screen>
+ </informalexample>
+ </sect1>
+
+ <sect1>
+ <title>C'est fini</title>
+
+ <para>Vous devriez maintenant avoir mis &agrave; jour avec succ&egrave;s votre syst&egrave;me
+ FreeBSD.
+ F&eacute;licitations.</para>
+
+ <para>Vous aurez peut-&ecirc;tre de petits probl&egrave;mes si des d&eacute;tails vous
+ ont &eacute;chapp&eacute;s. Par
+ exemple, il m'est arriv&eacute; d'effacer le fichier
+ <filename>/etc/magic</filename> au moment de la mise &agrave; jour de
+ <filename>/etc</filename>, de ce fait, la commande
+ <command>file</command> ne marchait plus. Un petit moment de r&eacute;flexion
+ et j'ai trouv&eacute; que:
+
+ <informalexample>
+ <screen><prompt/#/ <userinput>cd /usr/src/usr.bin/file</userinput>
+<prompt/#/ <userinput/make all install/</screen>
+ </informalexample>
+
+ suffisait &agrave; r&eacute;gler ce probl&egrave;me.</para>
+ </sect1>
+
+ <sect1>
+ <title/Questions?/
+
+ <sect2>
+ <title/Dois-je refaire le monde &agrave; chaque &eacute;volution?/
+
+ <para>Il n'y a pas de r&eacute;ponse toute faite &agrave; cette question, tout d&eacute;pend
+ de la nature des &eacute;volutions. Je viens juste, par exemple, d'ex&eacute;cuter
+ CVSup, et les fichiers suivants ont &eacute;t&eacute; modifi&eacute;s depuis ma derni&egrave;re
+ recompilation:</para>
+
+ <informalexample>
+<screen><filename>src/games/cribbage/instr.c</filename>
+<filename>src/games/sail/pl_main.c</filename>
+<filename>src/release/sysinstall/config.c</filename>
+<filename>src/release/sysinstall/media.c</filename>
+<filename>src/share/mk/bsd.port.mk</filename></screen>
+ </informalexample>
+
+ <para>Il n'y a pas l&agrave; mati&egrave;re &agrave; ce que je recompile mon syst&egrave;me. Je
+ vais simplement aller dans les bons sous-r&eacute;pertoires et ex&eacute;cuter
+ <command/make all
+ install/, et c'est &agrave; peu pr&egrave;s tout. Mais s'il y a des &eacute;volutions
+ importantes, par
+ exemple sur <filename>src/lib/libc/stdlib</filename> alors ou je
+ referais, le monde, ou je recompilerais au moins toutes les parties
+ du syst&egrave;me qui sont li&eacute;es statiquement
+ (de m&ecirc;me que tout ce que je pourrais avoir ajout&eacute; qui serait li&eacute;
+ statiquement).</para>
+
+ <para>En fin de journ&eacute;e, c'est &agrave; vous de voir.
+ Vous pr&eacute;f&eacute;rerez peut-&ecirc;tre recompiler votre syst&egrave;me tous les quinze
+ jours, et laisser les modifications s'empiler pendant ces quinze jours.
+ Ou bien vous pr&eacute;f&eacute;rez ne recompiler que ce qui a chang&eacute; et vous faire
+ confiance pour rep&eacute;rer ce qui en d&eacute;pend.</para>
+
+ <para>Et, bien s&ucirc;r, cela d&eacute;pend de la fr&eacute;quence avec laquelle vous voulez
+ faire vos mises &agrave; jour, et de si vous &ecirc;tes sur la branche -stable ou
+ sur la branche -current.</para>
+ </sect2>
+
+ <sect2>
+ <title>Ma compilation &eacute;choue avec de nombreuses erreurs "signal 12"
+ (ou tout autre num&eacute;ro de signal)</title>
+
+ <para>Cela indique g&eacute;n&eacute;ralement un probl&egrave;me mat&eacute;riel. (Re)faire le
+ monde est un bon moyen de mettre votre mat&eacute;riel sous pression, et
+ mettra souvent en &eacute;vidence des d&eacute;faillances de la m&eacute;moire vive. Cela se
+ manifeste normalement de soi-m&ecirc;me: le compilation &eacute;choue en recevant
+ de myst&eacute;rieux signaux.</para>
+
+ <para>Vous pouvez vous en assurer si vous relancer la compilation
+ et qu'elle &eacute;choue en un endroit diff&eacute;rent.</para>
+
+ <para>Dans ce cas, vous ne pouvez gu&egrave;re faire autre chose que
+ d'intervertir les diff&eacute;rents composants de votre mat&eacute;riel pour d&eacute;terminer
+ lequel est en cause.</para>
+ </sect2>
+
+ <sect2>
+ <title>Puis-je d&eacute;truire <filename>/usr/obj</filename> apr&egrave;s avoir
+ fini?</title>
+
+ <para>Tout d&eacute;pend de comment vous voulez refaire le monde par
+ la suite.</para>
+
+ <para><filename>/usr/obj</filename> contient tous les fichiers objets
+ g&eacute;n&eacute;r&eacute;s &agrave; la compilation. Normalement, une des premi&egrave;res &eacute;tapes de
+ &ldquo;make world&rdquo; est de supprimer ce r&eacute;pertoire
+ et de repartir &agrave; z&eacute;ro. Dans ce cas, conserver ce r&eacute;pertoire
+ <filename>/usr/obj</filename> apr&egrave;s en avoir termin&eacute; ne sert pas &agrave;
+ grand chose, alors que vous &eacute;conomiseriez pas mal d'espace disque
+ (au jour d'aujourd'hui
+ environ 150Mo).</para>
+
+ <para>N&eacute;anmoins, si vous savez ce que vous faites, vous pouvez faire en
+ sorte que &ldquo;make
+ world&rdquo; saute cette &eacute;tape. Les reconstructions ult&eacute;rieures seront
+ beaucoup plus rapides, car la plupart des sources n'auront pas besoin
+ d'&ecirc;tre recompil&eacute;s. Le revers de la m&eacute;daille est que des
+ probl&egrave;mes de d&eacute;pendance subtils peuvent se manifester, provoquant
+ l'&eacute;chec de votre recompilation de mani&egrave;re &eacute;trange. Cela g&eacute;n&egrave;re
+ fr&eacute;quemment du bruit sur les listes de diffusion de FreeBSD,
+ quand quelqu'un se plaint que sa mise &agrave; jour a &eacute;chou&eacute;, sans r&eacute;aliser
+ qu'il a tent&eacute; de br&ucirc;ler les &eacute;tapes.</para>
+
+ <para>Si vous aimez vivre dangereusement, passez le param&egrave;tre
+ &ldquo;NOCLEAN&rdquo; &agrave; <command/make/, comme suit:
+
+ <informalexample>
+ <screen><prompt/#/ <userinput>make -DNOCLEAN world</userinput></screen>
+ </informalexample>
+ </para>
+ </sect2>
+
+ <sect2>
+ <title>Une recompilation interrompue peut-elle &ecirc;tre reprise?</title>
+
+ <para>Tout d&eacute;pend de jusqu'o&ugrave; vous &ecirc;tes all&eacute; avant de rencontrer un
+ probl&egrave;me.</para>
+
+ <para><emphasis>En g&eacute;n&eacute;ral</emphasis> (mais ce n'est pas une r&egrave;gle
+ absolue) &ldquo;make world&rdquo; cr&eacute;e de nouveaux exemplaires
+ des utilitaires de base (comme <command>gcc</command>, et
+ <command>make</command>) et des biblioth&egrave;ques syst&egrave;me. Ces outils et
+ biblioth&egrave;ques sont ensuite install&eacute;s. Ils sont ensuite utilis&eacute;s
+ pour se reconstruire eux-m&ecirc;mes, et install&eacute;s de nouveau. Le syst&egrave;me
+ entier (y compris maintenant les outils usuels, comme
+ <command>ls</command> ou
+ <command>grep</command>) est ensuite recompil&eacute; avec les nouveaux
+ outils et biblioth&egrave;ques de base.</para>
+
+ <para>Si vous en &ecirc;tes &agrave; cette derni&egrave;re &eacute;tape, et que vous le savez
+ (parce que vous avez consult&eacute; les r&eacute;sultats que vous avez enregistr&eacute;s)
+ alors vous pouvez (avec une bonne chance de r&eacute;ussite) faire:
+
+ <informalexample>
+ <screen><emphasis>&hellip; r&eacute;gler le probl&egrave;me &hellip;</emphasis>
+<prompt/#/ <userinput>cd /usr/src</userinput>
+<prompt/#/ <userinput/make -DNOCLEAN all/
+ </screen>
+ </informalexample>
+
+ qui ne d&eacute;truira pas les r&eacute;sultats du travail qu'a d&eacute;j&agrave; effectu&eacute;
+ &ldquo;make world&rdquo;.</para>
+
+ <para>Si vous voyez le message :
+
+<screen>
+--------------------------------------------------------------
+ Building everything..
+--------------------------------------------------------------
+</screen>
+
+ dans les comptes-rendus de &ldquo;make world&rdquo;, cette fa&ccedil;on de
+ proc&eacute;der est probablement s&ucirc;re.</para>
+
+ <para>Si vous ne voyez pas ce message, ou doutez de vous, alors prudence
+ est m&egrave;re de s&ucirc;ret&eacute;, et il vaut mieux tout reprendre depuis le
+ d&eacute;but.</para>
+ </sect2>
+
+ <sect2>
+ <title/Puis-je utiliser une seule machine de <emphasis/r&eacute;f&eacute;rence/ pour
+ mettre &agrave; jour plusieurs machines (NFS)?/
+
+ <para>On pose souvent la question sur les listes de diffusion de FreeBSD
+ de savoir s'il est possible de tout compiler sur une seule machine
+ puis d'installer les r&eacute;sultats de cette compilation sur d'autres
+ machines du r&eacute;seau avec <command/make install/.</para>
+
+ <para>C'est quelque chose que je n'ai jamais fait, aussi les indications
+ qui suivent m'ont-elles &eacute;t&eacute; donn&eacute;es par d'autres ou d&eacute;duites des
+ <filename>Makefile</filename>s.</para>
+
+ <para>La marche exacte &agrave; suivre d&eacute;pend de votre version de FreeBSD.</para>
+
+ <note>
+ <para>Vous devrez encore mettre &agrave; jour <filename>/etc</filename> et
+ <filename>/dev</filename> sur les machines cibles apr&egrave;s cette
+ &eacute;tape.</para>
+ </note>
+
+ <sect3>
+ <title>Version 2.1.7 et ant&eacute;rieures</title>
+
+ <para>Dans un message adress&eacute; &agrave; questions@freebsd.org,
+ Antonio Bemfica a sugg&eacute;r&eacute; la m&eacute;thode suivante:</para>
+
+<screen>
+Date: Thu, 20 Feb 1997 14:05:01 -0400 (AST)
+From: Antonio Bemfica &lt;bemfica@militzer.me.tuns.ca&gt;
+To: freebsd-questions@freebsd.org
+Message-ID: &lt;Pine.BSI.3.94.970220135725.245C-100000@militzer.me.tuns.ca&gt;
+
+Josef Karthauser a demand&eacute;:
+
+&gt; Quelqu'un a-t-il la bonne m&eacute;thode pour mettre &agrave; jour
+&gt; les machines d'un r&eacute;seau?
+
+D'abord <command>make world</command>, etc... sur votre machine de r&eacute;f&eacute;rence
+Ensuite, montez <filename>/</filename> and <filename>/usr</filename> sur la machine distante:
+
+machine_de_r&eacute;f&eacute;rence% mount machine_distante:/ /mnt
+machine_de_r&eacute;f&eacute;rence% mount machine_distante:/usr /mnt/usr
+
+Ensuite, faites <command>make install</command> avec <filename>/mnt</filename> comme cible:
+
+machine_de_r&eacute;f&eacute;rence% make install DESTDIR=/mnt
+
+R&eacute;p&eacute;tez cela pour chaque machine de votre r&eacute;seau.
+Cela marche tr&egrave;s bien dans mon cas.
+
+Antonio
+</screen>
+
+ <para>Ce m&eacute;canisme ne fonctionne (autant que je sache) que si
+ vous pouvez &eacute;crire sur <filename>/usr/src</filename> sur le serveur
+ NFS, car ce devait &ecirc;tre la cible d'&ldquo;install&rdquo; avec la
+ version 2.1.7 et les pr&eacute;c&eacute;dentes.</para>
+ </sect3>
+
+ <sect3>
+ <title>Version 2.2.0 and ult&eacute;rieures</title>
+
+ <para>Entre les versions 2.1.7 et 2.2.0 la cible
+ &ldquo;reinstall&rdquo; a &eacute;t&eacute; introduite. Vous pouvez utiliser
+ la m&eacute;thode d&eacute;crite ci-dessus pour
+ la version 2.1.7, en rempla&ccedil;ant &ldquo;install&rdquo; par
+ &ldquo;reinstall&rdquo;.</para>
+
+ <para>Cela <emphasis>ne demande plus</emphasis> de droits d'&eacute;criture
+ sur le r&eacute;pertoire <filename>/usr/src</filename> du serveur NFS.</para>
+ <note>
+ <para>Un bogue est apparu avec cette cible entre les versions
+ 1.68 et 1.107 du <filename>Makefile</filename>, qui impliquait
+ qu'il <emphasis>fallait</emphasis>
+ avoir les droits d'&eacute;criture. Ce bogue a &eacute;t&eacute; corrig&eacute; avant la
+ diffusion de la version 2.2.0 de FreeBSD, mais peut encore poser
+ probl&egrave;me si vous avez un vieux serveur sous -stable de cette
+ &eacute;poque.</para>
+ </note>
+ </sect3>
+
+ <sect3>
+ <title>Version 2.2.5 et ult&eacute;rieure</title>
+
+ <para>Comme d&eacute;crit plus haut, les cibles &ldquo;buildworld&rdquo; et
+ &ldquo;installworld&rdquo; peuvent &ecirc;tre employ&eacute;es pour recompiler
+ sur une machine, puis monter par NFS
+ <filename>/usr/src</filename> et <filename>/usr/obj</filename> sur
+ la machine distante et y installer le nouveau syst&egrave;me.</para>
+ </sect3>
+ </sect2>
+
+ <sect2>
+ <title>Comment puis-je acc&eacute;l&eacute;rer <command>make world</command>?</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>Passez en mode mono-utilisateur.</para>
+ </listitem>
+
+ <listitem>
+ <para>Mettez les r&eacute;pertoires <filename>/usr/src</filename> et
+ <filename>/usr/obj</filename> sur des syst&egrave;mes de fichiers
+ et des disques diff&eacute;rents. Si possible, installez ces disques
+ sur des contr&ocirc;leurs diff&eacute;rents.</para>
+ </listitem>
+
+ <listitem>
+ <para>Mieux encore, mettez ces syst&egrave;mes de fichiers sur
+ plusieurs disques et utilisez &ldquo;ccd&rdquo;
+ ("concatenated disk driver" = pilote de disques concat&eacute;n&eacute;s).</para>
+ </listitem>
+
+ <listitem>
+ <para>Ne compilez pas les biblioth&egrave;ques profil&eacute;es
+ (mettez &ldquo;NOPROFILE=true&rdquo; dans
+ <filename>/etc/make.conf</filename>). Vous n'en avez certainement
+ pas besoin.</para>
+ </listitem>
+
+ <listitem>
+ <para>Dans <filename>/etc/make.conf</filename>, positionnez aussi
+ &ldquo;CFLAGS&rdquo; &agrave; quelque chose comme &ldquo;-O -pipe&rdquo;.
+ L'optimisation &ldquo;-O2&rdquo; est bien plus lente, et la
+ diff&eacute;rence d'optimisation entre &ldquo;-O&rdquo; et
+ &ldquo;-O2&rdquo; est en g&eacute;n&eacute;ral n&eacute;gligeable. &ldquo;-pipe&rdquo;
+ dit au compilateur d'utiliser des tuyaux (&ldquo;pipes&rdquo;)
+ &agrave; la place de fichiers, ce qui &eacute;conomise des acc&egrave;s disque
+ (mais utilise plus de m&eacute;moire).</para>
+ </listitem>
+
+ <listitem>
+ <para>Donnez l'option <option>-j&lt;n&gt;</option> au compilateur
+ (Si vous avez une version suffisamment r&eacute;cente de FreeBSD)
+ pour ex&eacute;cuter plusieurs programmes en parall&egrave;le. Cela am&eacute;liore
+ les choses, que vous ayez une machine mono- ou
+ multi-processeurs. </para>
+ </listitem>
+
+ <listitem><para>Le syst&egrave;me de fichiers qui contient
+ <filename>/usr/src</filename> peut &ecirc;tre mont&eacute; (ou remont&eacute;) avec l'option
+ &ldquo;noatime&rdquo;. De cette mani&egrave;re, les dates de dernier acc&egrave;s
+ aux fichiers ne sont pas enregistr&eacute;es sur disque. Vous n'avez de toute
+ fa&ccedil;on probablement pas besoin de cette information.
+
+ <note>
+ <para>&ldquo;noatime&rdquo; existe &agrave; partir de la version
+ 2.2.0.</para>
+ </note>
+
+ <informalexample>
+ <screen><prompt/#/ <userinput>mount -u -o noatime /usr/src</userinput></screen>
+ </informalexample>
+
+ <note>
+ <para>Cet exemple suppose que <filename>/usr/src</filename>
+ constitue &agrave; lui seul un syst&egrave;me de fichiers. Si ce n'est
+ pas le cas (s'il fait partie de
+ <filename>/usr</filename> par exemple) vous devez indiquez
+ le point de montage de ce syst&egrave;me de fichiers, et non
+ <filename>/usr/src</filename>.</para>
+ </note></para>
+ </listitem>
+
+ <listitem><para>Le syst&egrave;me de fichiers o&ugrave; se trouve
+ <filename>/usr/obj</filename>
+ peut &ecirc;tre mont&eacute; (ou remont&eacute;) avec l'option &ldquo;async&rdquo;.
+ Les &eacute;critures sur disque se font alors de fa&ccedil;on asynchrone. En
+ d'autres termes, le programme reprend imm&eacute;diatement la main,
+ mais l'&eacute;criture se fait quelques secondes apr&egrave;s. Les acc&egrave;s
+ disque sont ainsi group&eacute;s, et le gain en performances est
+ spectaculaire.</para>
+
+ <note>
+ <para>Rappelez-vous que cette option rend votre syst&egrave;me de
+ fichiers plus fragile. Avec cette option, les risques sont accrus
+ qu'en cas de coupure d'alimentation, le syst&egrave;me de fichiers soit
+ irr&eacute;cup&eacute;rable quand la machine red&eacute;marrera.</para>
+
+ <para>S'il n'y a que <filename>/usr/obj</filename> sur ce syst&egrave;me
+ de fichiers, ce n'est pas un probl&egrave;me. S'il contient des
+ informations
+ plus sensibles, assurez-vous que vos sauvegardes soient &agrave; jour
+ avant d'activer cette option.</para>
+ </note>
+
+ <para><informalexample>
+ <screen><prompt/#/ <userinput>mount -u -o async /usr/obj</userinput></screen>
+ </informalexample>
+
+ <note>
+ <para>Comme auparavant, si <filename>/usr/obj</filename> ne
+ constitue pas un syst&egrave;me de fichiers en soit,
+ remplacez-le dans l'exemple par le nom du point
+ de montage qui convient.</para>
+ </note></para>
+ </listitem>
+ </itemizedlist>
+ </sect2>
+ </sect1>
+
+ <sect1 id="translations">
+ <title>Traductions</title>
+
+ <sect2>
+ <title>Document original</title>
+ <para>L'original de ce document se trouve sur
+ <ulink url="http://www.nothing-going-on.demon.co.uk/FreeBSD/make-world/make-world.html">http://www.nothing-going-on.demon.co.uk/FreeBSD/make-world/make-world.html</ulink>.</para>
+ </sect2>
+ <sect2>
+ <title>Japonais</title>
+
+ <para>MAEKAWA Masahide a traduit ce document en
+ Japonais. Sa traduction est disponible &agrave; l'adresse <ulink
+ url="http://www.rr.iij4u.or.jp/~bishop/FreeBSD/mw.html">http://www.rr.iij4u.or.jp/~bishop/FreeBSD/mw.html</ulink>.</para>
+ </sect2>
+ </sect1>
+
+ <sect1 id="contributors">
+ <title>Contributions</title>
+
+ <para>Les personnes suivantes ont contribu&eacute; d'une fa&ccedil;on ou d'une autre &agrave; la
+ r&eacute;daction de ce document. Soit directement en sugg&eacute;rant des modifications
+ ou des am&eacute;liorations ou en signalant des erreurs, soit par leurs messages
+ sur les listes de diffusion de FreeBSD, o&ugrave; j'ai puis&eacute; sans scrupule de
+ l'information. Mes remerciements &agrave; tous.</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>Antonio Bemfica, <ulink url="mailto:bemfica@militzer.me.tuns.ca">bemfica@militzer.me.tuns.ca</ulink></para>
+ </listitem>
+
+ <listitem>
+ <para>Sue Blake, <ulink url="mailto:sue@welearn.com.au">sue@welearn.com.au</ulink></para>
+ </listitem>
+
+ <listitem>
+ <para>Brian Haskin, <ulink url="mailto:haskin@ptway.com">haskin@ptway.com</ulink></para>
+ </listitem>
+ <listitem>
+ <para>Kees Jan Koster, <ulink url="mailto:kjk1@ukc.ac.uk">kjk1@ukc.ac.uk</ulink></para>
+ </listitem>
+
+ <listitem>
+ <para>A Joseph Kosy, <ulink url="mailto:koshy@india.hp.com">koshy@india.hp.com</ulink></para>
+ </listitem>
+
+ <listitem>
+ <para>Greg Lehey, <ulink url="mailto:grog@lemis.com">grog@lemis.com</ulink></para>
+ </listitem>
+
+ <listitem>
+ <para>Wes Peters, <ulink
+ url="mailto:softweyr@xmission.com">softweyr@xmission.com</ulink></para>
+ </listitem>
+
+ <listitem>
+ <para>Joseph Stein, <ulink url="mailto:joes@wstein.com">joes@wstein.com</ulink></para>
+ </listitem>
+
+ <listitem>
+ <para>Studded, <ulink url="mailto:studded@dal.net">studded@dal.net</ulink></para>
+ </listitem>
+
+ <listitem>
+ <para>Axel Thimm <ulink url="mailto:Axel.Thimm@physik.fu-berlin.de">Axel.Thimm@physik.fu-berlin.de</ulink></para>
+ </listitem>
+
+ <listitem>
+ <para>Matthew Thyer <ulink url="mailto:Matthew.Thyer@dsto.defence.gov.au">Matthew.Thyer@dsto.defence.gov.au</ulink></para>
+ </listitem>
+ </itemizedlist>
+ </sect1>
+</article>
diff --git a/fr_FR.ISO8859-1/articles/mh/Makefile b/fr_FR.ISO8859-1/articles/mh/Makefile
new file mode 100644
index 0000000000..72c1d9b8c9
--- /dev/null
+++ b/fr_FR.ISO8859-1/articles/mh/Makefile
@@ -0,0 +1,20 @@
+#
+# The FreeBSD Documentation Project
+# The FreeBSD French Documentation Project
+#
+# $FreeBSD$
+# Original revision: 1.4
+#
+
+DOC?= article
+
+FORMATS?= html
+
+INSTALL_COMPRESSED?=gz
+INSTALL_ONLY_COMPRESSED?=
+
+SRCS= article.sgml
+
+DOC_PREFIX?= ${.CURDIR}/../../..
+
+.include "${DOC_PREFIX}/share/mk/doc.project.mk"
diff --git a/fr_FR.ISO8859-1/articles/mh/article.sgml b/fr_FR.ISO8859-1/articles/mh/article.sgml
new file mode 100644
index 0000000000..26763e00a3
--- /dev/null
+++ b/fr_FR.ISO8859-1/articles/mh/article.sgml
@@ -0,0 +1,744 @@
+<!--
+ The FreeBSD Documentation Project
+ The FreeBSD French Documentation Project
+
+ $FreeBSD$
+ Original revision: 1.2
+-->
+
+<!DOCTYPE ARTICLE PUBLIC "-//FreeBSD//DTD DocBook V3.1-Based Extension//EN" [
+<!ENTITY % man PUBLIC "-//FreeBSD//ENTITIES DocBook Manual Page Entities//EN"> %man;
+<!ENTITY % urls PUBLIC "-//FreeBSD//ENTITIES Common Document URL Entities//FR"> %urls;
+<!ENTITY % abstract PUBLIC "-//FreeBSD//ENTITIES DocBook Abstract Entities//FR"> %abstract;
+<!ENTITY % artheader PUBLIC "-//FreeBSD//ENTITIES DocBook ArtHeader Entities//FR"> %artheader;
+<!ENTITY % translators PUBLIC "-//FreeBSD//ENTITIES DocBook Translator Entities//FR"> %translators;
+
+<!ENTITY % authors SYSTEM "../../../en_US.ISO_8859-1/books/handbook/authors.ent"> %authors;
+<!ENTITY % mailing-lists SYSTEM "../../books/handbook/mailing-lists.ent"> %mailing-lists;
+ <!ENTITY rel.current CDATA "3.2">
+]>
+<article id="mh" LANG="fr">
+ <artheader>
+ <title>Introduction &agrave; MH</title>
+ <authorgroup>
+ <author>
+ <firstname>Matt</firstname>
+ <surname>Midboe</surname>
+ <affiliation>
+ <address><email>matt@garply.com</email></address>
+ </affiliation>
+ </author>
+ </authorgroup>
+ <pubdate>v1.0, 16 Janvier 1996</pubdate>
+ &artheader.copyright;
+ <abstract>
+ <para>Ce document est une introduction sur la fa&ccedil;on d'utiliser MH
+ sous FreeBSD.</para>
+ &abstract.license;
+ &abstract.disclaimer;
+ &trans.a.gioria;
+ </abstract>
+ </artheader>
+ <sect1>
+ <title>Introduction</title>
+ <para>MH d&eacute;buta en 1977 dans la soci&eacute;t&eacute; RAND
+ Corporation, o&ucirc; la philosophie MH fut d&eacute;velopp&eacute;e. MH
+ n'est pas seulement un programme monolithique de courrier
+ &eacute;lectronique mais plut&ocirc;t une philosophie sur la meilleure
+ fa&ccedil;on de d&eacute;velopper des outils permettant de lire son
+ courrier. Les d&eacute;veloppeurs de MH ont fourni un logiciel superbe
+ tout en adh&eacute;rent au concept <acronym>KISS</acronym>&nbsp;:
+ &ldquo;Keep It Simple Stupid&rdquo; (Rester le plus simple
+ possible).</para>
+ <para>Plut&ocirc;t que de disposer d'un seul et complexe logiciel pour
+ lire, envoyer et g&eacute;rer ses courriers &eacute;lectroniques, ils
+ ont &eacute;crit une multitude de petits programmes
+ sp&eacute;cialis&eacute;s. Certains aimeront MH pour cette
+ sp&eacute;cificit&eacute;, d'autres non. Chaque outil de MH effectue une
+ action, et l'effectue tr&egrave;s bien.</para>
+ <para>En plus de tous les outils de gestion des courriers
+ &eacute;lectroniques, chaque outil MH comporte un m&eacute;canisme de
+ configuration uniforme. En fait, si vous ne savez pas vraiment comment
+ marche un outil, ou de quels arguments il dispose, vous vous en sortez
+ g&eacute;n&eacute;ralement tr&egrave;s facilement. Toutes les commandes
+ de MH g&egrave;rent de fa&ccedil;on identique les fichiers de
+ configuration et les arguments de la ligne de commande. La chose la plus
+ importante est de se souvenir que vous pouvez toujours passer l'option
+ <option>-help</option> &agrave; une commande pour afficher toutes les
+ options disponibles.</para>
+ <para>Pour commencer, assurez vous que vous avez install&eacute; les
+ programmes de MH sur votre machine. Si vous disposez d'un CDROM vous
+ devez pouvoir l'installer en ex&eacute;cutant la commande
+ suivante&nbsp;:</para>
+ <informalexample>
+<screen>#<userinput>>pkg_add /cdrom/packages/mh-6.8.3.tgz</userinput></screen>
+ </informalexample>
+ <para>Vous verrez alors la cr&eacute;ation d'un r&eacute;pertoire
+ <filename>/usr/local/lib/mh</filename> ainsi que l'ajout de
+ diff&eacute;rents binaires dans le r&eacute;pertoire
+ <filename>/usr/local/bin</filename>. Si vous pr&eacute;f&eacute;rez le
+ compiler vous m&ecirc;me, vous pouvez t&eacute;l&eacute;charger les
+ sources en ftp anonyme depuis
+ <ulink url="ftp://ftp.ics.uci.edu/">ftp.ics.uci.edu</ulink> ou
+ <ulink url="ftp://louie.udel.edu/">louie.udel.edu</ulink>.</para>
+ <para>Cette introduction n'est pas une explication d&eacute;taill&eacute;e
+ de la fa&ccedil;on de fonctionner de MH. Elle vous permettra juste
+ d&eacute;marrer sur la route de la fa&ccedil;on la plus rapide de lire vos emails. Vous devrez
+surement consulter les pages de manuels des diff&eacute;rentes commandes par
+la suite. De m&ecirc;me il serait bon de lire le <ulink
+URL="http://www.cis.ohio-state.edu/hypertext/faq/usenet/mh-faq/part1/faq.html">FAQ
+sur MH</ulink> et de vous abonnez au forum de discussion <ulink
+URL="news:comp.mail.mh">comp.mail.mh</ulink>. Cependant la meilleur
+ressource sur MH est le livre &eacute;crit par Jerry Peek aux &eacute;ditions
+O'Reilly et Associates.</para>
+</sect1>
+<sect1>
+<title>Lire le courrier</title>
+<para>Ce chapitre explique les commandes <command>inc</command>,
+<command>show</command>, <command>scan</command>, <command>next</command>,
+<command>prev</>, <command>rmm</command>, <command>rmf</command>, and
+<command>msgchk</command>. Le meilleur atout de MH est la consistence de
+l'interface entre les diff&eacute;rents programmes. La chose la plus
+importante &agrave; retenir lorsque l'on utilise les diff&eacute;rentes commandes,
+est la fa&ccedil;on de sp&eacute;cifier une liste de messages. Dans le cas de la
+commande <command>inc</command> cela n'a aucun sens mais avec des commandes
+comme <command>show</command> c'est plus qu'utile.</para>
+
+<para>Une liste de messages consiste en quelque chose comme <parameter>23 20
+16</parameter>, qui corresponds aux messages 23, 20 et 16. C'est vraiment tr&egrave;s
+simple, mais vous pouvez avoir des choses plus utiles comme
+<parameter>23-30</parameter> correspondant &agrave; tous les messages entre le message
+23 et le message 30. Vous pouvez aussi sp&eacute;cifier <parameter>cur:10</parameter>,
+qui correspond au message courant et aux 9 messages suivants. Les
+messages <parameter>cur</parameter><parameter>last</parameter>, et <parameter>first</parameter>
+sont des messages sp&eacute;ciaux ref&eacute;rant au message courant, dernier
+message, et premier message du dossier.</para>
+
+<sect2 id="inc">
+<title><command>inc</command>, <command>msgchk</command>&mdash;lire ou v&eacute;rifier vos
+messages</title>
+
+<para>Si vous tapez la commande <userinput>inc</userinput> sans arguments, vous
+d&eacute;butez sur la bonne voie pour lire votre courrier avec MH. La
+premi&egrave;re fois ou vous utilisez <command>inc</command>, il configurera votre
+compte pour utilisez toutes les valeurs par d&eacute;faut de MH et vous
+demandera la cr&eacute;ation d'un r&eacute;pertoire Mail. Si vous avez des messages
+et attente de t&eacute;l&eacute;chargement, vous verrez quelque chose qui peut
+ressembler &agrave; ceci:
+<informalexample>
+<screen> 29 01/15 Doug White Re: Another Failed to boot problem&lt;&lt;On Mon, 15 J
+ 30 01/16 "Jordan K. Hubbar Re: FBSD 2.1&lt;&lt;&gt; Do you want a library instead of
+ 31 01/16 Bruce Evans Re: location of bad144 table&lt;&lt;&gt;&gt; &gt;It would appea
+ 32 01/16 "Jordan K. Hubbar Re: video is up&lt;&lt;&gt; Anyway, mrouted won't run, ev
+ 33 01/16 Michael Smith Re: FBSD 2.1&lt;&lt;Nate Williams stands accused of sa</screen>
+</informalexample>
+Vous obtenez la m&ecirc;me vue que si vous utilisiez la commande <command>scan</command> (voir
+<xref linkend="scan">). Si vous lancez <command>inc</command> sans arguments
+, cela vous affiche juste le courrier qui vous est destin&eacute;.</para>
+
+<para>Enorm&eacute;ment de personnes utilisent le protocole POP pour lire
+leur mail. MH sait utiliser le protocole POP pour rapatrier les emails
+sur votre poste. Vous devez passer plusieurs arguments &agrave;
+<command>inc</command> pour cela.
+<informalexample>
+<screen>tempest% <userinput>inc -host mail.pop.org -user <replaceable>NomUtilisateur</replaceable> -norpop</userinput></screen>
+</informalexample>
+Cela invoque la commande <command>inc</command> en lui disant d'aller
+t&eacute;l&eacute;charger le courrier sur le serveur <parameter>mail.pop.org</parameter>,
+avec comme nom d'utilisateur <replaceable>NomUtilisateur</replaceable>. L'option
+<option>-norpop</option> demande &agrave; la commande <command>inc</command> de
+t&eacute;l&eacute;charger le courrier en clair suivant le protocole POP3. MH
+supporte plusieurs variantes du protocole POP3. Vous n'utiliserez pas
+dans la plupart des cas les autres variantes. Vous pouvez effectuer
+des taches plus complexes avec <command>inc</command> comme, auditer des
+fichiers ou parcourir des fichiers formatt&eacute;s
+</para>
+<para>La commande <command>msgchk</command> vous permet de savoir si
+vous avez ou non de nouveaux messages dans votre
+boite.<command>msgchk</command> accepte les m&ecirc;mes options
+,<option>-host</option> et <option>-user</option>, que la commande
+<command>inc</command>.</para>
+</sect2>
+<sect2 id="show">
+<title><command>show</command>, <command>next</command> et <command>prev</command>&mdash;afficher un message et se d&eacute;placer dans une boite.</title>
+<para><command>show</command> vous permet de visualiser un courrier de votre boite. Comme <command>inc</command>,<command>show</command> est une commande assez franche.Si vous tapez <userinput>show</userinput> sans param&egrave;tres elle affiche le message courant. Vous pouvez aussi demander l'affichage de messages particuliers en donnant son num&eacute;ro &agrave; <command>show</command>:
+<informalexample>
+<screen>tempest% <userinput>show 32 45 56</></screen>
+</informalexample>
+Cela affichera les fichiers num&eacute;ros 32 45 56 &agrave; la suite l'un de
+l'autre. Si vous changez rien &agrave; la configuration par d&eacute;faut,
+<command>show</command> ne fera rien d'autre qu'un
+<command>more</command> sur le fichier contenant votre message.</para>
+
+<para><command>next</command> s'utilise pour se d&eacute;placer au message
+suivant et <command>prev</command> pour revenir au message
+pr&eacute;cedent. Ces deux commandes executent automatiquement un
+<command>show</command> ce qui vous permet de lire automatiquement le
+message suivant ou pr&eacute;c&eacute;dant.</para>
+</sect2>
+
+<sect2 id="scan">
+<title><command>scan</command>&mdash;Afficher un r&eacute;sum&eacute; de vos
+messages</title>
+<para><command>scan</command> affiche un bref descriptif de tous les
+messages de votre r&eacute;pertoire courant. Voici un exemple d'affichage de
+la commande <command>show</command>:
+<informalexample>
+<screen> 30+ 01/16 "Jordan K. Hubbar Re: FBSD 2.1&lt;&lt;&gt; Do you want a library instead of
+ 31 01/16 Bruce Evans Re: location of bad144 table&lt;&lt;&gt;&gt; &gt;It would appea
+ 32 01/16 "Jordan K. Hubbar Re: video is up&lt;&lt;&gt; Anyway, mrouted won't run, ev
+ 33 01/16 Michael Smith Re: FBSD 2.1&lt;&lt;Nate Williams stands accused of sa</screen>
+</informalexample>
+Comme tout dans MH, l'affichage est compl&egrave;tement configurable. Ce qui
+est fournit dans l'exemple ci-dessus est l'affichage par d&eacute;faut. Il
+vous permet de visualiser le num&eacute;ro du message, la date d'envoi,
+l'envoyeur, le sujet et une partie du d&eacute;but du message. Le caract&egrave;re
+<literal>+</literal> vous indique le message courant donc si vous
+tapez la commande <command>show</command> vous visualiserez ce
+message.</para>
+<para>Une option tr&egrave;s utile de <command>scan</command> est l'option
+<option>-reverse</option>. Cette option permet de lister l'ensemble de
+vos messages en affichant en premier le message ayant le num&eacute;ro le
+plus &eacute;lev&eacute;. Une autre option tr&egrave;s interessante de
+<command>scan</command> lui permet de lire les donn&eacute;es depuis un
+fichier. Si vous d&eacute;sirez parcourir votre boite aux lettres de courrier
+entrant sans avoir &agrave; lancer la commande <command>inc</command>, il
+vous suffit de faire <command>scan -file
+/var/mail/<replaceable>nom_d_utilisateur</replaceable></command>. Cela
+peut etre fait sur n'importe quel fichier au format
+<database>mbox</database>.</para>
+</sect2>
+
+<sect2 id="rmm">
+<title><command>rmm</command> et <command>rmf</command>&mdash; Effacer
+le message courant ou le dossier</title>
+
+<para><command>rmm</command> est utilis&eacute; pour effacer un message. Par
+d&eacute;faut le message n'est pas vraiment d&eacute;truit mais renomm&eacute; en un
+fichier dont le nom est ignor&eacute; par les commandes de MH. Vous devrez
+effacer physiquement de fa&ccedil;on p&eacute;riodique les messages
+&ldquo;effac&eacute;s&rdquo;.</para>
+<para>La commande <command>rmf</command> permet d'effacer un
+dossier. Cela ne renomme pas les fichiers mais les efface du disque
+dur, vous devez donc faire extr&egrave;mement attention lorsque vous
+l'utilisez.</para>
+</sect2>
+<sect2 id="samplereading">
+<title>Un session typique de lecture avec MH</title>
+<para>La premi&egrave;re chose que vous ferez sera de lancer la commande
+<command>inc</command>. Donc sous l'interpr&eacute;teur de commandes tapez
+<command>inc</command> et la touche <keycap>entr&eacute;e</keycap>.
+<informalexample>
+<screen>tempest% <userinput>inc</userinput>
+Incorporating new mail into inbox...
+
+ 36+ 01/19 "Stephen L. Lange Request...&lt;&lt;Please remove me as contact for pind
+ 37 01/19 Matt Thomas Re: kern/950: Two PCI bridge chips fail (multipl
+ 38 01/19 "Amancio Hasty Jr Re: FreeBSD and VAT&lt;&lt;&gt;&gt;&gt; Bill Fenner said: &gt; In
+tempest%</screen>
+</informalexample>
+Cela vous permet de visualiser les nouveaux messages rapatri&eacute;s dans
+votre boite aux lettres. La commande suivante a &eacute;x&eacute;cuter est
+<command>show</command> pour vous permettre de les visualiser et de
+vous d&eacute;placer dans votre liste de messages.
+<informalexample>
+<screen>tempest% <userinput>show</>
+Received: by sashimi.wwa.com (Smail3.1.29.1 #2)
+ id m0tdMZ2-001W2UC; Fri, 19 Jan 96 13:33 CST
+Date: Fri, 19 Jan 1996 13:33:31 -0600 (CST)
+From: "Stephen L. Lange" &lt;stvlange@wwa.com&gt;
+To: matt@garply.com
+Subject: Request...
+Message-Id: &lt;Pine.BSD.3.91.960119133211.824A-100000@sashimi.wwa.com&gt;
+Mime-Version: 1.0
+Content-Type: TEXT/PLAIN; charset=US-ASCII
+
+
+Please remove me as contact for pindat.com
+
+tempest% <userinput>rmm</>
+tempest% <userinput>next</>
+Received: from localhost (localhost [127.0.0.1]) by whydos.lkg.dec.com (8.6.11/8
+.6.9) with SMTP id RAA24416; Fri, 19 Jan 1996 17:56:48 GMT
+Message-Id: &lt;199601191756.RAA24416@whydos.lkg.dec.com&gt;
+X-Authentication-Warning: whydos.lkg.dec.com: Host localhost didn't use HELO pro
+tocol
+To: hsu@clinet.fi
+Cc: hackers@FreeBSD.org
+Subject: Re: kern/950: Two PCI bridge chips fail (multiple multiport ethernet
+ boards)
+In-Reply-To: Your message of "Fri, 19 Jan 1996 00:18:36 +0100."
+ &lt;199601182318.AA11772@Sysiphos&gt;
+X-Mailer: exmh version 1.5omega 10/6/94
+Date: Fri, 19 Jan 1996 17:56:40 +0000
+From: Matt Thomas &lt;matt@lkg.dec.com&gt;
+Sender: owner-hackers@FreeBSD.org
+Precedence: bulk
+
+
+This is due to a typo in pcireg.h (to
+which I am probably the guilty party).</screen>
+</informalexample></para>
+<para>La commande <command>rmm</command> efface le message courant et
+la commande <command>next</command> permet de d&eacute;placer le num&eacute;ro du
+message courant au message suivant. Maintenant vous d&eacute;sirez visualiser les
+dix courriers les plus r&eacute;cents, pour choisir lequel vous d&eacute;sirez lire:
+<informalexample>
+<screen>tempest% <userinput>scan last:10</>
+ 26 01/16 maddy Re: Testing some stuff&lt;&lt;yeah, well, Trinity has
+ 27 01/17 Automatic digest NET-HAPPENINGS Digest - 16 Jan 1996 to 17 Jan 19
+ 28 01/17 Evans A Criswell Re: Hey dude&lt;&lt;&gt;From matt@tempest.garply.com Tue
+ 29 01/16 Karl Heuer need configure/make volunteers&lt;&lt;The FSF is looki
+ 30 01/18 Paul Stephanouk Re: [alt.religion.scientology] Raw Meat (humor)&lt;
+ 31 01/18 Bill Lenherr Re: Linux NIS Solaris&lt;&lt;--- On Thu, 18 Jan 1996 1
+ 34 01/19 John Fieber Re: Stuff for the email section?&lt;&lt;On Fri, 19 Jan
+ 35 01/19 support@foo.garpl [garply.com #1138] parlor&lt;&lt;Hello. This is the Ne
+ 37+ 01/19 Matt Thomas Re: kern/950: Two PCI bridge chips fail (multipl
+ 38 01/19 "Amancio Hasty Jr Re: FreeBSD and VAT&lt;&lt;&gt;&gt;&gt; Bill Fenner said: &gt; In
+tempest%</screen>
+</informalexample>
+Maintenant vous voulez lire le message num&eacute;ro 27, donc vous
+tapez<userinput>show 27</userinput> et il s'affiche. Comme vous pouvez
+le voir apr&egrave;s ce court exemple MH est tr&egrave;s simple &agrave; utiliser pour
+visualiser et lire votre courrier et est de plus tr&egrave;s intuitif.
+</para>
+</sect2>
+</sect1>
+
+
+<sect1>
+<title>Chercher parmis les messages et les dossiers</title>
+
+<para>Toute personne qui a beaucoup de mails aime &agrave; pouvoir mettre des
+priorit&eacute;s, marquer les messages, les num&eacute;roter de diff&eacute;rentes
+fa&ccedil;ons. MH permet de faire toutes ces taches de fa&ccedil;ons tr&egrave;s simple
+comme d'habitude. Une chose dont nous n'avons pas encore parl&eacute; est le
+concept de dossier. Vous avez surement utilis&eacute; le concept de dossier
+avec d'autres programmes de lecture de courrier &eacute;l&eacute;ctronique. MH a
+aussi des dossiers. MH peut aussi avoir des sous-dossiers de
+dossiers. Un chose que vous devez avoir &agrave; l'esprit quand vous utilisez
+la commande <command>inc</command>, pour la premi&egrave;re fois, est qu'elle
+demande si vous voulez cr&eacute;er le r&eacute;pertoire <filename>Mail</filename>,
+et qu'elle enregistre tout dans ce r&eacute;pertoire. Si vous regardez ce
+qu'il se trouve dans ce r&eacute;pertoire, vous verrez un r&eacute;pertoire
+<filename>inbox</filename>. Ce r&eacute;pertoire comporte tous vos nouveaux
+messages qui n'ont pas encore &eacute;t&eacute; d&eacute;plac&eacute;s dans un autre
+dossier.</para>
+
+<para>Lorsque vous cr&eacute;ez un nouveau dossier, un r&eacute;pertoire est cr&eacute;e
+sous votre r&eacute;pertoire <filename>Mail</filename> et les messages &agrave;
+destination de se dossier sont stock&eacute;s dans ce r&eacute;pertoire. Lorsque un
+nouveau message arrive, il est d&eacute;pos&eacute; dans votre r&eacute;pertoire
+<filename>inbox</filename> avec comme nom le num&eacute;ro du message. Donc
+m&ecirc;me si vous n'avez pas les outils MH pour lire votre courrier,
+vous pouvez utiliser les commandes standards UNIX pour vous d&eacute;placer
+parmis les dossiers et visualiser vos messages. C'est cette simplicit&eacute;
+qui vous donne autant de puissance dans le traitement de vos
+messages.</para>
+
+<para>De la meme fa&ccedil;on ou vous pouvez utiliser une liste de messages,
+comme <parameter>23 16 42</parameter>, avec la plupart des commandes
+MH; il y a une option utilisable avec toutes les commandes MH vous
+permettant de travailler dans le dossier sp&eacute;cifi&eacute;. Si vous essayer
+<command>scan +freebsd</command>, vous allez parcourir le dossier
+<filename>freebsd</filename>. Si vous faites un <command>show +freebsd
+23 16 42</command>, la commande <command>show</command> affichera les
+messages 23, 26 et 42 du dossier <filename>freebsd</filename>. Donc
+souvenez vous que la syntaxe
+<option>+<replaceable>dossier</replaceable></option>. Vous en aurez besoin pour
+lancer les commandes dans les diff&eacute;rents dossiers. Souvenez vous aussi
+que votre dossier de courrier entrant par d&eacute;faut est
+<filename>inbox</filename>, donc en faisant un <command>folder
++inbox</command> vous aurez la liste de vos nouveaux messages. Bien
+sur grace &agrave; la flexibilit&eacute; de MH, vous pourriez changer ce dossier,
+mais il y a peu d'interet &agrave; le faire.</para>
+
+<sect2>
+<title><command>pick</command>&mdash; recherche par crit&egrave;res dans les
+messages</title>
+<para><command>pick</command> est une des commandes les plus
+compliqu&eacute;es de MH. Je ne saurais pas mieux vous conseiller que d'aller
+voir la page de manuel de
+<citerefentry><refentrytitle>pick</refentrytitle><manvolnum>1</manvolnum></citerefentry>
+pour bien la comprendre. La plus simple fa&ccedil;on de s'en servir est la
+suivante:
+<informalexample>
+<screen>tempest% <userinput>pick -search pci</userinput>
+15
+42
+55
+56
+57</screen>
+</informalexample>
+Cela vous permet de trouver les num&eacute;ros de tous les messages
+comprenant le mot <literal>pci</literal> dans une des lignes du
+message. Vous pouvez ensuite lancer la commande
+<command>show</command> sur ces messages pour les lire ou
+<command>rmm</command> pour les effacer. Vous devrez bien sur lancer
+la commande suivante <command>show 15 42 55-57</command> pour les voir
+tous. Une fa&ccedil;on un peu plus compliqu&eacute;e d'utiliser
+<command>pick</command> serait la suivante:
+<informalexample>
+<screen>tempest% <userinput>pick -search pci -seq pick</userinput>
+5 hits
+tempest% <userinput>show pick</userinput></screen>
+</informalexample>
+Cela vous permet de voir les memes messages que pr&eacute;c&eacute;demment sans vous
+fatiguer. L'option <option>-seq</option> n'est rien de plus qu'une
+abr&eacute;viation de l'option<option>-sequence</option> et la commande
+<command>pick</command> n'est rien de plus qu'une sequence comportant
+les num&eacute;ros des messages v&eacute;rifiant le crit&egrave;re. Vous pouvez aussi
+utiliser la commande <command>rmm pick</command> pour effacer tous les
+messages qui r&eacute;pondent au crit&egrave;re. Le nom de la sequence n'est pas
+signifiant. Si vous relancez la commande <command>pick</command> de
+nouveau, l'ancienne s&eacute;quence sera effac&eacute;e si vous utilisez le meme
+nom.</para>
+
+<para>Si vous n'utilisiez que la commande <command>pick
+-search</command>, cela peut prendre plus de temps que de chercher un
+message entre un destinataire et un envoyeur. La commande
+<command>pick</command> dispose donc de certains crit&egrave;res pr&eacute;d&eacute;finis:
+<variablelist>
+
+<varlistentry>
+<term><option>-to</option></term>
+<listitem>
+<para>recherche sur le destinataire</para>
+</listitem>
+</varlistentry>
+
+
+<varlistentry>
+<term><option>-cc</option></term>
+<listitem>
+<para>recherche dans le champ cc du message</para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term><option>-from</option></term>
+<listitem>
+<para>recherche sur l'exp&eacute;diteur du message</para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term><option>-subject</option></term>
+<listitem>
+<para>recherche dans le sujet du message</para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term><option>-date</option></term>
+<listitem>
+<para>recherche par rapport &agrave; la date du message</para>
+</listitem>
+</varlistentry>
+
+
+<varlistentry>
+<term><option>--<replaceable>component</replaceable></option></term>
+<listitem>
+<para>recherche sur un quelconque autre entete. (ex:
+<option>--reply-to</option> pour rechercher dans les entetes reply-to
+des messages)</para>
+</listitem>
+</varlistentry></variablelist></para>
+
+<para>Cela permet d'avoir des requetes de ce type:
+<informalexample>
+<screen>tempest% <userinput>pick -to freebsd-hackers@freebsd.org -seq hackers</userinput></screen>
+</informalexample>
+pour avoir tous les messages envoy&eacute;s &agrave; la liste de diffusion hackers
+de FreeBSD. <command>pick</command> vous permet de grouper de
+diff&eacute;rentes fa&ccedil;on en fonctiondu crit&egrave;re.
+<itemizedlist>
+
+<listitem>
+<para>&hellip; <option>-and</option> &hellip;</para>
+</listitem>
+
+<listitem>
+<para>&hellip; <option>-or</option> &hellip</para>
+</listitem>
+
+<listitem>
+<para><option>-not</option> &hellip;</para>
+</listitem>
+
+<listitem>
+<para><option>-lbrace</option> &hellip; <option>-rbrace</option></para>
+</listitem>
+</itemizedlist>
+Ces options permettent de faire des choses comme ceci:
+<informalexample>
+<screen>tempest% <userinput>pick -to freebsd-hackers -and -cc freebsd-hackers</userinput></screen>
+</informalexample>
+Cela vous permet de retrouver tous les messages envoy&eacute;s &agrave; la liste
+freebsd-hackers ou mis en copie &agrave; cette liste. Les options <option>lbrace</option> et
+<option>rbrace</option> vous permettent de grouper les crit&egrave;res ensemble. Cela peut
+etre util dans certaines situations, comme dans l'exemple suivant:
+<informalexample>
+<screen>tempest% <userinput>pick -lbrace -to freebsd-hackers -and
+ -not -cc freebsd-questions -rbrace -and -subject pci</></screen>
+</informalexample></para>
+
+<para>Cet exemple vous permet d'extraire tous les mails destin&eacute;s &agrave; <quote>la
+liste freebsd-hackers (mais qui ne sont pas mis en copie pour la liste
+freebsd-questions) et dont le sujet est pci</quote>. Normalement vous
+vous poseriez la question; mais quelle est la pr&eacute;c&eacute;dence des
+op&eacute;rateurs ? Vous vous rappelez qu'en math&eacute;matiques les expressions
+sont &eacute;valu&eacute;es de gauche &agrave; droite et que la multiplication et la
+division ont plus de poids que les additions et les soustractions. MH
+utilise les memes r&egrave;gles pour la commande <command>pick</command>. Les
+combinaisons peuvent etre tr&egrave;s complexes, donc lisez la page de manuel
+pour plus d'informations. Ce document est juste la pour vous aider &agrave;
+d&eacute;couvrir MH.</para>
+</sect2>
+
+<sect2>
+<title><command>folder</command>, <command>folders</command>,
+<command>refile</command>&mdash; trois programmes utiles pour g&eacute;rer vos
+dossiers.</title>
+
+<para>Il y a trois programmes vous permettant de g&eacute;rer de fa&ccedil;on
+primitive vos dossiers. Le programme <command>folder</command> est
+utilis&eacute; pour changer de dossiers, lister leur contenu. Vous pouvez
+lancer la commande <command>folder
++<replaceable>dossier2</replaceable></command> et automatiquement,
+vous vous retrouverez dans le dossier
+<replaceable>dossier2</replaceable>. Alors toutes les commandes MH,
+telles que
+<command>comp</command>,<command>repl</command>,<command>scan</command>,
+et <command>show</command> utiliserons le dossier <filename>dossier2</filename>.</para>
+
+<para>Quelques fois lorsque vous lisez et effacez dans messages vous
+avez des <quote>discontinuit&eacute;es</quote> dans vos dossiers. Si vous faites un
+<command>scan</command> vous pouvez voir les messages 34, 35, 36, 43,
+55, 56, 57, 80. Si vous faites un <command>folder -pack</command>,
+cela vous permet de renum&eacute;roter tous vos messages, et vous n'aurez
+plus de disccontinuit&eacute;es. Cela n'efface aucun message. Vous devez donc
+p&eacute;riodiquement faire des <command>rmm</command> sur vos
+messages.</para>
+
+<para>Si vous desirez des statistiques sur vos dossiers, vous pouvez
+faire des <command>folders</command> ou des <command>folder
+-all</command> pour obtenir la liste de vos dossiers, combien de
+messages comporte chaque dossier et quel est le message courant dans
+chacun. La ligne de statistique affich&eacute;e est la meme que celle que
+vous avez lorsque vous changez de dossier avec la commande
+<command>folder +dossier2</>. Un exemple de la commande
+<command>folders</command> pourrait etre:
+<informalexample>
+<screen> Folder # of messages ( range ); cur msg (other files)
+ announce has 1 message ( 1- 1).
+ drafts has no messages.
+ f-hackers has 43 messages ( 1- 43).
+ f-questions has 16 messages ( 1- 16).
+ inbox+ has 35 messages ( 1- 38); cur= 37.
+ lists has 8 messages ( 1- 8).
+ netfuture has 1 message ( 1- 1).
+ out has 31 messages ( 1- 31).
+ personal has 6 messages ( 1- 6).
+ todo has 58 messages ( 1- 58); cur= 1.
+
+ TOTAL= 199 messages in 13 folders.
+</screen>
+</informalexample></para>
+
+<para>La commande <command>refile</command> vous permet de deplacer
+les messages entre les dossiers. Si vous faites un <command>refile 23
++nouveaudossier</command>, le message 23 sera d&eacute;placer dans le dossier
+<filename>nouveaudossier</filename>. Vous pouvez tout aussi bien faire
+un <command>refile 23 +nouveaudossier/sousdossier1</command> qui
+d&eacute;placera le message 23 dans le un sous
+dossier,<filename>sousdossier1</filename>, du dossier
+<filename>nouveaudossier</filename>. Si vous voulez garder un message
+dans le dossier courant tout en le mettant dans un autre, vous devez
+lancer la commande <command>refile -link 23 +nouveaudossier</command>,
+qui gardera le message dans le dossier <filename>inbox</filename> tout
+en le listant dans le dossier
+<filename>nouveaudossier</filename>. Cela vous permet de r&eacute;aliser
+toutes les choses merveilleuses que vous pouvez faire avec MH.</para>
+</sect2>
+</sect1>
+
+<sect1>
+<title>Envoyer des messages</title>
+<para>L'email est pour beaucoup de gens, comme une rue a double sens,
+vous voudrez donc r&eacute;pondre a certains messages. La fa&ccedil;on qu'emploie MH
+pour envoyer des messages peut etre difficile a comprendre au d&eacute;but,
+mais il permet une &eacute;norme flexibilit&eacute;e.La premi&egrave;re chose que fait MH,
+est de copier un "composant" dans votre file de messages sortant. Un
+"composant" est en fait un squelette de message comportant les entetes
+<filename>To:</filename> et <filename>Subject:</filename>. Le syst&egrave;me
+lance ensuite votre &eacute;diteur favori ou vous pouvez remplir les entetes
+et composer le corps du message sous les pointill&eacute;s dans le
+message. Ensuite vous lancez la commande
+<command>whatnow</command>. Et lorsque vous avez le prompt
+<prompt>What now?</prompt>, vous pouvez r&eacute;pondre par une des commandes
+suivante <command>send</command>, <command>list</command>, <command>edit</command>,
+<command>edit</command>, <command>push</command>, and
+<command>quit</command>. La plupart des commandes pr&eacute;c&eacute;dentes
+s'expliquent d'elles meme. Donc le processus d'envoi de message est le
+suivant; copie du fichier "composant", &eacute;dition de votre message, et
+lancement de la commande <command>whatnow</command> en lui indiquant
+quoi faire de votre message.</para>
+
+<sect2>
+<title><command>comp</>, <command>forw</>,
+<command>reply</>&mdash;composer, faire suivre ou r&eacute;pondre &agrave; un
+message</title>
+
+<para>La commande <command>comp</command> comporte quelques options de
+la ligne de commande int&eacute;ressantes. La plus importante est
+<option>-editor</option>.Lorsque vous installez MH, un programme
+appell&eacute; <command>prompter</command> est utiliser comme &eacute;diteur de
+texte par d&eacute;faut. Ce n'est pas un &eacute;diteur tr&egrave;s interessant. Donc
+lorsque vous composez un message, vous utiliserez surement
+<command>comp -editor /usr/bin/vi</command> ou <command>comp -editor
+/usr/local/bin/pico</command> a la place. Apr&egrave;s avoir lancer
+<emphasis>comp</emphasis>, vous vous trouvez dans votre &eacute;diteur de
+texte favori et vous voyez quelque chose qui ressemble &agrave; ceci:
+<informalexample>
+<screen>To:
+cc:
+Subject:
+--------
+</screen>
+</informalexample></para>
+<para>Vous devez ajoutez l'addresse de votre destinataire apres le mot
+<literal>To:</literal>. Vous devez remplir de la meme mani&egrave;re les
+autres entetes, donc vous devez mettre le sujet apr&egrave;s le mot
+<literal>Subject:</literal>. Vous pouvez ensuite ajouter le corps de
+votre message apr&egrave;s les lignes pointill&eacute;es. Cela peut vous sembler un
+peu simpliste par rapport a d'autres programmes de messagerie qui vous
+pose des questions et remplissent automatiquement les diff&eacute;rents
+entete, mais cela vous apporte une excellente flexibilit&eacute;.
+<informalexample>
+<screen>To:<userinput>freebsd-rave@freebsd.org</userinput>
+cc:
+Subject:<userinput>Et le 8&egrave;me jour, Dieu cr&eacute;a le bureau des directeurs de FreeBSD</userinput>
+--------
+<userinput>Ouah, c'est un super syst&egrave;me d'exploitation. Merci !</userinput></screen>
+</informalexample>
+Vous pouvez ensuite, sauvegarder le message et quitter votre
+&eacute;diteur. Vous aurez alors le prompt <prompt>What now?</prompt> et vous
+pourrez taper <userinput>send</userinput> ou <userinput>s</userinput>
+et appuyer sur la touche <keycap>entr&eacute;e</keycap>. Alors l'&eacute;quipe
+principal de d&eacute;veloppemet de FreeBSD recevra votre gratitude. Comme
+mentionn&eacute; pr&eacute;cedemment vous pouvez utiliser une des autres r&eacute;ponse,
+par exemple <command>quit</command> si vous ne voulez pas envoyer ce
+message.</para>
+
+<para>La commande <command>forw</command> s'utilise de fa&ccedil;on
+similaire. La principal diff&eacute;rence est que le message que vous envoyez
+comprends dans son corps le message courant. Lorsque vous utilisez la
+commande <command>forw</command>, vous faites suivre le message
+courant a un autre destinataire. Vous pouvez faire suivre un autre
+message en utilisant de la fa&ccedil;on suivante <command>forw 23</command>
+la commande <command>forw</command>, ainsi le message 23 sera ajoute
+dans le corps du message compos&eacute;. A part ces simples diff&eacute;rences, la
+commande <command>forw</command>, fonctionne de la meme fa&ccedil;on que la
+commande <command>comp</command>. </para>
+
+<para>La commande <command>repl</command> vous permet de r&eacute;pondre au
+message courant, sauf si vous lui indiquez un autre num&eacute;ro de
+message. La commande <command>repl</command> essaye de remplir au
+mieux les diff&eacute;rents champs de l'entete en fonction de ce qui se
+trouve dans le message de base. Vous noterez donc que le
+champ<literal> To:</literal> de l'entete comporte deja l'adresse du
+destinataire et que la ligne <literal>Subject:</literal> est deja
+remplie. Ensuite vous composez de la fa&ccedil;on habituelle votre
+message. Un option interessante de cette commande est
+<option>-cc</option>. Vous pouvez utiliser comme parametre
+<parameter>all</parameter>, <parameter>to</parameter>,
+<parameter>cc</parameter>,<parameter>me</parameter> avec cette option;
+cela vous permet d'ajouter de fa&ccedil;on simple, les adresses en copie du
+message original. Vous noterez que le message original n'est pas inclu
+par d&eacute;faut. C'est le comportement par d&eacute;faut de la plupart des
+configuration de MH.
+</para>
+</sect2>
+
+<sect2>
+<title><filename>components</filename>, et
+<filename>replcomps</filename>&mdash;les fichiers de composition pour
+<command>comp</> and <command>repl</></title>
+
+<para>Le fichier <filename>components</filename> se trouve la plupart
+du temps dans le r&eacute;pertoire
+<filename>/usr/local/lib/mh</filename>. Vous pouvez copier ce fichier
+dans votre r&eacute;pertoire de MH et l'&eacute;diter pour ajouter ce que vous
+voulez. Vous avez certaines lignes d'entete de mail par d&eacute;faut au
+d&eacute;but, une ligne pointill&eacute;e et puis plus rien. La commande
+<command>comp</command> ne fait que copier ce fichier et vous permet
+ensuite de l'&eacute;diter. Vous pouvez ajouter n'importe quel entete valide
+(RFC822). Par exemple, vous pourriez avoir le fichier
+<filename>components</filename> suivant:
+<informalexample>
+<screen>To:
+Fcc: out
+Subject:
+X-Mailer: MH 6.8.3
+X-Comment: FreeBSD the power to serve
+X-Home-Page: http://www.freebsd-fr.org/
+-------</screen>
+</informalexample>
+MH copiera donc ce fichier et vous enverra dans votre &eacute;diteur
+favori. Le fichier <filename>components</filename> est tr&egrave;s simple. Si
+vous d&eacute;sirez inclure une signature, il vous suffit de l'ajouter dans
+ce fichier.</para>
+
+<para>Le fichier <filename>replcomps</filename> est un peu plus
+complexe. Son contenu par d&eacute;faut ressemble &agrave; ceci:
+<informalexample>
+<screen>%(lit)%(formataddr %&lt;{reply-to}%?{from}%?{sender}%?{return-path}%&gt;)\
+%&lt;(nonnull)%(void(width))%(putaddr To: )\n%&gt;\
+%(lit)%(formataddr{to})%(formataddr{cc})%(formataddr(me))\
+%&lt;(nonnull)%(void(width))%(putaddr cc: )\n%&gt;\
+%&lt;{fcc}Fcc: %{fcc}\n%&gt;\
+%&lt;{subject}Subject: Re: %{subject}\n%&gt;\
+%&lt;{date}In-reply-to: Your message of "\
+%&lt;(nodate{date})%{date}%|%(pretty{date})%&gt;."%&lt;{message-id}
+ %{message-id}%&gt;\n%&gt;\
+--------
+</screen>
+</informalexample></para>
+
+<para>Ce fichier a le meme format de base que le fichier
+<filename>components</filename> mais il comporte un peu plus de codes
+de mise en forme. La commande <literal>%(lit)</literal> cr&eacute;e l'espace
+n&eacute;cessaire pour l'adresse. La commande <literal>%(formataddr</literal>
+est une fonction qui retourne une adresse e-mail coh&eacute;rente. Le morceau
+suivant <literal>%&lt;</literal> permet de remplir le champ de
+l'adresse avec l'adresse correspondante dans le cas ou elle se trouve
+dans le champ <literal>{reply-to}</literal> du message de
+l'emetteur. Cela sera donc transfom&eacute; de la mani&egrave;re suivante:
+<informalexample>
+<screen>%&lt;<emphasis remap=bf>si</emphasis> {reply-to} <emphasis
+remap=bf> dans le message original ou trouve un champ reply-to</emphasis>
+alors la mettre dans le champ formataddr, %? <emphasis remap=bf>sinon
+prendre le contenu du champ </emphasis> {from} <emphasis
+remap=bf></emphasis>, %? <emphasis remap=bf>sinon</emphasis> prendre
+le champ {sender} <emphasis remap=bf></emphasis>, %?
+<emphasis remap=bf>et en dernier lieu prendre le champ </emphasis> {return-path} <emphasis remap=bf></emphasis>, %&gt; <emphasis remap=bf>endif</emphasis>.</screen>
+</informalexample></para>
+
+<para>Comme vous pouvez le voir, le formattage des champs de MH peut
+etre largement &eacute;tendu. Vous pourrez surment d&eacute;crypter le maximum des
+autres fonctions et des noms de variables. Toutes les autres
+informations sur le fa&ccedil;on d'&eacute;crire ces chaines de formattage se trouve
+dans la page de manuel de MH. Donc lorsque vous aurez finit de creer
+votre fichier <filename>replcomps</filename> vous n'aurez plus besoin
+d'y toucher. Aucun autre programme ne vous donne autant de flexibilit&eacute;
+et de pouvoir que MH.</para>
+</sect2>
+
+</sect1>
+
+
+
+</article>
+
diff --git a/fr_FR.ISO8859-1/articles/multi-os/Makefile b/fr_FR.ISO8859-1/articles/multi-os/Makefile
new file mode 100644
index 0000000000..72c1d9b8c9
--- /dev/null
+++ b/fr_FR.ISO8859-1/articles/multi-os/Makefile
@@ -0,0 +1,20 @@
+#
+# The FreeBSD Documentation Project
+# The FreeBSD French Documentation Project
+#
+# $FreeBSD$
+# Original revision: 1.4
+#
+
+DOC?= article
+
+FORMATS?= html
+
+INSTALL_COMPRESSED?=gz
+INSTALL_ONLY_COMPRESSED?=
+
+SRCS= article.sgml
+
+DOC_PREFIX?= ${.CURDIR}/../../..
+
+.include "${DOC_PREFIX}/share/mk/doc.project.mk"
diff --git a/fr_FR.ISO8859-1/articles/multi-os/article.sgml b/fr_FR.ISO8859-1/articles/multi-os/article.sgml
new file mode 100755
index 0000000000..994298fd4a
--- /dev/null
+++ b/fr_FR.ISO8859-1/articles/multi-os/article.sgml
@@ -0,0 +1,700 @@
+<!--
+ The FreeBSD Documentation Project
+ The FreeBSD French Documentation Project
+
+ $FreeBSD$
+ Original revision: n.nn
+-->
+
+<!DOCTYPE ARTICLE PUBLIC "-//FreeBSD//DTD DocBook V3.1-Based Extension//EN" [
+<!ENTITY % man PUBLIC "-//FreeBSD//ENTITIES DocBook Manual Page Entities//EN"> %man;
+<!ENTITY % urls PUBLIC "-//FreeBSD//ENTITIES Common Document URL Entities//FR"> %urls;
+<!ENTITY % abstract PUBLIC "-//FreeBSD//ENTITIES DocBook Abstract Entities//FR"> %abstract;
+<!ENTITY % artheader PUBLIC "-//FreeBSD//ENTITIES DocBook ArtHeader Entities//FR"> %artheader;
+<!ENTITY % translators PUBLIC "-//FreeBSD//ENTITIES DocBook Translator Entities//FR"> %translators;
+
+<!ENTITY % authors SYSTEM "../../../en_US.ISO_8859-1/books/handbook/authors.ent"> %authors;
+<!ENTITY % mailing-lists SYSTEM "../../books/handbook/mailing-lists.ent"> %mailing-lists;
+ <!ENTITY rel.current CDATA "3.2">
+]>
+
+<article lang="fr">
+ <artheader>
+ <title>Installer et utiliser FreeBSD en m&ecirc;me temps que d'autres syst&egrave;mes d'exploitation</title>
+ <authorgroup>
+ <author>
+ <firstname>Jay</firstname>
+ <surname>Richmond</surname>
+ </author>
+ </authorgroup>
+ &artheader.copyright;
+ <abstract>
+ <para><email>jayrich@sysc.com</email></para>
+ <para>6 Aout 1996</para>
+ <para>Ce document explique comment faire cohabiter proprement FreeBSD et
+ d'autres syst&egrave;mes d'exploitation courants tels que Linux, MS-DOS, OS/2
+ et Windows 95. Remerciements particuliers &agrave; Annelise Anderson
+ <email>andrsn@stanford.edu</email>, Randall Hopper
+ <email>rhh@ct.picker.com</email> et Jordan K. Hubbard
+ <email>jkh@time.cdrom.com</email>.</para>
+ &abstract.license;
+ &abstract.disclaimer;
+ &trans.a.haby;
+ </abstract>
+ </artheader>
+ <sect1>
+ <title>R&eacute;sum&eacute;</title>
+ <para>La plupart des gens n'arrivent pas &agrave; faire cohabiter leurs divers
+ syst&egrave;mes d'exploitation sans des disques de grande capacit&eacute;,
+ des informations sur les gros disques EIDE sont donc incluses. Comme il
+ y a de nombreuses combinaisons possibles de syst&egrave;mes d'exploitation et
+ de configurations de disques durs, la section
+ <link linkend="examples">Exemples</link> sera peut-&ecirc;tre celle
+ qui vous sera la plus utile. Elle d&eacute;crit plusieurs configurations
+ d'ordinateurs utilisant plusieurs syst&egrave;mes d'exploitation.</para>
+ <para>Ce document suppose que vous avez d&eacute;j&agrave; pr&eacute;par&eacute; de la place sur votre
+ disque dur pour un syst&egrave;me d'exploitation suppl&eacute;mentaire. Chaque fois que
+ vous repartitionnez votre disque dur, vous prenez le risque de d&eacute;truire
+ les donn&eacute;es qui se trouvent sur les partitions existantes. Toutefois, si
+ votre disque est enti&egrave;rement occup&eacute; par DOS, vous trouverez peut-&ecirc;tre le
+ programme FIPS (qui se trouve sur le CD-ROM FreeBSD dans le r&eacute;pertoire
+ <filename>\TOOLS</filename> ou que vous pouvez t&eacute;l&eacute;charger par
+ <ulink url="ftp://ftp.freebsd.org/pub/FreeBSD/tools">ftp</ulink>) utile.
+ Il vous permet de repartitionner votre disque sans d&eacute;truire les donn&eacute;es
+ qui s'y trouvent. Il existe aussi une programme commercial appel&eacute;
+ Partition Magic, qui vous permet de dimensionner et de supprimer des
+ partitions sans d&eacute;g&acirc;t.</para>
+ </sect1>
+ <sect1 id="boot-managers">
+ <title>Revue des gestionnaires de d&eacute;marrage</title>
+ <para>Ce ne sont que de br&egrave;ves descriptions des diff&eacute;rents gestionnaires
+ de d&eacute;marrage que vous rencontrerez. Selon la configuration de votre
+ ordinateur, vous pourrez trouver utile d'en employer plus d'un sur le
+ m&ecirc;me syst&egrave;me.</para>
+ <variablelist>
+ <varlistentry>
+ <term>Boot Easy</term>
+ <listitem>
+ <para>C'est le gestionnaire de d&eacute;marrage par d&eacute;faut de FreeBSD. Il
+ peut d&eacute;marrer &agrave; peu pr&egrave;s n'importe quoi, y compris BSD, OS/2
+ (HPFS), Windows 95 (FAT et FAT32) et Linux. Les partitions sont
+ s&eacute;lectionn&eacute;es &agrave; l'aide des touches fonction.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><foreignphrase>OS/2 Boot Manager</foreignphrase></term>
+ <listitem>
+ <para>Il d&eacute;marrera depuis la FAT, HPFS, FFS (FreeBSD) et EXT2
+ (Linux). Il peut aussi d&eacute;marrer depuis des partitions FAT32.
+ Les partitions sont s&eacute;lectionn&eacute;es avec les touches Fl&egrave;ches.
+ Le gestionnaire de d&eacute;marrage
+ <foreignphrase>OS/2 Boot Manager</foreignphrase> est le
+ seul &agrave; utiliser sa propre partition distincte, &agrave; l'inverse des
+ autres qui utilisent l'enregistrement principal de d&eacute;marrage
+ (<foreignphrase>Master Boot
+ Record</foreignphrase>&nbsp;-&nbsp;MBR). Il doit donc &ecirc;tre
+ install&eacute; dans les 1024 premiers cylindres pour &eacute;viter des
+ probl&egrave;mes de d&eacute;marrage. Il peut charger Linux en utilisant LILO
+ lorsque ce dernier se trouve sur le secteur de d&eacute;marrage et non sur
+ le MBR. Allez sur les
+ <ulink url="http://www.freenix.fr/linux/HOWTO">HOWTO Linux</ulink>
+ sur le World Wide Web pour plus d'informations sur le d&eacute;marrage
+ de Linux avec le gestionnaire de d&eacute;marrage d'OS/2.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>OS-BS</term>
+ <listitem>
+ <para>C'est une alternative &agrave; Boot Easy. Il vous donne plus de
+ contr&ocirc;le sur le processus de d&eacute;marrage, avec la possibilit&eacute; de
+ s&eacute;lectionner la partition &agrave; d&eacute;marrer par d&eacute;faut et le d&eacute;lai de
+ d&eacute;marrage. La version b&eacute;ta de ce programme vous permet de
+ s&eacute;lectionner le syst&egrave;me d'exploitation &agrave; d&eacute;marrer avec les
+ touches Fl&egrave;ches. Il est inclus sur le CD-ROM FreeBSD dans le
+ r&eacute;pertoire <filename>\TOOLS</filename> et vous pouvez le
+ t&eacute;l&eacute;charger par
+ <ulink url="ftp://ftp.freebsd.org/pub/FreeBSD/tools">ftp</ulink>.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>LILO, ou LInux LOader (&ldquo;chargeur Linux&rdquo;)</term>
+ <listitem>
+ <para>C'est un gestionnaire de d&eacute;marrage limit&eacute;. Il peut d&eacute;marrer
+ FreeBSD, mais il faut acommoder son fichier de configuration.</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ <informaltable>
+ <tgroup cols="1">
+ <tbody>
+ <row>
+ <entry><emphasis>A propos de la FAT32:</emphasis> La FAT32
+ remplace le syst&egrave;me de fichiers FAT depuis la version Microsoft
+ OEM SR2 B&eacute;ta, qui sera utilis&eacute;e sur les ordinateurs avec Windows
+ 95 pr&eacute;-install&eacute; vers la fin de 1996. Elle convertit le syst&egrave;me
+ de fichiers FAT habituel et permet d'utiliser des tailles
+ d'agr&eacute;gat&nbsp;-&nbsp;&ldquo;<foreignphrase>cluster</foreignphrase>&rdquo;&nbsp;-&nbsp;plus
+ petites sur de plus gros disques. La FAT32 modifie aussi le
+ secteur de d&eacute;marrage et la table d'allocation habituels de la FAT,
+ ce qui la rend incompatible avec certains gestionnaires de
+ d&eacute;marrage.</entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </informaltable>
+ </sect1>
+ <sect1 id="typical">
+ <title>Une configuration typique</title>
+ <para>Supposons que nous ayons deux gros disques EIDE, et que nous
+ voulions y installer FreeBSD, Linux et Windows 95.</para>
+ <para>Voici comment je proc&eacute;derais avec ces disques durs:</para>
+ <itemizedlist>
+ <listitem>
+ <para><filename>/dev/wd0</filename> (premier disque dur
+ physique),</para>
+ </listitem>
+ <listitem>
+ <para><filename>/dev/wd1</filename> (second disque dur).</para>
+ </listitem>
+ </itemizedlist>
+ <para>Ils ont tous deux 1416 cylindres.</para>
+ <orderedlist>
+ <listitem>
+ <para>Je d&eacute;marre avec une disquette de d&eacute;marrage MS-DOS ou
+ Windows qui contient l'utilitaire <filename>FDISK.EXE</filename>
+ et cr&eacute;e une petite partition primaire de 50 Mo (35-40 pour Windows
+ 95 et un peu d'espace libre) sur le premier disque. Je cr&eacute;e aussi
+ une partition plus importante sur le second disque pour mes
+ applications et mes donn&eacute;es Windows.</para>
+ </listitem>
+ <listitem>
+ <para>Je red&eacute;marre et installe Windows 95 (plus facile &agrave; dire qu'&agrave;
+ faire) sur la partition <filename>C:</filename>.</para>
+ </listitem>
+ <listitem>
+ <para>J'installe ensuite Linux. Je ne suis pas certain pour qui
+ concerne toutes les distributions de Linux, mais la Slackware
+ comprend LILO (voyez la section
+ <link linkend="boot-managers">Revue des gestionnaires de
+ d&eacute;marrage</link>). Au moment de partitionner mon disque dur
+ avec l'utilitaire <filename>fdisk</filename> de Linux,
+ je mets tout Linux sur le premier disque (peut-&ecirc;tre 300 Mo
+ pour une partition racine confortable et de l'espace de
+ pagination).</para>
+ </listitem>
+ <listitem>
+ <para>Apr&egrave;s avoir install&eacute; Linux, et quand on me demande si je veux
+ installer LILO, je fais <emphasis>attention</emphasis> &agrave; l'installer
+ sur le secteur de d&eacute;marrage de ma partition racine Linux, et non
+ sur le MBR (<foreignphrase>Master Boot
+ Record</foreignphrase>&nbsp;-&nbsp;enregistrement principal de
+ d&eacute;marrage).</para>
+ </listitem>
+ <listitem>
+ <para>L'espace restant disponible sur le disque peut servir &agrave;
+ FreeBSD. Je v&eacute;rifie aussi que la
+ tranche&nbsp;-&nbsp;&ldquo;<foreignphrase>slice</foreignphrase>&rdquo;&nbsp;-&nbsp;racine
+ de FreeBSD ne d&eacute;borde pas de la limite des 1024 cylindres (1024
+ cylindres correspond &agrave; 528 Mo &agrave; partir du d&eacute;but du disque sur nos
+ hypoth&eacute;tiques disques de 720 Mo). J'utiliserai &eacute;ventuellement le
+ reste du disque dur (environ 270 Mo) pour les tranches
+ <filename>/usr</filename> et <filename>/var</filename>. Le
+ reste du second
+ disque (l'espace disponible d&eacute;pend de la taille de ma partition
+ d'applications/donn&eacute;es Windows que j'ai cr&eacute;&eacute;e &agrave; l'&eacute;tape 1) peut &ecirc;tre
+ utilis&eacute; pour la tranche <filename>/usr/src</filename> et l'espace
+ de pagination.</para>
+ </listitem>
+ <listitem>
+ <para>Vus de l'utilitaire <filename>fdisk</filename> de Windows 95, mes
+ disques ressembleraient &agrave; ceci:</para>
+ <programlisting>
+---------------------------------------------------------------------
+
+ Display Partition Information
+
+Current fixed disk drive: 1
+
+Partition Status Type Volume_Label Mbytes System Usage
+C: 1 A PRI DOS 50 FAT** 7%
+ 2 A Non-DOS (Linux) 300 43%
+
+Total disk space is 696 Mbytes (1 Mbyte = 1048576 bytes)
+
+Press Esc to continue
+
+---------------------------------------------------------------------
+
+ Display Partition Information
+
+Current fixed disk drive: 2
+
+Partition Status Type Volume_Label Mbytes System Usage
+D: 1 A PRI DOS 420 FAT** 60%
+
+Total disk space is 696 Mbytes (1 Mbyte = 1048576 bytes)
+
+Press Esc to continue
+
+---------------------------------------------------------------------
+ </programlisting>
+ <para>Disons FAT16, ou FAT32 si vous utilisez la mise &agrave; jour
+ OEM SR2 (voyez la section
+ <link linkend="boot-managers">Revue des gestionnaires de
+ d&eacute;marrage</link>).</para>
+ </listitem>
+ <listitem>
+ <para>J'installe FreeBSD. Je veille &agrave; d&eacute;marrer avec le premier
+ disque dur d&eacute;fini comme &ldquo;NORMAL&rdquo; dans le param&eacute;trage
+ du BIOS. Sans cela, je devrais indiquer la g&eacute;om&eacute;trie r&eacute;elle de mon
+ disque au d&eacute;marrage (pour la conna&icirc;tre, d&eacute;marrez Windows 95 et
+ consultez les diagnostics Microsoft (<filename>MSD.EXE</filename>)
+ ou allez voir dans le BIOS) avec le param&egrave;tre
+ <literal>hd0=1416,16,63</literal> o&ugrave; <replaceable>1416</replaceable>
+ est le nombre de cylindres de mon disque dur,
+ <replaceable>16</replaceable> est le nombre de t&ecirc;tes par piste et
+ <replaceable>63</replaceable> est le nombre de secteurs par
+ t&ecirc;te.</para>
+ </listitem>
+ <listitem>
+ <para>Au moment de partitionner le disque dur, je fais attention &agrave;
+ bien installer Boot Easy sur le premier disque. Je ne m'occupe pas
+ du second disque, &agrave; partir duquel rien n'est d&eacute;marr&eacute;.</para>
+ </listitem>
+ <listitem>
+ <para>Au red&eacute;marrage, Boot Easy devrait reconna&icirc;tre mes trois
+ partitions d&eacute;marrables comme DOS (Windows 95), Linux et BSD
+ (FreeBSD)</para>
+ </listitem>
+ </orderedlist>
+ </sect1>
+ <sect1 id="special">
+ <title>Consid&eacute;rations particuli&egrave;res</title>
+ <para>La plupart des syst&egrave;mes d'exploitation sont tr&egrave;s chatouilleux sur la
+ fa&ccedil;on et l'endroit o&ugrave; ils sont install&eacute;s sur le disque dur. Windows 95 et
+ DOS doivent &ecirc;tre sur la premi&egrave;re partition primaire du premier disque dur.
+ OS/2 fait exception. Il peut &ecirc;tre sur le premier ou le second disque et
+ sur une partition primaire ou &eacute;tendue. Si vous n'&ecirc;tes pas s&ucirc;r de vous,
+ gardez le d&eacute;but des partitions d&eacute;marrables avant le 1024&egrave;me
+ cylindre.</para>
+ <para>Si vous installez Windows 95 sur un syst&egrave;me BSD existant, cela va
+ &ldquo;&eacute;craser&rdquo; le MBR, et vous devrez r&eacute;installer votre pr&eacute;c&eacute;dent
+ gestionnaire de d&eacute;marrage. Boot Easy peut &ecirc;tre r&eacute;install&eacute; avec
+ l'utilitaire <filename>BOOTINST.EXE</filename> qui se trouve dans le
+ r&eacute;pertoire <filename>\TOOLS</filename> du CD-ROM, ou peut &ecirc;tre t&eacute;l&eacute;charg&eacute;
+ par <ulink url="ftp://ftp.freebsd.org/pub/FreeBSD/tools">ftp</ulink>.
+ Vous pouvez aussi relancer le processus d'installation et aller dans
+ l'&eacute;diteur de partitions. De l&agrave;, indiquez que la partition FreeBSD est
+ d&eacute;marrable, choisissez l'option <option>Boot Manager</option>
+ (gestionnaire de d&eacute;marrage) et tapez
+ <literal>W</literal> pour &eacute;crire les informations sur le MBR. Vous
+ pouvez maintenant red&eacute;marrer, et Boot Easy reconna&icirc;tra votre Windows 95
+ en tant que DOS.</para>
+ <para>N'oubliez pas s'il vous pla&icirc;t qu'OS/2 peut lire les partitions FAT
+ et HPFS, mais pas les partitions FFS (FreeBSD) ou EXT2 (Linux). De m&ecirc;me,
+ Windows 95 ne peut que lire et &eacute;crire sur les partitions FAT et FAT32
+ (voyez la section <link linkend="boot-managers">Revue des gestionnaire
+ de d&eacute;marrage</link>). FreeBSD peut lire la plupart des syst&egrave;mes de
+ fichiers, mais ne sait pas actuellement lire les partitions HPFS. Linux
+ peut lire les partitions HPFS, mais ne peut pas y &eacute;crire. Les versions
+ r&eacute;centes du noyau Linux (2.x) peuvent lire et &eacute;crire les partitions VFAT
+ de Windows 95 (La VFAT est ce qui permet &agrave; Windows d'utiliser des noms
+ de fichiers longs&nbsp;-&nbsp;c'est &agrave; peu pr&egrave;s la m&ecirc;me chose que la
+ FAT). Linux peut lire et &eacute;crire sur la plupart des syst&egrave;mes de fichiers.
+ Pig&eacute;? Je l'esp&egrave;re.</para>
+ </sect1>
+ <sect1 id="examples">
+ <title>Exemples</title>
+ <para><emphasis>(Cette section a besoin d'&ecirc;tre revue, envoyez s'il vous
+ pla&icirc;t vos exemples &agrave; <email>jayrich@sysc.com</email>.)</emphasis></para>
+ <para>FreeBSD + Windows 95: Si vous avez install&eacute; FreeBSD apr&egrave;s Windows 95,
+ vous devriez voir la mention <literal>DOS</literal> sur le menu de Boot
+ Easy. C'est Windows 95. Si vous avez install&eacute; Windows 95 apr&egrave;s FreeBSD,
+ lisez la section <link linkend="special">Consid&eacute;rations
+ particuli&egrave;res</link> ci-dessus. Tant que votre disque n'a pas 1024
+ cylindres, vous ne devriez pas avoir de probl&egrave;mes pour d&eacute;marrer. Si
+ toutefois une de vos partitions va au-del&agrave; du 1024&egrave;me cylindre, et que
+ vous avez des messages du type <literal>invalid system disk</literal>
+ sous DOS (Windows 95) et que FreeBSD ne d&eacute;marre pas, cherchez dans les
+ param&egrave;tres de configuration de votre BIOS quelque chose appel&eacute;
+ &ldquo;<literal>&gt; 1024 cylinder support</literal>&rdquo; ou
+ mode &ldquo;<literal>NORMAL/LBA</literal>&rdquo;. DOS peut avoir besoin
+ du LBA (<foreignphrase>Logical Block
+ Adressing</foreignphrase>&nbsp;-&nbsp;Adressage de bloc logique) pour
+ d&eacute;marrer correctement. Si la perspective de modifier les param&egrave;tres du
+ BIOS &agrave; chaque d&eacute;marrage ne vous enchante pas, vous pouvez d&eacute;marrer
+ FreeBSD depuis DOS avec l'utilitaire <filename>FBSDBOOT.EXE</filename>
+ du CD (il devrait reconna&icirc;tre votre partition FreeBSD et la
+ d&eacute;marrer).</para>
+ <para>FreeBSD + OS/2 + Windows: Rien de nouveau dans ce cas. Le gestionnaire
+ de d&eacute;marrage d'OS/2 peut d&eacute;marrer tous ces syst&egrave;mes d'exploitation, il ne
+ devrait pas y avoir de probl&egrave;me.</para>
+ <para>FreeBSD + Linux: Vous pouvez aussi utiliser Boot Easy pour d&eacute;marrer
+ les deux syst&egrave;mes d'exploitation.</para>
+ <para>FreeBSD + Linux + Windows 95: (voyez la section
+ <link linkend="typical">Une installation typique</link>).</para>
+ </sect1>
+ <sect1 id="help">
+ <title>Autres endroits o&ugrave; trouver de l'aide</title>
+ <para>Il y a de nombreux
+ <ulink url="http://www.freenix.fr/linux/HOWTO">HOWTO Linux</ulink>
+ qui traitent des syst&egrave;mes d'exploitation multiples sur un m&ecirc;me
+ disque.</para>
+ <para>Le
+ <ulink url="http://www.linuxresources.com/LDP/HOWTO/mini/Linux+DOS+Win95+OS2.html">mini-HOWTO
+ Linux+DOS+Win95+OS2</ulink> donne des indications sur la configuration
+ du gestionnaire de d&eacute;marrage d'OS/2, et le
+ <ulink url="http://www.freenix.fr/linux/HOWTO/mini/Linux+FreeBSD.html">mini-HOWTO
+ Linux+FreeBSD</ulink> peut aussi vous int&eacute;resser.
+ L'<ulink url="http://www.in.net/~jkatz/win95/Linux-HOWTO.html">HOWTO
+ Linux</ulink> est aussi utile.</para>
+ <para>Le
+ <ulink url="http://www.dorsal.org/~dcl/publications/NTLDR_hacking">Guide
+ de programmation du chargeur NT</ulink> fournit des informations
+ int&eacute;ressantes sur le d&eacute;marrage de Windows NT, 95 et DOS avec d'autres
+ syst&egrave;mes d'exploitation.</para>
+ <para>Le jeu de documents d'Hale Landis, &ldquo;Comment &ccedil;a marche&rdquo;,
+ contient de bonnes informations sur toutes sortes de g&eacute;om&eacute;tries de disques
+ et autres sujets li&eacute;s au d&eacute;marrage. Voici quelques liens qui peuvent vous
+ aider &agrave; le trouver:</para>
+ <itemizedlist>
+ <listitem>
+ <para><ulink url="ftp://fission.dt.wdc.com/pub/otherdocs/pc_systems/how_it_works/allhiw.zip">ftp://fission.dt.wdc.com/pub/otherdocs/pc_systems/how_it_works/allhiw.zip</ulink>,</para>
+ </listitem>
+ <listitem>
+ <para><ulink url="http://www.cs.yorku.ca/People/frank/docs/">http://www.cs.yorku.ca/People/frank/docs/</ulink>.</para>
+ </listitem>
+ </itemizedlist>
+ <para>Enfin, ne n&eacute;gligez pas la documentation du noyau de FreeBSD sur le
+ processus de d&eacute;marrage, disponible dans la distribution du source du
+ noyau (elle est install&eacute;e dans
+ <ulink url="file:/usr/src/sys/i386/boot/biosboot/README.386BSD">file:/usr/src/sys/i386/boot/biosboot/README.386BSD</ulink>).</para>
+ </sect1>
+ <sect1>
+ <title>D&eacute;tails Techniques</title>
+ <para><emphasis>(Contribution de Randall Hopper
+ <email>rhh@ct.picker.com</email>)</emphasis></para>
+ <para>Cette section tente de vous donner assez d'informations de base
+ sur vos disques durs et sur le processus de d&eacute;marrage &agrave; partir d'un
+ disque pour vous permettre de r&eacute;gler la plupart des probl&egrave;mes que vous
+ pourriez rencontrer lorsque vous configurerez le d&eacute;marrage de plusieurs
+ syst&egrave;mes d'exploitation. Elle commence par des choses relativement
+ &eacute;l&eacute;mentaires, vous pr&eacute;f&eacute;rerez donc peut-&ecirc;tre la parcourir en diagonale
+ jusqu'&agrave; ce que les points abord&eacute;s vous paraissent moins familiers et
+ commencer alors &agrave; la lire en d&eacute;tail.</para>
+ <sect2>
+ <title>Introduction aux disques</title>
+ <para>Trois termes fondamentaux d&eacute;crivent la localisation des donn&eacute;es
+ sur vos disques durs: Cylindres, T&ecirc;tes et Secteurs. Il n'est pas tr&egrave;s
+ important de savoir &agrave; quoi ils se rapportent sinon qu'ensemble, ils
+ d&eacute;finissent o&ugrave; sont physiquement les donn&eacute;es sur le disque.</para>
+ <para>Votre disque a un nombre donn&eacute; de cylindres, de t&ecirc;tes, et de
+ secteurs par t&ecirc;te-cylindre (un doublet t&ecirc;te-cylindre est aussi appel&eacute;
+ une piste). Ensemble, ces informations d&eacute;finissent la &ldquo;g&eacute;om&eacute;trie
+ physique&rdquo; de votre disque. Il y a typiquement 512 octets par
+ secteur et 63 secteurs par pistes, le nombre de cylindres et de t&ecirc;tes
+ variant tr&egrave;s largement d'un disque &agrave; l'autre. Vous pouvez alors
+ calculer la quantit&eacute; d'informations que peut enregistrer votre disque
+ par la formule:</para>
+ <programlisting>
+nombre de cylindres X nombre de t&ecirc;tes X 63 secteurs/piste X 512 octets/secteur
+ </programlisting>
+ <para>Par exemple, pour mon disque Western Digital AC31600 EIDE de 1,6 Go,
+cela donne:</para>
+ <programlisting>
+3148 cylindres X 16 t&ecirc;tes X 63 secteurs/piste X 512 octets/secteur
+ </programlisting>
+ <para>c'est-&agrave;-dire 1.624.670.208 octets, ou environ 1,6 Go.</para>
+ <para>Vous pouvez conna&icirc;tre la g&eacute;om&eacute;trie physique de votre disque dur
+ (nombre de cylindres, de t&ecirc;tes et de secteurs par piste) avec ATAID
+ ou d'autres programmes que vous trouverez sur l'Internet. Ces
+ informations sont peut-&ecirc;tre aussi fournies avec votre disque. Faites
+ cependant attention: si vous utilisez le LBA du BIOS (voyez la section
+ <link linkend="limits">Restrictions pour le d&eacute;marrage et
+ avertissements</link>), vous ne pouvez pas vous servir de n'importe
+ quel programme pour conna&icirc;tre la g&eacute;om&eacute;trie physique. Cela parce que de
+ nombreux programmes (e.g., <filename>MSD.EXE</filename> ou
+ le <filename>fdisk</filename> de FreeBSD) ne reconnaissent pas la
+ g&eacute;om&eacute;trie physique, ils listent &agrave; la place la <emphasis>g&eacute;om&eacute;trie
+ red&eacute;finie</emphasis> (des valeurs virtuelles dues &agrave; l'utilisation
+ du LBA). Continuez &agrave; lire pour savoir ce que cela veut dire.</para>
+ <para>Une autre chose &agrave; savoir &agrave; propos de ces termes. 3
+ valeurs&nbsp;-&nbsp;un num&eacute;ro de cylindre, un num&eacute;ro de t&ecirc;te, et un
+ num&eacute;ro du secteur sur la piste&nbsp;-&nbsp;identifient l'adresse absolue
+ d'un secteur sur votre disque. Les cylindres et les t&ecirc;tes sont
+ num&eacute;rot&eacute;s &agrave; partir de 0, et les num&eacute;ros de secteurs commencent &agrave;
+ 1.</para>
+ <para>Ceux que des d&eacute;tails plus techniques int&eacute;ressent peuvent
+ trouver un peu partout sur l'Internet des informations sur la g&eacute;om&eacute;trie
+ des disques, les secteurs de d&eacute;marrage, les BIOS, etc. Faites une
+ recherche sur Yahoo, Lycos, etc. pour <literal>boot sector</literal> ou
+ <literal>master boot record</literal>. Parmi les choses utiles que vous
+ trouverez, il y a le jeu de documents
+ &ldquo;Comment &ccedil;a marche&rdquo;&nbsp;-&nbsp;<foreignphrase>How It
+ Works</foreignphrase> de Hale Landis. Voyez la section
+ <link linkend="help">Autres endroits o&ugrave; trouver de l'aide</link> pour
+ avoir quelques pointeurs vers ces documents.</para>
+ <para>OK, assez de terminologie. Nous sommes cens&eacute;s parler de d&eacute;marrage
+ ici.</para>
+ </sect2>
+ <sect2 id="booting">
+ <title>Le processus de d&eacute;marrage</title>
+ <para>Sur le premier secteur de votre disque (cylindre 0, t&ecirc;te 0,
+ secteur 1) se trouve l'enregistrement principal de
+ d&eacute;marrage&nbsp;-&nbsp;<foreignphrase>Master Boot
+ Record</foreignphrase> (MBR). Il contient une carte de votre disque.
+ Il identifie jusqu'&agrave; <emphasis>4 partitions</emphasis>, chacune d'elle
+ &eacute;tant un espace contigu sur ce disque. FreeBSD appelle les partitions
+ des tranches&nbsp;-&nbsp;<foreignphrase>slices</foreignphrase>&nbsp;-&nbsp;pour
+ &eacute;viter la confusion avec ses propres partitions, mais nous
+ n'utiliserons pas ici ce terme. Chaque partition peut contenir son
+ propre syst&egrave;me d'exploitation.</para>
+ <para>Chaque entr&eacute;e de partition dans le MBR comprend un
+ <emphasis>IDentifiant de partition</emphasis>, un
+ <emphasis>Cylindre/T&ecirc;te/Secteur de D&eacute;but</emphasis> et un
+ <emphasis>Cylindre/T&ecirc;te/Secteur de Fin</emphasis>. L'IDentifiant de
+ partition dit de quel type de partition il s'agit (de quel OS) et le
+ D&eacute;but/Fin dit o&ugrave; elle se trouve. La table des
+ <link linkend="partitions">IDs de partitions</link> liste un
+ &eacute;chantillon d'identifiants de partitions usuels.</para>
+ <informaltable id="partitions">
+ <tgroup cols="2">
+ <thead>
+ <row>
+ <entry>ID (hex)</entry>
+ <entry>Description</entry>
+ </row>
+ </thead>
+ <tbody>
+ <row>
+ <entry>01</entry>
+ <entry>DOS12 primaire (FAT 12-bit)</entry>
+ </row>
+ <row>
+ <entry>04</entry>
+ <entry>DOS16 primaire (FAT 16-bit)</entry>
+ </row>
+ <row>
+ <entry>05</entry>
+ <entry>DOS12 &eacute;tendue</entry>
+ </row>
+ <row>
+ <entry>06</entry>
+ <entry>DOS primaire large (&gt; 32 Mo)</entry>
+ </row>
+ <row>
+ <entry>0A</entry>
+ <entry>OS/2</entry>
+ </row>
+ <row>
+ <entry>83</entry>
+ <entry>Linux (EXT2FS)</entry>
+ </row>
+ <row>
+ <entry>A5</entry>
+ <entry>FreeBSD, NetBSD, 386BSD (UFS)</entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </informaltable>
+ <note>
+ <para>Toutes les partitions ne dont pas d&eacute;marrables (e.g. DOS &eacute;tendue).
+ Certaines le sont&nbsp;-&nbsp;d'autres ne le sont pas. Ce qui rend
+ une partition d&eacute;marrable est la configuration du secteur de d&eacute;marrage
+ de la
+ partition&nbsp;-&nbsp;<foreignphrase>Partition Boot Sector</foreignphrase>&nbsp;-&nbsp;qui
+ est toujours pr&eacute;sent au d&eacute;but de chaque partition.</para>
+ </note>
+ <para>Quand vous configurez votre gestionnaire de d&eacute;marrage favori, il
+ consulte les entr&eacute;es dans les tables de partitions du MBR de tous vos
+ disques et vous donne la possibilit&eacute; de donner un nom &agrave; ces entr&eacute;es.
+ Quand vous d&eacute;marrez ensuite, le gestionnaire de d&eacute;marrage
+ est appel&eacute; par du code pr&eacute;vu pour cela &agrave; partir secteur principal de
+ d&eacute;marrage&nbsp;-&nbsp;<foreignphrase>Master Boot Sector</foreignphrase>&nbsp;-&nbsp;du
+ premier disque trouv&eacute; sur votre syst&egrave;me. Le gestionnaire consulte
+ l'entr&eacute;e de la table de partitions du MBR correspondant &agrave; la partition
+ que vous avez choisie, charge le secteur de d&eacute;marrage de cette partition
+ et lui passe le contr&ocirc;le. Ce secteur de d&eacute;marrage de la partition
+ elle-m&ecirc;me contient suffisamment d'informations pour commencer &agrave; charger
+ le syst&egrave;me d'exploitation qui se trouve sur cette partition.</para>
+ <para>Il y a une chose importante &agrave; savoir dont nous n'avons pas encore
+ parl&eacute;. Tous vos disques durs ont un MBR. Toutefois, celui qui est
+ important est celui qui se trouve sur le premier disque reconnu par le
+ BIOS. Si vous n'avez que des disques durs IDE, c'est le premier disque
+ IDE (e.g. le disque ma&icirc;tre sur le premier contr&ocirc;leur). De m&ecirc;me pour les
+ syst&egrave;mes enti&egrave;rement SCSI. Si vous avez et des disques durs IDE et des
+ disques durs SCSI, le disque IDE est habituellement le premier disque
+ dont la pr&eacute;sence est test&eacute;e par le BIOS, le premier disque IDE est donc
+ le premier disque reconnu. Le gestionnaire de d&eacute;marrage que vous
+ installerez sera impl&eacute;ment&eacute; sur le premier disque dur reconnu comme
+ nous venons de l'expliquer.</para>
+ </sect2>
+ <sect2 id="limits">
+ <title>Restrictions pour le d&eacute;marrage et avertissements</title
+ <para>Voici maintenant les choses int&eacute;ressantes auxquelles il faut
+ faire attention.</para>
+ <sect3>
+ <title>La redoutable limitation &agrave; 1024 cylindres et en quoi le LBA du
+ BIOS peut &ecirc;tre utile</title>
+ <para>La premi&egrave;re partie du processus de d&eacute;marrage est enti&egrave;rement
+ confi&eacute;e au BIOS, (si ce terme est nouveau pour vous, le BIOS est
+ un circuit &eacute;lectronique sur votre carte m&egrave;re qui contient le
+ code de d&eacute;marrage de votre ordinateur). C'est pourquoi cette
+ premi&egrave;re partie du processus est soumise aux limitations du
+ BIOS.</para>
+ <para>L'interface BIOS utilis&eacute;e pour lire le disque dur durant
+ cette phase (INT 13H, Sous-fonction 2) alloue 10 bits pour le
+ num&eacute;ro de cylindre, 8 bits pour le num&eacute;ro de t&ecirc;te, et 6 bits
+ pour le num&eacute;ro de secteur. Cela limite les utilisateurs de
+ cette interface (i.e. les gestionnaires de d&eacute;marrage impl&eacute;ment&eacute;s
+ sur le MBR du disque ainsi que les chargeurs de syst&egrave;mes
+ d'exploitation impl&eacute;ment&eacute;s sur les secteurs de d&eacute;marrage) &agrave;:</para>
+ <itemizedlist>
+ <listitem>
+ <para>1024 cylindres au plus,</para>
+ </listitem>
+ <listitem>
+ <para>256 t&ecirc;tes au plus,</para>
+ </listitem>
+ <listitem>
+ <para>64 secteurs/piste au plus, (en fait 63, 0 n'est pas
+ disponible).</para>
+ </listitem>
+ </itemizedlist>
+ <para>Or les diques durs de grande capacit&eacute; ont beaucoup de
+ cylindres et peu de t&ecirc;tes, le nombre de cylindres de ces disques
+ est donc invariablement sup&eacute;rieurs &agrave; 1024. De ce fait et &agrave; cause
+ de l'interface BIOS telle qu'elle est, vous ne pouvez pas d&eacute;marrer
+ n'importe o&ugrave; sur votre disque dur. Le code de d&eacute;marrage (le
+ gestionnaire de d&eacute;marrage et le chargeur du syst&egrave;me d'exploitation
+ impl&eacute;ment&eacute; sur les secteurs de d&eacute;marrage de chaque partition
+ d&eacute;marrable) doivent se situer avant le 1024&egrave;me cylindre. Si votre
+ disque dur est standard et a 16 t&ecirc;tes, cela &eacute;quivaut &agrave;:</para>
+ <programlisting>
+1024 cylindres/disque X 16 t&ecirc;tes/disque X 63 secteurs/piste X 512 octets
+ </programlisting>
+ <para>c'est-&agrave;-dire la limite souvent cit&eacute;e de 528 Mo.</para>
+ <para>C'est l&agrave; qu'intervient le LBA (<foreignphrase>Logical Block
+ Adressing</foreignphrase>&nbsp;-&nbsp;&ldquo;adressage de bloc
+ logique&rdquo;) du BIOS. Le LBA du BIOS donne &agrave; l'utilisateur
+ des routines de l'API (<foreignphrase>Application Programming
+ Interface</foreignphrase>&nbsp;-&nbsp;&ldquo;interface de
+ programmation&rdquo;) du BIOS, la possibilit&eacute; d'acc&eacute;der aux
+ cylindres au-del&agrave; de 1024 avec les interfaces du BIOS en
+ red&eacute;finissant le cylindre. Cela signifie qu'il construit une
+ nouvelle g&eacute;om&eacute;trie de vos cylindres et t&ecirc;tes, faisant croire
+ au BIOS que votre disque a moins de cylindres et plus de t&ecirc;tes
+ qu'en r&eacute;alit&eacute;. En d'autres termes, il profite du fait que les
+ disques ont relativement peu de t&ecirc;tes et beaucoup de cylindres,
+ pour modifier le rapport entre nombre de cylindres et nombre de
+ t&ecirc;tes de fa&ccedil;on &agrave; ce que tous deux soient inf&eacute;rieurs aux limites
+ mentionn&eacute;es ci-dessus (1024 cylindres, 256 t&ecirc;tes).</para>
+ <para>Pour prendre de nouveau l'exemple de mon Western Digital 1,6
+ Go, il a pour g&eacute;om&eacute;trie physique:</para>
+ <programlisting>
+(3148 cylindres, 16 t&ecirc;tes, 63 secteurs/piste, 512 octets/secteur)
+ </programlisting>
+ <para>Alors que le LBA du BIOS la red&eacute;finit comme suit:</para>
+ <programlisting>
+( 787 cylindres, 64 t&ecirc;tes, 63 secteurs/piste, 512 octets/secteur)
+ </programlisting>
+ <para>ce qui correspond &agrave; la m&ecirc;me capacit&eacute; physique, mais avec des
+ nombres de cylindres et de t&ecirc;tes dans les limites acceptables par
+ les API du BIOS. (Au passage, j'ai sur l'un de mes disques, et
+ Linux et FreeBSD au-del&agrave; du 1024&egrave;me cylindre, et les deux d&eacute;marrent
+ sans probl&egrave;me, gr&acirc;ce au LBA du BIOS.)</para>
+ </sect3>
+ <sect3>
+ <title>Gestionnaires de d&eacute;marrage et allocation de l'espace
+ disque</title>
+ <para>Une autre chose &agrave; laquelle il faut faire attention lorsque vous
+ installez un gestionnaire de d&eacute;marrage est l'allocation d'espace
+ disque pour ce gestionnaire. Il vaut mieux &ecirc;tre inform&eacute; de cette
+ question avant de commencer pour vous &eacute;viter d'avoir &agrave; r&eacute;installer un
+ ou plusieurs de vos syst&egrave;mes d'exploitation.</para>
+ <para>Si vous avez suivi ce qui a &eacute;t&eacute; dit sur le
+ <link linkend="booting">processus de d&eacute;marrage</link>
+ &agrave; propos du secteur principal de d&eacute;marrage (o&ugrave; se trouve le MBR),
+ des secteurs de d&eacute;marrage des partitions et du processus de d&eacute;marrage,
+ vous vous &ecirc;tes peut-&ecirc;tre demand&eacute; o&ugrave; va se trouver ce foutu
+ gestionnaire de d&eacute;marrage. Bien, certains gestionnaires de d&eacute;marrage
+ sont suffisament l&eacute;gers pour tenir enti&egrave;rement dans le secteur
+ principal de d&eacute;marrage (cylindre 0, t&ecirc;te 0, secteur 1) avec la table
+ de partitions. D'autres ont besoin d'un peu plus d'espace et d&eacute;bordent
+ en fait de quelques secteurs apr&egrave;s le secteur principal de d&eacute;marrage
+ sur la piste cylindre 0 t&ecirc;te 0, qui sont normalement libres...
+ normalement.</para>
+ <para>L&agrave; est le hic... Certains syst&egrave;mes d'exploitation (y compris
+ FreeBSD) vous permettent de faire d&eacute;buter vos partitions juste apr&egrave;s
+ le secteur principal de d&eacute;marrage au cylindre 0, t&ecirc;te 0, secteur 2,
+ si vous le voulez. En fait, si vous donnez au programme
+ <citerefentry><refentrytitle>sysinstall</refentrytitle></citerefentry>
+ de FreeBSD, un disque dont le d&eacute;but est vierge ou un disque totalement
+ vide, c'est l&agrave; qu'il fera commencer par d&eacute;faut la partition FreeBSD
+ (c'est tout du moins ce qu'il a fait quand je suis tomb&eacute; dans ce
+ pi&egrave;ge). Quand vous installez ensuite le gestionnaire de d&eacute;marrage, si
+ c'est l'un de ceux qui occupent quelques secteurs suppl&eacute;mentaires
+ apr&egrave;s le MBR, il &eacute;crase les donn&eacute;es qui se trouvent au d&eacute;but de la
+ premi&egrave;re partie. Dans le cas de FreeBSD, cela &eacute;crase le label du
+ disque et emp&ecirc;che de d&eacute;marrer votre partition FreeBSD.</para>
+ <para>Le moyen facile d'&eacute;viter ce probl&egrave;me (et de vous garder le
+ possibilit&eacute; d'essayer diff&eacute;rents gestionnaires de d&eacute;marrage par la
+ suite) est de ne pas allouer la premi&egrave;re piste du disque quand vous le
+ partitionnez. Cela r&eacute;serve l'espace entre le cylindre 0, t&ecirc;te 0,
+ secteur 2 et le cylindre 0, t&ecirc;te 0, secteur 63, et votre partition
+ commence au cylindre 1, t&ecirc;te 1, secteur 1. Pour ce que cela vaut,
+ quand vous cr&eacute;ez une partition DOS au d&eacute;but de votre disque, DOS
+ laisse par d&eacute;faut cet espace inoccup&eacute; (c'est pourquoi certains
+ gestionnaires de d&eacute;marrage font l'hypoth&egrave;se qu'il est disponible).
+ Mettre une partition DOS au d&eacute;but de votre disque vous permet aussi
+ d'&eacute;viter le probl&egrave;me. C'est ce que je pr&eacute;f&egrave;re personnellement faire,
+ mettre une partition DOS de 1 Mo au d&eacute;but, parce que cela &eacute;vite
+ aussi que la lettre d&eacute;signant mon disque DOS primaire soit modifi&eacute;e
+ ensuite quand je repartitionne.</para>
+ <para>Pour servir de r&eacute;f&eacute;rence, les gestionnaires de d&eacute;marrage
+ suivants n'utilisent que le secteur principal de d&eacute;marrage pour
+ mettre leur code et leurs donn&eacute;es:</para>
+ <itemizedlist>
+ <listitem>
+ <para>OS-BS 1.35,</para>
+ </listitem>
+ <listitem>
+ <para>Boot Easy,</para>
+ </listitem>
+ <listitem>
+ <para>LILO.</para>
+ </listitem>
+ </itemizedlist>
+ <para>Ces gestionnaires de d&eacute;marrage occupent quelques secteurs
+ suppl&eacute;mentaires apr&egrave;s le secteur principal de d&eacute;marrage:</para>
+ <itemizedlist>
+ <listitem>
+ <para>OS-BS 2.0 B&eacute;ta 8 (secteurs 2-5),</para>
+ </listitem>
+ <listitem>
+ <para>gestionnaire de d&eacute;marrage d'OS/2.</para>
+ </listitem>
+ </itemizedlist>
+ </sect3>
+ <sect3>
+ <title>Que faire si votre syst&egrave;me ne d&eacute;marre pas?</title>
+ <para>Il se peut qu'&agrave; un moment donn&eacute;
+ de l'installation d'un gestionnaire
+ de d&eacute;marrage, vous laissiez le MBR dans un &eacute;tat tel que votre machine
+ ne red&eacute;marre plus. C'est peu probable, mais possible lorsque vous
+ refaites un FDISK alors qu'il y a d&eacute;j&agrave; un gestionnaire de d&eacute;marrage
+ install&eacute;.</para>
+ <para>Si vous avez une partition DOS d&eacute;marrable, vous pouvez d&eacute;marrer
+ avec une disquette de d&eacute;marrage DOS, et lancer:</para>
+ <informalexample>
+<screen><prompt>A:\></prompt> <userinput>FDISK /MBR</userinput></screen>
+ </informalexample>
+ <para>pour r&eacute;installer le code d'origine de d&eacute;marrage simple du DOS
+ seul sur le syst&egrave;me. Vous pouvez alors d&eacute;marrer DOS (et DOS
+ uniquement) depuis le disque dur. Une autre solution consiste &agrave;
+ r&eacute;ex&eacute;cuter le programme d'installation de votre gestionnaire de
+ d&eacute;marrage &agrave; partir d'une disquette d&eacute;marrable.</para>
+ </sect3>
+ </sect2>
+ </sect1>
+</article>
diff --git a/fr_FR.ISO8859-1/articles/new-users/Makefile b/fr_FR.ISO8859-1/articles/new-users/Makefile
new file mode 100644
index 0000000000..72c1d9b8c9
--- /dev/null
+++ b/fr_FR.ISO8859-1/articles/new-users/Makefile
@@ -0,0 +1,20 @@
+#
+# The FreeBSD Documentation Project
+# The FreeBSD French Documentation Project
+#
+# $FreeBSD$
+# Original revision: 1.4
+#
+
+DOC?= article
+
+FORMATS?= html
+
+INSTALL_COMPRESSED?=gz
+INSTALL_ONLY_COMPRESSED?=
+
+SRCS= article.sgml
+
+DOC_PREFIX?= ${.CURDIR}/../../..
+
+.include "${DOC_PREFIX}/share/mk/doc.project.mk"
diff --git a/fr_FR.ISO8859-1/articles/new-users/article.sgml b/fr_FR.ISO8859-1/articles/new-users/article.sgml
new file mode 100755
index 0000000000..50a698babe
--- /dev/null
+++ b/fr_FR.ISO8859-1/articles/new-users/article.sgml
@@ -0,0 +1,827 @@
+<!--
+ The FreeBSD Documentation Project
+ The FreeBSD French Documentation Project
+
+ $FreeBSD$
+ Original revision: n.nn
+-->
+
+<!DOCTYPE ARTICLE PUBLIC "-//FreeBSD//DTD DocBook V3.1-Based Extension//EN" [
+<!ENTITY % man PUBLIC "-//FreeBSD//ENTITIES DocBook Manual Page Entities//EN"> %man;
+<!ENTITY % urls PUBLIC "-//FreeBSD//ENTITIES Common Document URL Entities//FR"> %urls;
+<!ENTITY % abstract PUBLIC "-//FreeBSD//ENTITIES DocBook Abstract Entities//FR"> %abstract;
+<!ENTITY % artheader PUBLIC "-//FreeBSD//ENTITIES DocBook ArtHeader Entities//FR"> %artheader;
+<!ENTITY % translators PUBLIC "-//FreeBSD//ENTITIES DocBook Translator Entities//FR"> %translators;
+
+<!ENTITY % authors SYSTEM "../../../en_US.ISO_8859-1/books/handbook/authors.ent"> %authors;
+<!ENTITY % mailing-lists SYSTEM "../../books/handbook/mailing-lists.ent"> %mailing-lists;
+ <!ENTITY rel.current CDATA "3.2">
+]>
+
+<article lang="fr">
+<artheader>
+<title>Pour les Nouveaux Venus &agrave; FreeBSD et Unix</title>
+<authorgroup>
+<author>
+<firstname>Annelise</firstname>
+<surname>Anderson</surname>
+<affiliation>
+<address><email>andrsn@hoover.stanford.edu</email></address>
+</affiliation>
+</author>
+</authorgroup>
+<pubdate>15 Ao&ucirc;t 1997</pubdate>
+&artheader.copyright;
+<abstract>
+<para>F&eacute;licitations pour avoir install&eacute; FreeBSD! Cette
+introduction concerne les nouveaux venus &agrave; la fois &agrave; FreeBSD
+<emphasis>et</emphasis> &agrave; Unix&nbsp;-&nbsp;elle commence donc par les bases. Elle
+suppose que vous utilisiez la version 2.0.5 ou une version ult&eacute;rieure de
+FreeBSD telle que distribu&eacute;e par Walnut Creek ou FreeBSD.ORG, que votre
+syst&egrave;me n'a (jusqu'&agrave; pr&eacute;sent) qu'un seul utilisateur (vous)&nbsp;-&nbsp;et que vous
+&ecirc;tes probablement &agrave; l'aise avec DOS/Windows ou OS/2.</para>
+&abstract.license;
+&abstract.disclaimer;
+&trans.a.haby;
+</abstract>
+</artheader>
+<sect1>
+<title>Initialiser et Terminer une Session Utilisateur</title>
+<para>Ouvrez une session (quand vous obtenez &agrave; l'&eacute;cran l'invite <systemitem
+class=prompt>login:</systemitem>) avec le compte utilisateur que vous avez
+d&eacute;fini &agrave; l'installation ou sous le compte super-utilisateur
+ <firstterm>root</firstterm>. (FreeBSD a d&eacute;j&agrave; cr&eacute;&eacute; le compte root lors de
+l'installation; root peut acc&eacute;der &agrave; tous les r&eacute;pertoires et tout faire, y
+compris effacer des fichiers essentiels, donc soyez prudents!). Les symboles %
+et # dans les exemples sont l'invite du syst&egrave;me (la votre peut &ecirc;tre diff&eacute;rente),
+o&ugrave; % correspond &agrave; un utilisateur normal et # distingue le compte root.</para>
+<para>Pour terminer la session (vous obtiendrez &agrave; nouveau l'invite
+<systemitem class=prompt>login:</systemitem>), tapez:
+<informalexample>
+<screen># <userinput>exit</userinput></screen>
+</informalexample>
+autant de fois que n&eacute;cessaire. Bien s&ucirc;r, n'oubliez pas la touche
+<keysym>Entr&eacute;e</keysym> &agrave; la fin des commandes, et rappelez-vous qu'Unix
+fait la distinction entre les majuscules et les
+minuscules&nbsp;-&nbsp;<command>exit</command>, mais pas
+<command>EXIT</command>.</para>
+<para>Pour arr&ecirc;tez l'ordinateur, tapez:
+<informalexample>
+<screen># <userinput>/sbin/shutdown -h now</userinput></screen>
+</informalexample>
+Ou, pour le red&eacute;marrer, tapez:
+<informalexample>
+<screen># <userinput>/sbin/shutdown -r now</userinput></screen>
+</informalexample>
+ou:
+<informalexample>
+<screen># <userinput>/sbin/reboot</userinput></screen>
+</informalexample>
+</para>
+<para>Vous pouvez aussi red&eacute;marrer avec:
+<keycombo><keycap>Ctrl</keycap><keycap>Alt</keycap><keycap>Delete</keycap></keycombo>.
+Laissez au syst&egrave;me un peu de temps pour faire son travail. Cette s&eacute;quence est,
+dans les plus r&eacute;centes versions de FreeBSD, l'&eacute;quivalent de la commande
+<command>/sbin/reboot</command>, et il est nettement pr&eacute;f&eacute;rable de l'employer
+que d'utiliser l'interrupteur de r&eacute;initialisation de votre machine. A moins que
+vous ne vouliez tout r&eacute;installer ?</para>
+</sect1>
+<sect1>
+<title>Cr&eacute;er un Nouveau Compte Utilisateur avec les M&ecirc;mes Droits que Root</title>
+<para>Si vous n'avez pas cr&eacute;&eacute; de compte utilisateur au moment de l'installation,
+et utilisez donc le compte root, vous devriez maintenant d&eacute;finir un nouvel
+utilisateur avec:
+<informalexample>
+<screen># <userinput>adduser</userinput></screen>
+</informalexample>
+La premi&egrave;re fois que vous utiliserez adduser, le programme vous demandera
+peut-&ecirc;tre de lui indiquer des options par d&eacute;faut qu'il sauvegardera. Par
+exemple, vous pr&eacute;f&eacute;rez peut-&ecirc;tre que l'interpr&eacute;teur de commandes soit csh, s'il
+vous propose l'interpr&eacute;teur sh. Sinon, tapez simplement Entr&eacute;e pour conserver
+les valeurs par d&eacute;faut. Celles-ci sont enregistr&eacute;es dans le fichier
+<filename>/etc/adduser.conf</filename>, que vous pouvez &eacute;diter.
+Supposons que vous ayez cr&eacute;&eacute; l'utilisateur <emphasis>jacques</emphasis> dont
+le nom est <emphasis>Jacques Dupont</emphasis>. Attribuez un mot de passe
+&agrave; jacques si la s&eacute;curit&eacute; (pourquoi pas, m&ecirc;me des enfants pourraient pianoter
+sur le clavier) vous pr&eacute;occupe. Quand le programme vous demande si vous
+voulez que jacques appartienne &agrave; d'autres groupes, r&eacute;pondez:
+<informalexample>
+<screen>Login group is ``jacques''. Invite jacques into other groups: <userinput>wheel</userinput></screen>
+</informalexample>
+Vous pourrez alors ouvrir une session avec le compte
+<emphasis>jacques</emphasis> puis utiliser la commande
+<command>su</command> pour devenir root. Vous n'aurez dor&eacute;navant
+plus besoin d'ouvrir imm&eacute;diatement une session avec le compte root.</para>
+<para>Vous pouvez quitter <command>adduser</command> &agrave; tout moment en tapant
+<keycombo><keycap>Ctrl</keycap><keycap>C</keycap></keycombo>, et
+pour finir vous pourrez valider le nouveau compte utilisateur ou simplement
+taper <keycap>n</keycap> pour non. Peut-&ecirc;tre voudrez vous cr&eacute;er un second
+compte utilisateur (jeanne?), vous aurez ainsi une issue de secours si vous
+modifiez les fichiers de configuration de jacques et que quelque chose tourne
+mal.</para>
+<para>Une fois que vous avez fini, utilisez <command>exit</command>
+pour revenir &agrave; l'invite <systemitem class=prompt>login:</systemitem>
+et ouvrez une session sous le compte <emphasis>jacques</emphasis>. Il est
+toujours pr&eacute;f&eacute;rable de travailler autant que possible avec un compte utilisateur
+ordinaire qui n'a pas autant de droits&nbsp;-&nbsp;et donc ne pr&eacute;sente pas autant de
+risques&nbsp;-&nbsp;que root.</para>
+<para>Si vous avez d&eacute;j&agrave; cr&eacute;&eacute; un compte et que vous voulez que cet utilisateur
+puisse utiliser <command>su</command> pour devenir root, vous pouvez devenir
+root et &eacute;diter le fichier <filename>/etc/group</filename>, pour y ajouter
+jacques &agrave; la premi&egrave;re ligne (le groupe wheel). Familiarisez-vous d'abord avec
+l'&eacute;diteur de texte <command>vi</command>&nbsp;-&nbsp; ou utilisez l'&eacute;diteur plus
+simple <command>ee</command>, pr&eacute;sent sur les versions les plus r&eacute;centes
+de FreeBSD.</para>
+</sect1>
+<sect1>
+<title>Tour d'Horizon</title>
+<para>Sous une session utilisateur ordinaire, faites un tour d'horizon et
+essayez quelques commandes qui vous fourniront des informations et de l'aide
+quand vous utiliserez FreeBSD.</para>
+<para>Voici quelques commandes et ce qu'elles font :
+<variablelist>
+<varlistentry><term><command>id</command></term>
+<listitem>
+<para>Vous dit qui vous &ecirc;tes!</para>
+</listitem>
+</varlistentry>
+<varlistentry><term><command>pwd</command></term>
+<listitem>
+<para>Vous dit o&ugrave; vous &ecirc;tes&nbsp;-&nbsp;le r&eacute;pertoire de travail
+courant.</para>
+</listitem>
+</varlistentry>
+<varlistentry><term><command>ls</command></term>
+<listitem>
+<para>Donne la liste des fichiers du r&eacute;pertoire courant.</para>
+</listitem>
+</varlistentry>
+<varlistentry><term><command>ls <option>-F</option></command></term>
+<listitem>
+<para>Donne la liste des fichiers du r&eacute;pertoire courant suivis d'une
+<literal>*</literal> pour les ex&eacute;cutables, d'un <literal>/</literal> pour
+les r&eacute;pertoires, et d'une <literal>@</literal> pour les liens
+symboliques.</para>
+</listitem>
+</varlistentry>
+<varlistentry><term><command>ls <option>-l</option></command></term>
+<listitem>
+<para>Donne la liste d&eacute;taill&eacute;e des fichiers du r&eacute;pertoire courant&nbsp;-&nbsp;taille,
+date, autorisations.</para>
+</listitem>
+</varlistentry>
+<varlistentry><term><command>ls <option>-a</option></command></term>
+<listitem>
+<para>Liste tous les fichiers, y compris les fichiers &ldquo;.&rdquo;
+cach&eacute;s. Si vous &ecirc;tes root, les fichiers &ldquo;.&rdquo; sont visibles
+sans l'option <option>-a</option>.</para>
+</listitem>
+</varlistentry>
+<varlistentry><term><command>cd</command></term>
+<listitem>
+<para>Change de r&eacute;pertoire courant. <command>cd
+<parameter>..</parameter></command> remonte d'un niveau dans l'arborescence;
+notez l'espace apr&egrave;s <command>cd</command>. <command>cd
+<parameter>/usr/local</parameter></command> va dans ce r&eacute;pertoire. <command>cd
+<parameter>~</parameter></command> va dans le r&eacute;pertoire de
+l'utilisateur courant&nbsp;-&nbsp;e.g., <filename>/usr/home/jacques</filename>.
+Essayez <command>cd <parameter>/cdrom</parameter></command>, puis
+<command>ls</command>, pour voir si votre CDROM est mont&eacute; et fonctionne.</para>
+</listitem>
+</varlistentry>
+<varlistentry><term><command>view <replaceable>nom_de fichier</replaceable></command></term>
+<listitem>
+<para>Vous permet de visualiser le fichier
+<replaceable>nom_de_fichier</replaceable> sans le modifier. Essayez
+<command>view <parameter>/etc/fstab</parameter></command>.
+<command>:q</command> pour quitter.</para>
+</listitem>
+</varlistentry>
+<varlistentry><term><command>cat <replaceable>nom_de_fichier</replaceable></command></term>
+<listitem>
+<para>Liste <replaceable>nom_de_fichier</replaceable> &agrave; l'&eacute;cran. S'il
+est trop long et que vous n'en voyez que la fin, appuyez sur
+<keycap>Arr&ecirc;t D&eacute;fil</keycap> et utilisez <keycap>fl&egrave;che-vers-le-haut</keycap>
+pour revenir en arri&egrave;re; vous pouvez aussi utiliser <keycap>Arr&ecirc;t D&eacute;fil</keycap>
+avec les pages de manuel. Appuyez &agrave; nouveau sur
+<keycap>Arr&ecirc;t D&eacute;fil</keycap> pour
+terminer votre lecture. Essayez <command>cat</command> sur quelques fichiers
+&ldquo;.&rdquo; de votre r&eacute;pertoire utilisateur&nbsp;-&nbsp;<command>cat
+<parameter>.cshrc</parameter></command>, <command>cat
+<parameter>.login</parameter></command>, <command>cat
+<parameter>.profile</parameter></command>.</para>
+</listitem>
+</varlistentry>
+</variablelist>
+Notez les alias de quelques commandes <command>ls</command>
+dans le fichier <filename>.cshrc</filename> (ils sont tr&egrave;s pratiques).
+Vous pouvez cr&eacute;er d'autres alias en &eacute;ditant le fichier
+<filename>.cshrc</filename>. Vous pouvez aussi les mettre &agrave; disposition
+de tous les utilisateurs en les d&eacute;finissant dans le fichier de configuration
+g&eacute;n&eacute;ral <filename>/etc/csh.cshrc</filename>.</para>
+</sect1>
+<sect1>
+<title>Obtenir de l'Aide et de l'Information</title>
+<para>Voici quelques moyens d'obtenir de l'aide.
+<replaceable>Texte</replaceable> d&eacute;signe quelque chose de votre choix
+&nbsp;-&nbsp;normalement une commande ou un nom de fichier&nbsp;-&nbsp;que vous
+tapez.</para>
+<variablelist>
+<varlistentry><term><command>apropos <replaceable>texte</replaceable></command></term>
+<listitem>
+<para>Tout ce qui contient la cha&icirc;ne <replaceable>texte</replaceable>
+dans la <database>base de donn&eacute;es whatis</database>.</para>
+</listitem>
+</varlistentry>
+<varlistentry><term><command>man <replaceable>texte</replaceable></command></term>
+<listitem>
+<para>La page de manuel pour <replaceable>texte</replaceable>. C'est la
+principale source de documentation des syst&egrave;mes Unix. <command>man
+<parameter>ls</parameter></command> vous expliquera toutes les possibilit&eacute;s
+d'utilisation de la commande <command>ls</command>. Utilisez
+<keycap>Entr&eacute;e</keycap> pour faire d&eacute;filer le texte,
+<keycombo><keycap>Ctrl</keycap><keycap>b</keycap></keycombo> pour remonter
+d'une page, <keycombo><keycap>Ctrl</keycap><keycap>f</keycap></keycombo> pour
+passer &agrave; la page suivante, et <keycap>q</keycap> ou
+<keycombo><keycap>Ctrl</keycap><keycap>c</keycap></keycombo> pour
+quitter.</para>
+</listitem>
+</varlistentry>
+<varlistentry><term><command>which <replaceable>texte</replaceable></command></term>
+<listitem>
+<para>Vous dit o&ugrave; se trouve la commande
+<replaceable>texte</replaceable>
+dans vos chemins d'acc&egrave;s.</para>
+</listitem>
+</varlistentry>
+<varlistentry><term><command>locate <replaceable>texte</replaceable></command></term>
+<listitem>
+<para>Tous les r&eacute;pertoires o&ugrave; l'on trouve la cha&icirc;ne
+<replaceable>texte</replaceable>.</para>
+</listitem>
+</varlistentry>
+<varlistentry><term><command>whatis <replaceable>texte</replaceable></command></term>
+<listitem>
+<para>Vous dit ce qu'est la commande <replaceable>texte</replaceable>
+et o&ugrave; se trouve la page de manuel correspondante.</para>
+</listitem>
+</varlistentry>
+<varlistentry><term><command>whereis <replaceable>text</replaceable></command></term>
+<listitem>
+<para>Cherche le fichier <replaceable>texte</replaceable>, et vous en donne
+le chemin d'acc&egrave;s complet.</para>
+</listitem>
+</varlistentry>
+</variablelist>
+<para>Essayez la commande <command>whatis</command> sur quelques utilitaires
+d'usage courant comme <command>cat</command>,
+<command>more</command>, <command>grep</command>,
+<command>mv</command>, <command>find</command>,
+<command>tar</command>, <command>chmod</command>,
+<command>chown</command>, <command>date</command> et
+<command>script</command>. <command>more</command> vous permet de lire
+une page &agrave; la fois comme sous DOS, e.g., <command>ls -l |
+more</command> ou <command>more
+<replaceable>nom_de_fichier</replaceable></command>.
+<literal>*</literal> sert de caract&egrave;re de substitution&nbsp;-&nbsp;e.g., <command>ls
+w*</command> vous donnera la liste de tous les fichiers commen&ccedil;ant par
+<literal>w</literal>.</para>
+<para>Certaines de ces commandes ne fonctionnent pas correctement?
+<command>locate</command> et <command>whatis</command>
+interrogent une base de donn&eacute;es qui est reconstruite chaque semaine.
+Si votre machine n'est pas en service le weekend (et sous FreeBSD), vous
+devrez peut-&ecirc;tre ex&eacute;cuter les commandes de maintenance quotidienne, hebdomadaire
+et mensuelle de temps &agrave; autre. Faites-le sous le compte root et attendez qu'elles se terminent avant de lancer la suivante.
+<informalexample>
+<screen># <userinput>/etc/daily</userinput>
+<lineannotation>sortie non mentionn&eacute;e</lineannotation>
+# <userinput>/etc/weekly</userinput>
+<lineannotation>sortie non mentionn&eacute;e</lineannotation>
+# <userinput>/etc/monthly</userinput>
+<lineannotation>sortie non mentionn&eacute;e</lineannotation>
+</screen></informalexample></para>
+<para>Si vous &ecirc;tes las d'attendre, appuyez sur
+<keycombo><keycap>Alt</keycap><keycap>F2</keycap></keycombo> pour obtenir une
+nouvelle <firstterm>console virtuelle</firstterm>, et rouvrir une session.
+Apr&egrave;s tout, c'est un syst&egrave;me multi-utilisateurs, multi-t&acirc;ches. Ces
+commandes afficheront probablement des messages &agrave; l'&eacute;cran pendant
+qu'elles s'ex&eacute;cutent; vous pouvez taper <command>clear</command> pour effacer
+l'&eacute;cran. Une fois qu'elles auront termin&eacute;, regardez le contenu des fichiers
+<filename>/var/mail/root</filename> et
+<filename>/var/log/messages</filename>.</para>
+<para>Utiliser de telles commandes est une des t&acirc;ches d'administration
+syst&egrave;me&nbsp;-&nbsp;&eacute;tant seul utilisateur d'un syst&egrave;me Unix, vous &ecirc;tes votre
+propre administrateur syst&egrave;me. Pratiquement tout ce que vous aurez &agrave; faire
+sous le compte root sera l'administration de votre syst&egrave;me. Ces t&acirc;ches
+sont souvent mal d&eacute;crites dans les ouvrages volumineux sur Unix
+qui passent plus de temps &agrave; d&eacute;tailler les menus des gestionnaires de fen&ecirc;tres.
+Procurez-vous l'un des deux ouvrages de r&eacute;f&eacute;rence sur l'administration syst&egrave;me,
+soit Evi Nemeth et.al.'s <citetitle>UNIX System
+Administration Handbook</citetitle> (Prentice-Hall, 1995, ISBN
+0-13-15051-7)&nbsp;-&nbsp;deuxi&egrave;me &eacute;dition avec une couverture rouge; ou
+&AElig;leen Frisch's <citetitle>Essential System
+Administration</citetitle> (O'Reilly &amp; Associates, 1993, ISBN
+0-937175-80-3)<footnote><para>N.d.T.: traduit en fran&ccedil;ais sous le titre
+<citetitle>Les Bases de l'Administration Syst&egrave;me</citetitle>, chez le m&ecirc;me
+&eacute;diteur.</para></footnote>. J'ai personnellement utilis&eacute; Nemeth.</para>
+</sect1>
+<sect1>
+<title>Editer des Fichiers Texte</title>
+<para>Pour configurer votre syst&egrave;me, vous devez &eacute;diter des fichiers texte. Ils
+sont presque tous dans le r&eacute;pertoire <filename>/etc</filename>; vous devrez
+utiliser la commande <command>su</command> pour devenir root pour les
+modifier. Vous pouvez vous servir de l'&eacute;diteur simple <command>ee</command>,
+mais &agrave; long terme, cela vaut la peine d'apprendre &agrave; utiliser
+<command>vi</command>. Il y a une excellente introduction &agrave; vi dans
+<filename>/usr/src/contrib/nvi/docs/tutorial</filename> si vous l'avez
+install&eacute;. Sinon vous pouvez le t&eacute;l&eacute;charger par ftp sur
+<ulink url="ftp://ftp.cdrom.com">ftp://ftp.cdrom.com</ulink>
+dans le r&eacute;pertoire
+<filename>FreeBSD/FreeBSD-current/src/contrib/nvi/tutorial</filename>.</para>
+<para>Avant d'&eacute;diter un fichier, faites-en une copie de sauvegarde. Supposons
+que vous vouliez modifier le fichier <filename>/etc/rc.conf</filename>. Avec
+la commande <command>cd /etc</command> vous allez dans le r&eacute;pertoire
+<filename>/etc</filename>, puis tapez:
+<informalexample>
+<screen># <userinput>cp rc.conf rc.conf.orig</userinput></screen>
+</informalexample>
+pour recopier le fichier <filename>rc.conf</filename> dans
+<filename>rc.conf.orig</filename>, de fa&ccedil;on &agrave; pouvoir ensuite
+recopier <filename>rc.conf.orig</filename> dans <emphasis
+remap=tt>rc.conf</emphasis> pour revenir &agrave; la version originale. Il serait
+encore mieux de le d&eacute;placer (renommer) puis de faire la copie en sens inverse:
+<informalexample>
+<screen># <userinput>mv rc.conf rc.conf.orig</userinput>
+# <userinput>cp rc.conf.orig rc.conf</userinput></screen>
+</informalexample>
+parce que la commande <command>mv</command> conserve la date et le nom du
+propri&eacute;taire d'origine du fichier. Vous pouvez maintenant &eacute;diter le fichier
+<filename>rc.conf</filename>. Si vous voulez revenir &agrave; la version d'origine,
+utilisez alors <userinput>mv rc.conf rc.conf.myedit</userinput>
+(en supposant que vous vouliez conserver la version que vous avez modifi&eacute;e)
+puis:
+<informalexample>
+<screen># <userinput>mv rc.conf.orig rc.conf</userinput></screen>
+</informalexample>
+pour remettre l'original &agrave; sa place.</para>
+<para>Pour &eacute;diter un fichier, tapez:
+<informalexample>
+<screen># <userinput>vi <replaceable>nom_de_fichier</replaceable></userinput></screen>
+</informalexample>
+d&eacute;placez vous dans le fichier avec les touches fl&egrave;ches. <keycap>Echap</keycap> (la touche d'&eacute;chappement) met <command>vi</command> en mode commande. Voici
+quelques-unes de ces commandes:
+<variablelist>
+<varlistentry><term><command>x</command></term>
+<listitem>
+<para>efface le caract&egrave;re sur lequel se trouve le curseur.</para>
+</listitem>
+</varlistentry>
+<varlistentry><term><command>dd</command></term>
+<listitem>
+<para>efface toute la ligne (m&ecirc;me si elle d&eacute;passe la largeur de l'&eacute;cran et
+s'affiche sur plus d'une ligne).</para>
+</listitem>
+</varlistentry>
+<varlistentry><term><command>i</command></term>
+<listitem>
+<para>permet d'ins&eacute;rer du texte devant la position du curseur.</para>
+</listitem>
+</varlistentry>
+<varlistentry><term><command>a</command></term>
+<listitem>
+<para>permet d'ins&eacute;rer du texte apr&egrave;s la position du curseur.</para>
+</listitem>
+</varlistentry>
+</variablelist>
+Apr&egrave;s avoir tap&eacute; <command>i</command> ou <command>a</command>,
+vous pouvez ins&eacute;rer du texte. <command>Echap</command> vous ram&egrave;ne en mode
+commande. Vous pouvez alors taper:
+<variablelist>
+<varlistentry><term><command>:w</command></term>
+<listitem>
+<para>pour enregistrer le fichier modifi&eacute; sur disque et continuer &agrave;
+l'&eacute;diter,</para>
+</listitem>
+</varlistentry>
+<varlistentry><term><command>:wq</command></term>
+<listitem>
+<para>pour enregistrer le fichier modifi&eacute; sur disque et quitter
+l'&eacute;diteur,</para>
+</listitem>
+</varlistentry>
+<varlistentry><term><command>:q!</command></term>
+<listitem>
+<para>pour quitter l'&eacute;diteur sans enregistrer vos modifications,</para>
+</listitem>
+</varlistentry>
+<varlistentry><term><command>/<replaceable>texte</replaceable></command></term>
+<listitem>
+<para>recherche la prochaine occurence de <replaceable>texte</replaceable> et
+y positionne le curseur; <command>/<keycap>Entr&eacute;e</keycap></command> (la touche
+Entr&eacute;e) recherche ensuite la prochaine occurrence de <replaceable>texte</replaceable>,</para>
+</listitem>
+</varlistentry>
+<varlistentry><term><command>G</command></term>
+<listitem>
+<para>va &agrave; la fin du fichier,</para>
+</listitem>
+</varlistentry>
+<varlistentry><term><command><replaceable>n</replaceable>G</command></term>
+<listitem>
+<para>va &agrave; la <replaceable>n</replaceable>i&egrave;me ligne du fichier,</para>
+</listitem>
+</varlistentry>
+<varlistentry><term><keycombo><keycap>Ctrl</><keycap>L</></keycombo></term>
+<listitem>
+<para>rafra&icirc;chit l'affichage,</para>
+</listitem>
+</varlistentry>
+<varlistentry><term><keycombo><keycap>Ctrl</><keycap>b</></> et <keycombo><keycap>Ctrl</><keycap>f</></></term>
+<listitem>
+<para>remonte ou descend d'une page, de la m&ecirc;me fa&ccedil;on qu'avec les utilitaires
+<command>more</> et <command>view</>.</para>
+</listitem>
+</varlistentry>
+</variablelist>
+</para>
+<para>Entra&icirc;nez-vous &agrave; utiliser <command>vi</> dans votre r&eacute;pertoire utilisateur
+en cr&eacute;ant un nouveau fichier avec <command>vi
+<replaceable>nom_de_fichier</></> puis ajoutez-y et effacez du texte,
+enregistrez le ficher et r&eacute;&eacute;ditez-le. <command>vi</> peut vous r&eacute;server
+des surprises parce qu'il est assez complexe, et il vous arrivera de taper
+accidentellement des commandes au r&eacute;sultat inattendu. (Certains aiment
+vraiment <command>vi</>&nbsp;-&nbsp;il est bien plus puissant qu'EDIT
+de DOS&nbsp;-&nbsp;voyez par exemple la commande <command>:r</> command.) Utilisez
+<keycap>Echap</> une ou plusieurs fois pour &ecirc;tre s&ucirc;r que vous &ecirc;tes en mode
+commande quand vous &ecirc;tes dans l'embarras, enregistrez r&eacute;guli&egrave;rement vos
+modifications avec la commande <command>:w</>, et utilisez la commande
+<command>:q!</> pour sortir et r&eacute;&eacute;diter la derni&egrave;re version enregistr&eacute;e
+avec <command>:w</> au besoin.</para>
+<para>Vous pouvez maintenant <command>cd</> vers <filename>/etc</filename>,
+<command>su</> pour devenir root, utiliser <command>vi</> pour &eacute;diter le
+fichier <filename>/etc/group</filename>, et ajouter un utilisateur au groupe
+wheel pour qu'il ait les m&ecirc;mes droits que root. Ajoutez juste une virgule puis
+le nom de l'utilisateur &agrave; la fin de la premi&egrave;re ligne, appuyez sur
+<keycap>Echap</>, et utilisez la commande <command>:wq</> pour enregistrer
+le fichier et quitter l'&eacute;diteur. La modification est aussit&ocirc;t prise en compte
+par le syst&egrave;me. (vous n'avez pas mis de blanc apr&egrave;s la virgule,
+n'est-ce-pas?)</para>
+</sect1>
+<sect1>
+<title>Imprimer des fichiers DOS</title>
+<para>A ce stade, vous n'avez probablement pas encore configur&eacute; FreeBSD
+pour pouvoir utiliser votre imprimante. Voici donc une m&eacute;thode pour
+cr&eacute;er un fichier &agrave; partir d'une page de manuel, l'enregistrer sur disquette
+et l'imprimer sous DOS. Si par exemple, vous voulez lire dans le d&eacute;tail
+ce qui concerne la modification des droits d'acc&egrave;s aux fichiers (c'est assez
+important), la commande man chmod vous affiche la page de manuel. La commande:
+<informalexample>
+<screen># <userinput>man chmod &gt; chmod.txt</></screen>
+</informalexample>
+recopie la page de manuel dans le fichier <filename>chmod.txt</filename> au lieu
+de l'afficher &agrave; l'&eacute;cran. Mettez maintenant une disquette format&eacute;e DOS dans le
+lecteur de disquettes A:, <command>su</> pour devenir root, et tapez:
+<informalexample>
+<screen># <userinput>/sbin/mount -t msdos /dev/fd0 /mnt</></screen>
+</informalexample>
+pour monter le lecteur de disquettes dans le r&eacute;pertoire
+<filename>/mnt</filename>.</para>
+<para>Ensuite (plus besoin d'&ecirc;tre root, vous pouvez utiliser
+<command>exit</> pour redevenir l'utilisateur jacques), vous pouvez aller
+dans le r&eacute;pertoire o&ugrave; vous avez cr&eacute;&eacute; le fichier chmod.txt et le recopier
+sur la disquette avec la commande:
+<informalexample>
+<screen>% <userinput>cp chmod.txt /mnt</></screen>
+</informalexample>
+puis utiliser <command>ls /mnt</command> pour lister le contenu du r&eacute;pertoire
+<filename>/mnt</filename>, o&ugrave; devrait figurer le fichier
+<filename>chmod.txt</filename>.</para>
+<para>En particulier, il vous sera utile de cr&eacute;er un fichier &agrave; partir du
+r&eacute;sultat de la commande
+<filename>/sbin/dmesg</filename> en tapant:
+<informalexample>
+<screen>% <userinput>/sbin/dmesg &gt; dmesg.txt</></screen>
+</informalexample>
+et en copiant <filename>dmesg.txt</filename> sur la disquette.
+<command>/sbin/dmesg</command> liste les informations affich&eacute;es au d&eacute;marrage
+du syst&egrave;me, qu'il est utile de comprendre, parce qu'elles d&eacute;crivent la
+configuration mat&eacute;rielle reconnue par FreeBSD au d&eacute;marrage.
+Si vous posez des questions sur <email>freebsd-questions@FreeBSD.ORG</> ou
+dans un forum USENET&nbsp;-&nbsp;du type &ldquo;FreeBSD ne reconna&icirc;t pas mon
+lecteur de bande, que faire ? &rdquo;&nbsp;-&nbsp;on vous demandera ce qu'indique
+<command>dmesg</> sur votre syst&egrave;me.</para>
+<para>Vous pouvez maintenant d&eacute;monter le lecteur de disquette (sous le compte
+root) pour retirer la disquette avec la commande:
+<informalexample>
+<screen># <userinput>/sbin/umount /mnt</></screen>
+</informalexample>
+et red&eacute;marrer la machine pour passer sous DOS. Copiez ces fichiers dans un
+r&eacute;pertoire DOS, &eacute;ditez-les avec DOS EDIT, Windows Notepad, ou un traitement
+de texte, faites une petite modification pour avoir &agrave; les enregistrer et
+imprimez-les comme d'habitude sous DOS ou Windows. J'esp&egrave;re que cela marche!
+Les pages de manuel s'impriment mieux avec la commande <command>print</command>
+du DOS. (Copier des fichiers de FreeBSD vers une partition DOS mont&eacute;e est
+dans certains cas encore un peu risqu&eacute;).</para>
+<para>Pour pouvoir imprimer depuis FreeBSD, il faut d&eacute;finir l'imprimante dans
+le fichier <filename>/etc/printcap</filename> et cr&eacute;er le r&eacute;pertoire tampon
+correspondant dans <filename>/var/spool/output</filename>. Si votre imprimante
+est sur le port <hardware>lpt0</hardware> (qui s'appelle <hardware>LPT1</hardware> sous DOS),
+il suffit d'aller dans le r&eacute;pertoire <filename>/var/spool/output</filename> et
+(sous le compte root) de cr&eacute;er le r&eacute;pertoire <filename>lpd</>, s'il n'existe
+pas, en tapant:
+<informalexample>
+<screen># <userinput>mkdir lpd</></screen>
+</informalexample>
+L'imprimante devrait alors r&eacute;pondre si elle &eacute;tait sous tension au d&eacute;marrage du
+syst&egrave;me et les commandes lp ou lpr devraient envoyer un fichier &agrave;
+l'imprimante. Que le fichier s'imprime ou non d&eacute;pend de la
+configuration de l'imprimante, qui est d&eacute;crite dans le
+<ulink url="&url.handbook;index.html">manuel FreeBSD.</></para>
+</sect1>
+<sect1>
+<title>D'autres Commandes Utiles</title>
+<para>
+<variablelist>
+<varlistentry><term><command>df</></term>
+<listitem>
+<para>liste les syst&egrave;mes de fichiers mont&eacute;s, leur taille et leur utilisation.</para>
+</listitem>
+</varlistentry>
+<varlistentry><term><command>ps aux</></term>
+<listitem>
+<para>liste les processus actifs. <command>ps ax</> en est une forme abreg&eacute;e.</para>
+</listitem>
+</varlistentry>
+<varlistentry><term><command>rm <replaceable>nom_de_fichier</></></term>
+<listitem>
+<para>efface le fichier <replaceable>nom_de_fichier.</></para>
+</listitem>
+</varlistentry>
+<varlistentry><term><command>rm -R <replaceable>r&eacute;pertoire</></></term>
+<listitem>
+<para>efface le r&eacute;pertoire <replaceable>r&eacute;pertoire</> et tous ses
+sous-r&eacute;pertoires&nbsp;-&nbsp;attention!</para>
+</listitem>
+</varlistentry>
+<varlistentry><term><command>ls -R</command></term>
+<listitem>
+<para>liste les fichiers du r&eacute;pertoire courant et de tous ses sous-r&eacute;pertoires;
+j'en utilisais une variante, <command>ls -AFR &gt; where.txt</command>,
+pour avoir la liste de tous les fichiers du r&eacute;pertoire racine
+<filename>/</filename> et (ind&eacute;pendamment) du r&eacute;pertoire
+<filename>/usr</filename> avant de trouver un meilleur moyen pour rechercher
+des fichiers.</para>
+</listitem>
+</varlistentry>
+<varlistentry><term><command>passwd</></term>
+<listitem>
+<para>pour changer le mot de passe d'un utilisateur
+(ou le mot de passe root).</para>
+</listitem>
+</varlistentry>
+<varlistentry><term><command>man hier</></term>
+<listitem>
+<para>pages de manuel du syst&egrave;me de fichier Unix.</para>
+</listitem>
+</varlistentry>
+</variablelist></para>
+<para>Avec le commande <command>find</> vous pouvez localiser le fichier
+<replaceable>nom_de_fichier</replaceable> dans <filename>/usr</filename> ou un
+de ses sous-r&eacute;pertoires:
+<informalexample>
+<screen>% <userinput>find /usr -name "<replaceable>nom_de_fichier</>"</></screen>
+</informalexample>
+Vous pouvez employer <literal>*</literal> comme caract&egrave;re de substitution dans
+<parameter>"<replaceable>nom_de_fichier</>"</> (qui doit &ecirc;tre entre guillemets).
+Si vous demandez &agrave; <command>find</command> d'effectuer la recherche dans <filename>/</filename>
+au lieu de <filename>/usr</filename>, il va parcourir tous les syst&egrave;mes de
+fichiers mont&eacute;s, y compris le CDROM et la partition DOS.</para>
+<para>Voici un excellent livre qui d&eacute;taille les commandes et les utilitaires
+du syst&egrave;me Unix:
+Abrahams &amp; Larson, <citetitle>Unix for the Impatient</citetitle>
+(2nd ed., Addison-Wesley, 1996). Vous trouverez aussi beaucoup d'informations
+sur Unix sur l'Internet. Essayez l'
+<ulink url="http://www.eecs.nwu.edu/unix.html">Unix Reference
+Desk</ulink>.</para>
+</sect1>
+<sect1>
+<title>Etapes Suivantes</title>
+<para>Vous avez maintenant les outils n&eacute;cessaires &agrave; l'exploration du syst&egrave;me et
+&agrave; l'&eacute;dition de fichiers. Il y a &eacute;normement d'informations dans le
+<ulink url="&url.handbook;index.html">manuel FreeBSD
+</ulink> (que vous avez probablement aussi sur votre disque
+dur) et sur le
+<ulink url="http://www.freebsd.org/">
+site Internet de FreeBSD</ulink>. Il y a un grand nombre de logiciels sur le
+CDROM de <ulink url="http://www.cdrom.com/">Walnut Creek</ulink> et sur leur
+site Internet. Le "manuel" vous explique comment les utiliser
+(installer le logiciel s'il existe, avec <command>pkg_add
+/cdrom/packages/All/<replaceable>nom_du_logiciel</></>,
+o&ugrave; <replaceable>nom_du_logiciel</replaceable> est le nom du fichier
+correspondant au logiciel voulu). Le CDROM donne la liste des logiciels
+pr&eacute;-compil&eacute;s ou non <footnote><para>N.d.T: Les logiciels pr&eacute;vus pour &ecirc;tre utilis&eacute;s avec FreeBSD peuvent &ecirc;tre pr&eacute;-compil&eacute;s (&ldquo;packages&rdquo;) ou
+disponibles sous forme de code source (&ldquo;ports&rdquo;) livr&eacute; avec
+les proc&eacute;dures n&eacute;cessaires &agrave; sa compilation.</para></footnote> avec une
+courte description de
+chacun dans <filename>/cdrom/packages/index</filename>,
+<filename>/cdrom/packages/index.txt</filename> et
+<filename>/cdrom/ports/index</filename>. Il y a des descriptifs plus d&eacute;taill&eacute;s
+dans <filename>/cdrom/ports/*/*/pkg/DESCR</filename>, o&ugrave; les
+<literal>*</literal>s d&eacute;signent respectivement les sous-r&eacute;pertoires regroupant
+les logiciels par cat&eacute;gories et les noms des logiciels.</para>
+<para>Si vous trouvez le "manuel" trop subtil (avec ses commandes
+<command>lndir</> et ainsi de suite) en ce qui concerne l'installation des
+logiciel &agrave; compiler, voici une m&eacute;thode qui fonctionne habituellement:</para>
+<para>Trouvez le logiciel que vous voulez, par exemple <command>kermit</>. Il
+y aura un sous-r&eacute;pertoire correspondant sur le CDROM. Copiez ce sous-r&eacute;pertoire
+dans <filename>/usr/local</filename> (l&agrave; o&ugrave; l'on met g&eacute;n&eacute;ralement les logiciels
+que l'on installe pour les mettre &agrave; la disposition de tous les utilisateurs)
+avec:
+<informalexample>
+<screen># <userinput>cp -R /cdrom/ports/comm/kermit /usr/local</></screen>
+</informalexample>
+Ceci cr&eacute;e normalement un sous-r&eacute;pertoire <filename>/usr/local/kermit</filename>
+qui contient tous les fichiers du sous-r&eacute;pertoire
+<command>kermit</command> du CDROM.</para>
+<para>Recherchez ensuite dans le r&eacute;pertoire
+<filename>/cdrom/ports/distfiles</filename> un fichier dont le nom
+indique que c'est le logiciel que vous voulez installer. Copiez ce fichier dans
+<filename>/usr/ports/distfiles</filename>; avec les versions r&eacute;centes,
+vous pouvez sauter cette &eacute;tape, FreeBSD s'en chargera.
+Dans le cas de <command>kermit</>, il n'y a aucun fichier associ&eacute; dans
+<filename>/cdrom/ports/distfiles</filename>.</para>
+<para>Puis <command>cd</> dans le sous-r&eacute;pertoire de
+<filename>/usr/local/kermit</filename> qui contient le fichier
+<filename>Makefile</>. Tapez:
+<informalexample>
+<screen># <userinput>make all install</></screen>
+</informalexample>
+</para>
+<para>Pendant l'installation, le syst&egrave;me ira chercher par ftp les
+fichiers compress&eacute;s qu'il ne trouve pas dans
+<filename>/usr/ports/distfiles</filename>. Si vous n'&ecirc;tes pas
+encore connect&eacute; &agrave; l'Internet et que le fichier correspondant au
+logiciel n'existe pas dans
+<filename>/cdrom/ports/distfiles</filename>, vous devrez r&eacute;cup&eacute;rer
+ce fichier sur une autre machine et le copier dans
+<filename>/usr/ports/distfiles</filename> depuis une disquette ou
+votre partition Dos. Lisez <filename>Makefile</> (Avec <command>cat</>,
+<command>more</> ou <command>view</>) pour trouver sur quel site (le
+"master distribution site"&nbsp;-&nbsp;site de distribution d'origine) aller pour
+r&eacute;cup&eacute;rer le fichier et pour conna&icirc;tre
+son nom. Ce nom sera tronqu&eacute; si vous t&eacute;l&eacute;chargez le fichier sous DOS, et
+vous devrez redonner au fichier son nom d'origine apr&egrave;s l'avoir recopi&eacute;
+dans <filename>/usr/ports/distfiles</filename>
+(avec la commande <command>mv</>) pour que FreeBSD le trouve.
+(Utilisez le transfert de fichier en mode binaire!) Revenez ensuite dans
+<filename>/usr/local/kermit</filename>, trouvez le sous-r&eacute;pertoire o&ugrave; est
+<filename>Makefile</>, et tapez <command>make all install</>.</para>
+<para>Il peut aussi arriver quand vous installez des logiciels pr&eacute;-compil&eacute;s ou
+non qu'un autre logiciel soit n&eacute;cessaire. Si l'installation s'interrompt avec
+un message du style <errorname>can't find unzip</errorname>, vous devez d'abord
+installer le logiciel unzip avant de continuer.</para>
+<para>Un fois le logiciel install&eacute;, tapez <command>rehash</> pour que FreeBSD
+relise la liste des fichiers dans les chemins d'acc&egrave;s par d&eacute;faut, de fa&ccedil;on
+&agrave; ce qu'il sache ce qui s'y trouve. (Si vous obtenez de nombreux messages
+d'erreur <errorname>path not found</> avec les commandes
+<command>whereis</> ou <command>which</command>, ajoutez les r&eacute;pertoires
+n&eacute;cessaires &agrave; la liste des chemins d'acc&egrave;s par d&eacute;faut d&eacute;finis dans le
+fichier <filename>.cshrc</filename> de votre r&eacute;pertoire utilisateur. L'instruction
+path d'Unix fonctionne de la m&ecirc;me fa&ccedil;on que sous DOS, &agrave; ceci pr&egrave;s que, pour des
+raisons de s&eacute;curit&eacute;, le r&eacute;pertoire courant n'y est pas d&eacute;fini (par d&eacute;faut); si
+le programme que vous cherchez se trouve dans le r&eacute;pertoire courant, vous devrez
+faire pr&eacute;c&eacute;der le nom du programme de <filename>./</filename> pour l'ex&eacute;cuter
+(pas d'espace apr&egrave;s le &ldquo;<filename>/</filename>&rdquo;.) </para>
+<para>Vous voudrez peut-&ecirc;tre installer la version la plus r&eacute;cente de Netscape
+depuis leur <ulink url="ftp://ftp.netscape.com">site ftp</ulink>. (Netscape
+a besoin du gestionnaire graphique X Window.) Il vous faut la version
+&ldquo;unknown bsd&rdquo;. Appliquez au fichier t&eacute;l&eacute;charg&eacute; les commandes
+<command>gunzip <replaceable>nom_de_fichier</></> puis <command>tar xvf
+<replaceable>nom_de_fichier</></>, recopiez l'ex&eacute;cutable dans
+<filename>/usr/local/bin</filename> ou dans tout autre r&eacute;pertoire o&ugrave; vous mettez les programmes, <command>rehash</>, et ajoutez les lignes suivantes aux fichiers
+<filename>.cshrc</filename> dans les r&eacute;pertoires de tous les
+utilisateurs ou (plus simplement) au fichier
+<filename>/etc/csh.cshrc</filename> de d&eacute;marrage de l'interpr&eacute;teur de commandes
+csh applicable &agrave; tous les utilisateurs:
+<informalexample>
+<programlisting>setenv XKEYSYMDB /usr/X11R6/lib/X11/XKeysymDB
+setenv XNLSPATH /usr/X11R6/lib/X11/nls</>
+</informalexample>
+Ce qui pr&eacute;suppose que les fichiers <filename>XKeysymDB</> et le r&eacute;pertoire
+<filename>nls</> existent dans <filename>/usr/X11R6/lib/X11</filename>; s'ils
+n'y sont pas, trouvez-les et recopiez-les dans ce r&eacute;pertoire.</para>
+
+<para>Si vous aviez auparavant install&eacute; Netscape depuis le CDROM (ou par
+ftp), ne remplacez pas <filename>/usr/local/bin/netscape</filename> par
+le nouveau binaire; ce fichier n'est qu'une proc&eacute;dure qui positionne des
+variables d'environnement. Au lieu de cela, renommez le nouveau fichier
+binaire en <filename>netscape.bin</filename> et installez-le &agrave; la place
+de l'ancien, qui s'appelle <filename>/usr/local/lib/netscape/netscape.bin</filename>.</para>
+</sect1>
+<sect1>
+<title>Votre Environnement de Travail</title>
+<para>Votre interpr&eacute;teur de commandes est la composante la plus importante de
+votre environnement de travail. C'est l'&eacute;quivalent de COMMAND.COM sous DOS.
+C'est lui qui analyse les commandes que vous tapez au clavier et communique
+avec le reste du syst&egrave;me d'exploitation. Vous pouvez aussi &eacute;crire des
+proc&eacute;dures, qui sont l'&eacute;quivalent des fichiers .BAT de DOS.</para>
+<para>Deux interpr&eacute;teurs de commandes sont pr&eacute;-install&eacute;s par FreeBSD : csh et
+sh. csh est utile pour le travail en ligne de commande, mais vous devriez mieux
+&eacute;crire vos proc&eacute;dures pour sh (ou bash). <command>echo $SHELL</command> vous
+retourne le nom de l'interpr&eacute;teur que vous utilisez actuellement.</para>
+<para>L'interpr&eacute;teur csh est commode, mais tcsh fait tout ce que fait csh et
+plus encore. Il vous permet de rappeler des commandes avec les touches fl&egrave;ches
+et de les &eacute;diter. Il sait compl&eacute;ter les noms de fichiers avec la touche Tab (csh
+utilise la touche Echap) et il vous permet de revenir dans le r&eacute;pertoire o&ugrave; vous
+&eacute;tiez auparavant avec <command>cd -</command>. Il est aussi plus facile de
+modifier l'invite du syst&egrave;me avec tcsh. Il vous rend la vie beaucoup plus
+facile.</para>
+<para>Voici les trois &eacute;tapes pour installer un nouvel interpr&eacute;teur de
+commandes:</para>
+<para>Installez l'interpr&eacute;teur, pr&eacute;-compil&eacute; ou non, comme vous le feriez pour
+n'importe quel autre logiciel. Utilisez <command>rehash</command> puis
+<command>which tcsh</command> (en supposant que vous installiez tcsh) pour vous
+assurer qu'il est bien install&eacute;.</para>
+<para>Sous le compte root, &eacute;ditez le fichier <filename>/etc/shells</filename>,
+ajoutez-y une ligne pour le nouvel interpr&eacute;teur, dans notre cas
+/usr/local/bin/tcsh, et enregistrez votre modification. (certaines proc&eacute;dures
+d'installation font cela pour vous.)</para>
+<para>Utilisez <command>chsh</command> pour changer de fa&ccedil;on permanente
+d'interpr&eacute;teur de commandes, ou tapez <command>tcsh</command> sous l'invite
+du syst&egrave;me pour changer d'interpr&eacute;teur sans ouvrir de nouvelle session.</para>
+<para>Note: Il peut &ecirc;tre dangereux de changer l'interpr&eacute;teur de commandes du
+compte root en autre chose que sh ou csh avec les premi&egrave;res versions de FreeBSD
+et de nombreuses autres versions d'Unix; vous pourriez ne plus avoir
+d'interpr&eacute;teur de commandes quand le syst&egrave;me passe en mode mono-utilisateur.
+La solution est d'utiliser <command>su -m</command> pour devenir root et
+disposer de tcsh, parce que l'interpr&eacute;teur de commandes est partie int&eacute;grante
+de l'environnement. Vous pouvez rendre ce fonctionnement d&eacute;finitif en ajoutant
+un alias dans votre fichier <filename>.tchsrc</filename>:</para>
+<informalexample><screen>alias su su -m</screen>
+</informalexample>
+<para>Quand tcsh d&eacute;marre, il lit les fichiers
+<filename>/etc/csh.cshrc</filename> et <filename>/etc/csh.login</filename>.
+Il lit aussi le fichier <filename>.login</filename> de votre r&eacute;pertoire
+utilisateur, ainsi que le fichier <filename>.cshrc</filename>, &agrave; moins que vous
+n'ayez un fichier <filename>.tchsrc</filename>. Vous pouvez facilement en
+cr&eacute;er un en copiant simplement <filename>.cshrc</filename> dans
+<filename>.tcshrc</filename>.</para>
+<para>Maintenant que vous avez install&eacute; tcsh, vous pouvez modifier l'invite
+du syst&egrave;me. Vous trouverez plus de d&eacute;tails dans les pages de manuel de tcsh,
+mais voici une ligne que vous pouvez mettre dans votre fichier
+<filename>.tchsrc</filename>, qui vous dira combien de commandes vous avez
+tap&eacute;es, quelle heure il est, et dans quel r&eacute;pertoire vous vous
+trouvez. Un > sera aussi
+affich&eacute; si vous &ecirc;tes un utilisateur ordinaire et un # si vous &ecirc;tes root, mais
+tcsh fait cela de toute fa&ccedil;on:</para>
+<informalexample><screen>set prompt = "%h %t %~ %#"</screen>
+</informalexample>
+<para>Mettez cette ligne &agrave; la place de la ligne "set prompt" s'il y en a d&eacute;j&agrave;
+une, ou apr&egrave;s la ligne "if($?prompt) then" sinon. Mettez l'ancienne ligne en
+commentaire; vous pourrez toujours y revenir si vous le souhaitez. N'oubliez
+pas les espaces et les guillemets. Vous pouvez forcer la relecture du fichier
+<filename>.tchsrc</filename> en tapant <command>source .tcshrc</command>.</para>
+<para>Vous pouvez obtenir la liste des autres variables d'environnement qui ont
+&eacute;t&eacute; positionn&eacute;es avec la commande <command>env</command>. Le r&eacute;sultat vous
+indiquera entre autres quels sont votre &eacute;diteur et votre gestionnaire de page
+affich&eacute;e par d&eacute;faut, et quel type de terminal vous utilisez. Une
+commande utile si vous vous connectez &agrave; distance et ne pouvez ex&eacute;cuter un
+programme parce que le terminal n'est pas adapt&eacute; est
+<command>setenv TERM vt100</command>.</para>
+</sect1>
+<sect1>
+<title>Autres</title>
+<para>En tant que root, vous pouvez d&eacute;monter le CDROM avec <command>/sbin/umount
+/cdrom</>, le sortir du lecteur, en mettre un autre, et monter ce dernier avec
+<command>/sbin/mount_cd9660 /dev/cd0a /cdrom</> en supposant que
+<hardware>cd0a</> est le nom du p&eacute;riph&eacute;rique associ&eacute; &agrave; votre lecteur de
+CDROMs.</para>
+<para>Le syst&egrave;me de fichier actif&nbsp;-&nbsp;le deuxi&egrave;me CDROM de la
+distribution de FreeBSD&nbsp;-&nbsp;est utile si vous manquez d'espace disque.
+Vous pouvez essayez d'utiliser <command>emacs</> ou des jeux depuis le
+cdrom. Vous devrez utiliser <command>lndir</>, qui est install&eacute; en m&ecirc;me temps
+que le gestionnaire graphique X Window, pour dire au(x) programme(s)
+o&ugrave; trouver les fichiers dont il a besoin, parce qu'ils se trouvent dans le
+syst&egrave;me de fichiers <filename>/cdrom</filename> et non dans
+<filename>/usr</filename> et ses sous-r&eacute;pertoires, o&ugrave; ils devraient
+normalement &ecirc;tre. Lisez <command>man lndir</>.</para>
+<para>Vous pouvez supprimer un utilisateur (par example, jacques) en utilisant
+la commande <command>vipw</> pour &eacute;diter le fichier <filename>master.passwd</filename>
+(n'utilisez pas <command>vi</> directement sur le fichier
+<filename>master.passwd</filename>); effacez la ligne pour jacques et sauvez le
+fichier. Editez ensuite <filename>/etc/group</filename> et supprimez toutes
+les occurences de jacques.
+Enfin, allez dans <filename>/usr/home</filename> et utilisez
+<command>rm -R jacques</command> (pour effacer les fichiers et sous-r&eacute;pertoires
+du r&eacute;pertoire utilisateur de jacques).</para>
+</sect1>
+<sect1>
+<title>Vos Commentaires sont la Bienvenue</title>
+<para>Si vous utilisez ce guide, je suis interess&eacute;e de savoir o&ugrave; il ne vous est
+pas suffisament clair et ce que vous trouvez qu'il y manque, et aussi s'il vous
+a &eacute;t&eacute; utile. <footnote><para>N.d.T.: en anglais !</para></footnote>
+Mes remerciements &agrave; Eugene W. Stark, professeur d'informatique
+&agrave; SUNY-Stony Brook, et &agrave; John Fieber pour ses commentaires pertinents.</para>
+<para>Annelise Anderson, <email>andrsn@hoover.stanford.edu</></para>
+</sect1>
+</article>
diff --git a/fr_FR.ISO8859-1/articles/ntfs/Makefile b/fr_FR.ISO8859-1/articles/ntfs/Makefile
new file mode 100644
index 0000000000..72c1d9b8c9
--- /dev/null
+++ b/fr_FR.ISO8859-1/articles/ntfs/Makefile
@@ -0,0 +1,20 @@
+#
+# The FreeBSD Documentation Project
+# The FreeBSD French Documentation Project
+#
+# $FreeBSD$
+# Original revision: 1.4
+#
+
+DOC?= article
+
+FORMATS?= html
+
+INSTALL_COMPRESSED?=gz
+INSTALL_ONLY_COMPRESSED?=
+
+SRCS= article.sgml
+
+DOC_PREFIX?= ${.CURDIR}/../../..
+
+.include "${DOC_PREFIX}/share/mk/doc.project.mk"
diff --git a/fr_FR.ISO8859-1/articles/ntfs/article.sgml b/fr_FR.ISO8859-1/articles/ntfs/article.sgml
new file mode 100644
index 0000000000..a1922b42a2
--- /dev/null
+++ b/fr_FR.ISO8859-1/articles/ntfs/article.sgml
@@ -0,0 +1,490 @@
+<!--
+ The FreeBSD Documentation Project
+ The FreeBSD French Documentation Project
+
+ $FreeBSD$
+ Original revision: n.nn
+-->
+
+<!DOCTYPE ARTICLE PUBLIC "-//FreeBSD//DTD DocBook V3.1-Based Extension//EN" [
+<!ENTITY % man PUBLIC "-//FreeBSD//ENTITIES DocBook Manual Page Entities//EN"> %man;
+<!ENTITY % urls PUBLIC "-//FreeBSD//ENTITIES Common Document URL Entities//FR"> %urls;
+<!ENTITY % abstract PUBLIC "-//FreeBSD//ENTITIES DocBook Abstract Entities//FR"> %abstract;
+<!ENTITY % artheader PUBLIC "-//FreeBSD//ENTITIES DocBook ArtHeader Entities//FR"> %artheader;
+<!ENTITY % translators PUBLIC "-//FreeBSD//ENTITIES DocBook Translator Entities//FR"> %translators;
+
+<!ENTITY % authors SYSTEM "../../../en_US.ISO_8859-1/books/handbook/authors.ent"> %authors;
+<!ENTITY % mailing-lists SYSTEM "../../books/handbook/mailing-lists.ent"> %mailing-lists;
+ <!ENTITY rel.current CDATA "3.2">
+]>
+
+<article id="ntfs" lang="fr">
+ <artheader>
+ <title>Installer le pilote NTFS pour FreeBSD</title>
+ &artheader.copyright;
+ <abstract>
+ &abstract.license;
+ &abstract.disclaimer;
+ &trans.a.laurand;
+ </abstract>
+ </artheader>
+
+ <sect1>
+ <title>Installer le pilote NTFS pour FreeBSD 3.x</title>
+
+ <para>Pour installer ce pilote, vous aurez besoin de recompiler un noyau car
+ les fichiers d'en-t&ecirc;te utilis&eacute;s seront mis &agrave; niveau.
+ Pour autant, aucun changement dans le fichier de configuration ne sera
+ n&eacute;cessaire. Si vous n'avez pas install&eacute; les sources du
+ noyau, vous pouvez soit recourir &agrave; <filename>sysinstall</filename>,
+ ou bien entrer successivement en tant que
+ <username>root</username>&nbsp;:</para>
+
+ <informalexample>
+<screen>&prompt.root <userinput>mount -t cd9660 /dev/cd0c /mnt</userinput>
+&prompt.root <userinput> cd /mnt/src</userinput>
+&prompt.root <userinput> cat ssys.?? | tar --unlink -zxpvf - -C /usr/src</userinput></screen>
+ </informalexample>
+
+ <para>Le pilote requiert &eacute;galement le fichier
+ <filename>mntopt.h</filename> de l'archive source. Pour
+ extraire son contenu&nbsp;:</para>
+
+ <informalexample>
+<screen>&prompt.root <userinput> cd /mnt/src</userinput>
+&prompt.root <userinput> cat ssbin.?? | tar --unlink -zxpvf - -C /usr/src sbin/mount</userinput></screen>
+ </informalexample>
+
+ <para>Ensuite, en tant que <username>root</username>, cr&eacute;ez un
+ r&eacute;pertoire pour y extraire le contenu de l'archive du pilote
+ ntfs&nbsp;:</para>
+
+ <informalexample>
+<screen>&prompt.root <userinput> cd /tmp</userinput>
+&prompt.root <userinput> mkdir ntfs</userinput></screen>
+ </informalexample>
+
+ <para>T&eacute;l&eacute;chargez le fichier d'archive compress&eacute;
+ contenant le code source du pilote ainsi que son fichier de mise &agrave;
+ niveau&nbsp;-&nbsp;<foreignphrase>patch</foreignphrase>&nbsp;-&nbsp;dans
+ <filename>/tmp/ntfs</filename>. Les deux fichiers dont vous avez besoin
+ sont <filename>ntfs-0.17beta.tgz</filename> et
+ <filename>ntfs.0.17beta-0.18beta.diff</filename>.</para>
+
+ <para>Extrayez le contenu du fichier d'archive&nbsp;:</para>
+
+ <informalexample>
+<screen>&prompt.root <userinput> cd /tmp/ntfs</userinput>
+&prompt.root <userinput> tar xzvf ntfs-0.17beta.tgz</userinput></screen>
+ </informalexample>
+
+ <para>Il se peut que le num&eacute;ro de version (0.17beta) soit
+ diff&eacute;rent.</para>
+
+ <para>Ensuite, appliquez la mise &agrave; niveau de la version 0.17 &agrave;
+ la version 0.18.</para>
+
+ <informalexample>
+<screen>&prompt.root <userinput> cd /tmp/ntfs/src/sys/ntfs</userinput>
+&prompt.root <userinput> patch < /tmp/ntfs/ntfs.0.17beta-0.18beta.diff</userinput></screen>
+ </informalexample>
+
+ <para>Prenez garde &agrave; ce qu'aucune partie ne fasse d&eacute;faut.
+ <citerefentry><refentrytitle>patch</refentrytitle>
+ <manvolnum>1</manvolnum></citerefentry> g&eacute;n&egrave;re des copies de
+ sauvegarde des fichiers qu'il met &agrave; jour (avec l'extension
+ <filename>.orig</filename>), par cons&eacute;quent, si un probl&egrave;me
+ survient, recopiez les fichiers <filename>.orig</filename>, et
+ recherchez-en la cause.</para>
+
+ <para>Recopiez maintenant les fichiers sources l&agrave; o&ugrave; ils
+ doivent normalement &ecirc;tre&nbsp;:</para>
+
+ <informalexample>
+<screen>&prompt.root <userinput>cd /tmp/ntfs</userinput>
+&prompt.root <userinput>cp -p -R -i src /usr/</userinput></screen>
+ </informalexample>
+
+ <para>Il faut ensuite mettre &agrave; jour
+ <filename>vnode.h</filename>&nbsp;:</para>
+
+ <informalexample>
+<screen>&prompt.root <userinput>cd /usr/src/sys/sys</userinput>
+&prompt.root <userinput>patch < /tmp/ntfs/diff/vnode.h.diff</userinput></screen>
+ </informalexample>
+
+ <para>Encore une fois, v&eacute;rifiez que la mise &agrave; niveau s'est
+ bien pass&eacute;e, vous devriez avoir&nbsp;:</para>
+
+ <programlisting>
+Hmm... Looks like a new-style context diff to me...
+The text leading up to this was:
+--------------------------
+|*** ./sys/sys/vnode.h.orig Fri Jan 1 06:12:51 1999
+|--- ./sys/sys/vnode.h Wed Dec 2 12:31:31 1998
+--------------------------
+Patching file vnode.h using Plan A...
+Hunk #1 succeeded at 62.
+done
+ </programlisting>
+
+ <para>Vous allez maintenant pouvoir maintenant compiler l'ex&eacute;cutable
+ <filename>mount_ntfs</filename>&nbsp;:</para>
+
+ <informalexample>
+<screen>&prompt.root <userinput>cd /usr/src/sbin/mount_ntfs</userinput>
+&prompt.root <userinput>make</userinput>
+&prompt.root <userinput>make install</userinput></screen>
+ </informalexample>
+
+<para>ainsi que le module du noyau&nbsp;:</para>
+
+ <informalexample>
+<screen>&prompt.root <userinput>cd /usr/src/sys/modules/ntfs</userinput>
+&prompt.root <userinput>make</userinput>
+&prompt.root <userinput>make install</userinput></screen>
+ </informalexample>
+
+ <para>Pour finir, il faudra aussi recompiler le noyau (parce que
+ <filename>vnode.h</filename> a &eacute;t&eacute; modifi&eacute;). Si vous
+ utilisez le noyau <filename>GENERIC</filename>, faites une copie
+ du fichier de configuration du noyau <filename>GENERIC</filename> (ce
+ n'est pas absolument n&eacute;cessaire, mais de cette mani&egrave;re le
+ nom du noyau sera mis &agrave; jour, et il sera plus facile d'identifier
+ celui avec lequel vous d&eacute;marrez). J'ai pour habitude d'utiliser
+ des noms assez repr&eacute;sentatifs, aussi
+ <filename>GENERIC_NTFS</filename> me semble-t-il
+ appropri&eacute;&nbsp;:</para>
+
+ <informalexample>
+<screen>&prompt.root <userinput>cd /usr/src/sys/i386/conf</userinput>
+&prompt.root <userinput>cp GENERIC GENERIC_NTFS</userinput>
+&prompt.root <userinput>/usr/sbin/config GENERIC_NTFS</userinput>
+&prompt.root <userinput>cd ../../compile/GENERIC_NTFS</userinput>
+&prompt.root <userinput>make depend</userinput>
+&prompt.root <userinput>make</userinput>
+&prompt.root <userinput>make install</userinput></screen>
+ </informalexample>
+
+ <para>Ok, parfait, mais avant de red&eacute;marrer avec votre nouveau noyau,
+ il faut identifier la
+ tranche&nbsp;-&nbsp;<foreignphrase>slice</foreignphrase>&nbsp;-&nbsp;NTFS.
+ Le num&eacute;ro de cette tranche va d&eacute;pendre du format de votre
+ disque. Pour l'instant, si vous avez une tranche FAT suivie d'une tranche
+ NTFS et que votre tranche FreeBSD est la derni&egrave;re, elles seront
+ num&eacute;rot&eacute;es (&ldquo;<literal>da</literal>&rdquo; ou
+ peut-&ecirc;tre &ldquo;<literal>sd</literal>&rdquo; pour les disques SCSI,
+ si vous avez mis &agrave; jour votre syst&egrave;me 2.2.x pour passer en
+ 3.1, et ce sera &ldquo;<literal>wd</literal>&rdquo; si vous avez des
+ disques IDE)&nbsp;:</para>
+
+ <programlisting>
+FAT - da0s1
+NTFS - da0s2
+FreeBSD - da0s3
+ </programlisting>
+
+ <para>Si votre tranche NTFS et votre tranche FreeBSD sont invers&eacute;es
+ et que vous avez install&eacute; NT avant FreeBSD, ce qui est d'ailleurs la m&eacute;thode recommand&eacute;e, vos num&eacute;ros de
+ tranches seront les m&ecirc;mes, mais pas dans le m&ecirc;me
+ ordre&nbsp;:</para>
+
+ <programlisting>
+FAT - da0s1
+FreeBSD - da0s3
+NTFS - da0s2
+ </programlisting>
+
+ <para>Vous pouvez jeter un coup d'oeil au fichier
+ <filename>/etc/fstab</filename> pour &ecirc;tre s&ucirc;r du num&eacute;ro
+ de la tranche de FreeBSD (et &eacute;galement de celui de la tranche
+ FAT).</para>
+
+ <para>Il y a cependant une exception &agrave; tout cela, lorsque votre
+ tranche NTFS est une &ldquo;partition logique&rdquo; dans une
+ &ldquo;partition &eacute;tendue&rdquo;. Les &ldquo;partitions
+ logiques&rdquo; sont toujours num&eacute;rot&eacute;es &agrave; partir de
+ 5, peut importe le nombre de &ldquo;partitions&rdquo; sur le disque. Mon
+ disque, par exemple, est agenc&eacute; comme ceci&nbsp;:</para>
+
+ <programlisting>
+FAT - da0s1
+FreeBSD - da0s3
+Extended partition - da0s2
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;NTFS - da0s5
+ </programlisting>
+
+ <para>Notez qu'une &ldquo;partition &eacute;tendue;&rdquo; se voit attribuer
+ une
+ tranche&nbsp;-&nbsp;&ldquo;<foreignphrase>slice</foreignphrase>&rdquo;,
+ mais celle-ci ne peut pas &ecirc;tre utilis&eacute;e en tant que telle,
+ c'est-&agrave;-dire que vous ne pouvez pas la monter.</para>
+
+ <para>Apr&egrave;s avoir identifi&eacute; la tranche NTFS, vous pouvez
+ ajouter une entr&eacute;e dans le fichier
+ <filename>/etc/fstab</filename>. Notez que l'option <literal>ro</literal>
+ signifie que le montage se fera en lecture seule (souvenez-vous que le
+ pilote est en lecture seule). Cette entr&eacute;e provoquera le montage
+ automatique de la tranche NTFS lors du d&eacute;marrage. Si vous voulez
+ d&eacute;sactiver cette derni&egrave;re option, modifiez
+ <literal>ro</literal> en <literal>ro,noauto</literal>, sans aucun espace
+ ni avant ni apr&egrave;s la virgule&nbsp;! Vous aurez &eacute;galement
+ besoin d'un point de montage, <filename>/ntfs</filename> dans cet
+ exemple, ou si vous pr&eacute;ferez, <filename>/mnt</filename> &agrave;
+ la place de <filename>/ntfs</filename> dans le fichier
+ <filename>/etc/fstab</filename>&nbsp;:</para>
+
+ <programlisting>
+# Device Mountpoint FStype Options Dump Pass#
+/dev/da0s5 /ntfs ntfs ro 0 0
+ </programlisting>
+
+ <para>Si vous pr&eacute;ferez ne pas monter la &ldquo;partition&rdquo; au
+ d&eacute;marrage, montez-la ensuite en tant que <username>root</username>
+ avec la commande&nbsp;:</para>
+
+ <informalexample>
+<screen>&prompt.root <userinput>mount -t ntfs /dev/da0s5 /ntfs</userinput></screen>
+ </informalexample>
+
+ <para>Bien entendu, ajustez le fichier de pilote de
+ p&eacute;riph&eacute;rique ainsi que le point de montage &agrave; votre
+ syst&egrave;me.</para>
+
+ <para>C'est fait&nbsp;! Il ne reste plus qu'&agrave;
+ red&eacute;marrer.</para>
+
+ <para>Bon courage&nbsp;! </para>
+
+ </sect1>
+
+ <sect1>
+ <title>Installation du pilote NTFS sous FreeBSD 2.2.X</title>
+
+ <para>Pour installer ce pilote, vous aurez besoin de recompiler un noyau car
+ les fichiers d'en-t&ecirc;te utilis&eacute;s seront mis &agrave; niveau.
+ Pour autant, aucun changement dans le fichier de configuration ne sera
+ n&eacute;cessaire. Si vous n'avez pas install&eacute; les sources du
+ noyau, vous pouvez soit recourir &agrave; <filename>sysinstall</filename>,
+ ou bien entrer successivement en tant que
+ <username>root</username>&nbsp;:</para>
+
+ <informalexample>
+<screen>&prompt.root <userinput>mount -t cd9660 /dev/cd0c /mnt</userinput>
+&prompt.root <userinput> cd /mnt/src</userinput>
+&prompt.root <userinput> cat ssys.?? | tar --unlink -zxpvf - -C /usr/src</userinput></screen>
+ </informalexample>
+
+ <para>Le pilote requiert &eacute;galement les fichiers
+ <filename>mntopt.h</filename> de l'archive source. Pour extraire son
+ contenu, tapez&nbsp;:</para>
+
+ <informalexample>
+<screen>&prompt.root <userinput> cd /mnt/src</userinput>
+&prompt.root <userinput> cat ssbin.?? | tar --unlink -zxpvf - -C /usr/src sbin/mount</userinput></screen>
+ </informalexample>
+
+ <para>Ensuite, en tant que <username>root</username>, cr&eacute;ez un
+ r&eacute;pertoire pour extraire le contenu de l'archive du pilote
+ ntfs&nbsp;:</para>
+
+ <informalexample>
+<screen>&prompt.root <userinput> cd /tmp</userinput>
+&prompt.root <userinput> mkdir ntfs</userinput></screen>
+ </informalexample>
+
+ <para>T&eacute;l&eacute;chargez le fichier d'archive compress&eacute;
+ contenant le code source du pilote ainsi que son fichier de mise &agrave;
+ jour dans <filename>/tmp/ntfs</filename>.</para>
+
+ <para>Extrayez le contenu de l'archive&nbsp;:</para>
+
+ <informalexample>
+<screen>&prompt.root <userinput> cd /tmp/ntfs</userinput>
+&prompt.root <userinput> tar xzvf ntfs-releng22-0.12beta.tgz</userinput></screen>
+ </informalexample>
+
+ <para>Il se peut que le num&eacute;ro de version (0.12beta) soit
+ diff&eacute;rent.</para>
+
+ <para>Recopiez maintenant les fichiers sources &agrave; l'endroit
+ ad&eacute;quat&nbsp;:</para>
+
+ <informalexample>
+<screen>&prompt.root <userinput>cd src</userinput>
+&prompt.root <userinput>cp -p -r * /usr/src</userinput></screen>
+ </informalexample>
+
+ <para>Ensuite, vous devez mettre &agrave; niveau les 3 fichiers
+ d'en-t&ecirc;te du syst&egrave;me. Utilisez l'option <option>-l</option>
+ (L minuscule) qui permet d'ignorer la diff&eacute;rence d'espacement, car
+ j'ai remarqu&eacute; que l'utilisation des touches <keycap>TAB</keycap>
+ et <keycap>Espace</keycap> rendait incompatible les fichiers originaux et
+ les fichiers <filename>diff</filename>.</para>
+
+ <informalexample>
+<screen>&prompt.root <userinput>cd /usr/src/sys/sys</userinput>
+&prompt.root <userinput>patch -l malloc.h /tmp/ntfs/diff/malloc.h.diff</userinput>
+&prompt.root <userinput>patch -l mount.h /tmp/ntfs/diff/mount.h.diff</userinput>
+&prompt.root <userinput>patch -l vnode.h /tmp/ntfs/diff/vnode.h.diff</userinput></screen>
+ </informalexample>
+
+ <para>Si cette op&eacute;ration r&eacute;ussit, vous verrez s'afficher
+ quelque chose de similaire &agrave;&nbsp;:</para>
+
+ <programlisting>
+Hmm... Looks like a new-style context diff to me...
+The text leading up to this was:
+--------------------------
+|*** ./sys/sys/vnode.h.orig Fri Jan 1 00:17:30 1999
+|--- ./sys/sys/vnode.h Fri Jan 1 00:17:35 1999
+--------------------------
+Patching file vnode.h using Plan A...
+Hunk #1 succeeded at 58.
+done
+ </programlisting>
+
+ <para>Si malencontreusement, un (ou plusieurs) fichier de mise &agrave;
+ jour faisait d&eacute;faut, sachez que
+ <citerefentry><refentrytitle>patch</refentrytitle></citerefentry>
+ fait toujours des copies des fichiers originaux avec le m&ecirc;me nom
+ suivi de l'extension <filename>.orig</filename>.</para>
+
+ <para>Maintenant, vous pouvez compiler le pilote. Il est n&eacute;cessaire
+ d'ajouter <literal>BINDIR=/usr/sbin</literal> qui n'est pas
+ d&eacute;fini dans le <filename>Makefile</filename>.</para>
+
+ <informalexample>
+<screen>&prompt.root <userinput>cd /usr/src/sbin/i386/mount_ntfs</userinput>
+&prompt.root <userinput>make</userinput>
+&prompt.root <userinput>make BINDIR=/usr/sbin install</userinput></screen>
+ </informalexample>
+
+ <para>Compilez ensuite les modules du noyau&nbsp;:</para>
+
+ <informalexample>
+<screen>&prompt.root <userinput>cd /usr/src/lkm</userinput>
+&prompt.root <userinput>make</userinput>
+&prompt.root <userinput>make install</userinput></screen>
+ </informalexample>
+
+ <para>Pour finir, vous devez recompiler le noyau. Si vous utilisez le noyau
+ <filename>GENERIC</filename>, faites une copie du fichier de configuration
+ du noyau <filename>GENERIC</filename> (ce n'est pas absolument
+ n&eacute;cessaire, mias de cette mani&egrave;re le nom du noyau sera mis
+ &agrave; jour, et ce sera plus facile pour identifier le noyau avec lequel
+ vous d&eacute;marrez). J'ai pour habitude d'utiliser des noms assez
+ repr&eacute;sentatifs, aussi <filename>GENERIC_NTFS</filename> me semble
+ appropri&eacute;&nbsp;:</para>
+
+ <informalexample>
+<screen>&prompt.root <userinput>cd /usr/src/sys/i386/conf</userinput>
+&prompt.root <userinput>cp GENERIC GENERIC_NTFS</userinput>
+&prompt.root <userinput>/usr/sbin/config GENERIC_NTFS</userinput>
+&prompt.root <userinput>cd ../../compile/GENERIC_NTFS</userinput>
+&prompt.root <userinput>make depend</userinput>
+&prompt.root <userinput>make</userinput>
+&prompt.root <userinput>make install</userinput></screen>
+ </informalexample>
+
+ <para>Ok, parfait, mais avant de red&eacute;marrer avec votre nouveau noyau,
+ il faut identifier la
+ tranche&nbsp;-&nbsp;<foreignphrase>slice</foreignphrase>&nbsp;-&nbsp;NTFS.
+ Le num&eacute;ro de cette tranche va d&eacute;pendre du format de votre
+ disque. Pour l'instant, si vous avez une tranche FAT suivie d'une tranche
+ NTFS et que votre tranche FreeBSD est la derni&egrave;re, elles seront
+ num&eacute;rot&eacute;es (remplacez &ldquo;<literal>w</literal>&rdquo; par
+ &ldquo;<literal>s</literal>&rdquo; pour les disques SCSI)&nbsp;:</para>
+
+ <programlisting>
+FAT - wd0s1
+NTFS - wd0s2
+FreeBSD - wd0s3
+ </programlisting>
+
+ <para>Si votre tranche NTFS et votre tranche FreeBSD sont invers&eacute;es
+ et que vous avez install&eacute; NT avant FreeBSD, ce qui est d'ailleurs la m&eacute;thode recommand&eacute;e, vos num&eacute;ros de
+ tranches seront les m&ecirc;mes, mais pas dans le m&ecirc;me
+ ordre&nbsp;:</para>
+
+ <programlisting>
+FAT - wd0s1
+FreeBSD - wd0s3
+NTFS - wd0s2
+ </programlisting>
+
+ <para>Vous pouvez jeter un coup d'oeil au fichier
+ <filename>/etc/fstab</filename> pour &ecirc;tre s&ucirc;r du num&eacute;ro
+ de la tranche FreeBSD (et &eacute;galement de celui de la tranche
+ FAT).</para>
+
+ <para>Il y a cependant une exception &agrave; tout cela, lorsque votre
+ tranche NTFS est une &ldquo;partition logique&rdquo; dans une
+ &ldquo;partition &eacute;tendue&rdquo;. Les &ldquo;partitions
+ logiques&rdquo; sont toujours num&eacute;rot&eacute;es &agrave; partir de
+ 5, peut importe le nombre de &ldquo;partitions&rdquo; sur le disque. Mon
+ disque, par exemple, est agenc&eacute; comme ceci&nbsp;:</para>
+
+ <programlisting>
+FAT - sd0s1
+FreeBSD - sd0s3
+Extended partition - sd0s2
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;NTFS - sd0s5
+ </programlisting>
+
+ <para>Notez qu'une &ldquo;partition &eacute;tendue&rdquo; se voit attribuer
+ une
+ tranche&nbsp;-&nbsp;&ldquo;<foreignphrase>slice</foreignphrase>&rdquo;,
+ mais celle-ci ne peut pas &ecirc;tre utilis&eacute;e en tant que telle,
+ c'est-&agrave;-dire que vous ne pouvez pas la monter.</para>
+
+ <para>Apr&egrave;s avoir identifi&eacute; la tranche NTFS, vous pouvez
+ ajouter une entr&eacute;e dans le fichier
+ <filename>/etc/fstab</filename>. Notez que l'option <literal>ro</literal>
+ signifie que le montage se fera en lecture seule (souvenez-vous que le
+ pilote est en lecture seule). Cette entr&eacute;e provoquera le montage
+ automatique de la tranche NTFS lors du d&eacute;marrage. Si vous voulez
+ d&eacute;sactiver cette derni&egrave;re option, modifiez
+ <literal>ro</literal> en <literal>ro,noauto</literal>, sans aucun espace
+ ni avant ni apr&egrave;s la virgule&nbsp;! Vous aurez &eacute;galement
+ besoin d'un point de montage, <filename>/ntfs</filename> dans cet
+ exemple, ou si vous pr&eacute;ferez, <filename>/mnt</filename> &agrave;
+ la place de <filename>/ntfs</filename> dans le fichier
+ <filename>/etc/fstab</filename>&nbsp;:</para>
+
+ <programlisting>
+# Device Mountpoint FStype Options Dump Pass#
+/dev/sd0s5 /ntfs ntfs ro 0 0
+ </programlisting>
+
+ <para>Si vous pr&eacute;ferez ne pas monter la &ldquo;partition&rdquo; au
+ d&eacute;marrage, montez-la ensuite en tant que <username>root</username>
+ avec la commande&nbsp;:</para>
+
+ <informalexample>
+<screen>&prompt.root <userinput>mount -t ntfs /dev/sd0s5 /ntfs</userinput></screen>
+ </informalexample>
+
+ <para>Bien entendu, ajustez le fichier de pilote de
+ p&eacute;riph&eacute;rique ainsi que le point de montage &agrave; votre
+ syst&egrave;me.</para>
+
+ <para>C'est fait&nbsp;! Il ne reste plus qu'&agrave;
+ red&eacute;marrer. Si vous avez choisi de monter la
+ &ldquo;partition&rdquo; au d&eacute;marrage, vous verrez s'afficher
+ quelques messages de diagnostic tout &agrave; fait
+ inoffensifs&nbsp;:</para>
+
+ <programlisting>
+ntfs_init():
+ntfs_mountfs(): bps: 512, spc: 1, media: f8, mftrecsz: 2 (2 sects)
+ntfs_mountfs(): mftcn: 0x315e5|0x287245
+ntfs_mountfs(): case-sens., uid: 0, gid: 0, mode: 777
+ntfs_iget(): read &#36;MFT ntnode
+ntfs_mountfs(): reading &#36;UpCase....OK
+ </programlisting>
+
+ <para>Bon courage&nbsp;! </para>
+
+ </sect1>
+</article>
diff --git a/fr_FR.ISO8859-1/articles/ppp/Makefile b/fr_FR.ISO8859-1/articles/ppp/Makefile
new file mode 100644
index 0000000000..72c1d9b8c9
--- /dev/null
+++ b/fr_FR.ISO8859-1/articles/ppp/Makefile
@@ -0,0 +1,20 @@
+#
+# The FreeBSD Documentation Project
+# The FreeBSD French Documentation Project
+#
+# $FreeBSD$
+# Original revision: 1.4
+#
+
+DOC?= article
+
+FORMATS?= html
+
+INSTALL_COMPRESSED?=gz
+INSTALL_ONLY_COMPRESSED?=
+
+SRCS= article.sgml
+
+DOC_PREFIX?= ${.CURDIR}/../../..
+
+.include "${DOC_PREFIX}/share/mk/doc.project.mk"
diff --git a/fr_FR.ISO8859-1/articles/ppp/article.sgml b/fr_FR.ISO8859-1/articles/ppp/article.sgml
new file mode 100755
index 0000000000..100f07af58
--- /dev/null
+++ b/fr_FR.ISO8859-1/articles/ppp/article.sgml
@@ -0,0 +1,1894 @@
+<!--
+ The FreeBSD Documentation Project
+ The FreeBSD French Documentation Project
+
+ $FreeBSD$
+ Original revision: n.nn
+-->
+
+<!DOCTYPE ARTICLE PUBLIC "-//FreeBSD//DTD DocBook V3.1-Based Extension//EN" [
+<!ENTITY % man PUBLIC "-//FreeBSD//ENTITIES DocBook Manual Page Entities//EN"> %man;
+<!ENTITY % urls PUBLIC "-//FreeBSD//ENTITIES Common Document URL Entities//FR"> %urls;
+<!ENTITY % abstract PUBLIC "-//FreeBSD//ENTITIES DocBook Abstract Entities//FR"> %abstract;
+<!ENTITY % artheader PUBLIC "-//FreeBSD//ENTITIES DocBook ArtHeader Entities//FR"> %artheader;
+<!ENTITY % translators PUBLIC "-//FreeBSD//ENTITIES DocBook Translator Entities//FR"> %translators;
+
+<!ENTITY % authors SYSTEM "../../../en_US.ISO_8859-1/books/handbook/authors.ent"> %authors;
+<!ENTITY % mailing-lists SYSTEM "../../books/handbook/mailing-lists.ent"> %mailing-lists;
+ <!ENTITY rel.current CDATA "3.2">
+]>
+
+<article lang="fr">
+<artheader>
+<title>P&eacute;dants Principes PPP</title>
+&artheader.copyright;
+<abstract>
+&abstract.license;
+&abstract.disclaimer;
+&trans.a.haby;
+</abstract>
+</artheader>
+<sect1>
+<title>Introduction</title>
+<para>Le protocole de connexion PPP en mode utilisateur de la version 2.2 de
+FreeBSD (appel&eacute; aussi &ldquo;IIJ-PPP&rdquo;) supporte maintenant
+la r&eacute;&eacute;criture de paquets pour les connexions &agrave; l'Internet. Cette possibilit&eacute;,
+connue aussi sous le nom de &ldquo;Mascarade (Masquerading)&rdquo;,
+&ldquo;Alias IP (IP Aliasing)&rdquo;, ou &ldquo;Traduction d'Adresse
+R&eacute;seau (Network Adresse Translation)&rdquo;, permet &agrave; un syst&egrave;me FreeBSD
+d'interagir comme routeur de connexion &agrave; la demande entre un r&eacute;seau local
+et un fournisseur d'acc&egrave;s &agrave; Internet. Les machines du r&eacute;seau local peuvent
+utiliser l'unique connexion de la machine FreeBSD &agrave; l'Internet pour &eacute;changer
+des informations avec ce dernier.</para>
+<sect2>
+<title>But de ce document</title>
+<para>Ce document<footnote><para>N.d.T: Si vous souhaitez consulter le document
+original en langue anglaise, il se trouve sur
+<ulink url="http://www.FreeBSD.org/tutorials/ppp/ppp.html">http://www.FreeBSD.org/ppp/ppp.html</ulink>.</para></footnote>
+vous explique comment:</para>
+<itemizedlist>
+<listitem><para>Configurer le syst&egrave;me FreeBSD pour permettre les connexions
+vers l'ext&eacute;rieur,</para></listitem>
+<listitem><para>Partager une seule connexion vers l'ext&eacute;rieur avec les autres
+machines du r&eacute;seau,</para></listitem>
+<listitem><para>Configurer les machines Windows pour utiliser la machine
+FreeBSD comme passerelle vers l'Internet.</para></listitem>
+</itemizedlist>
+<para>Bien que l'objectif de ce document soit avant tout d'expliquer comment
+configurer la traduction d'adresses IP, il fournit aussi des exemples
+d'installation et de configuration des autres composants. Chaque section
+est ind&eacute;pendante et peut &ecirc;tre utilis&eacute;e pour configurer divers aspects d'une
+passerelle FreeBSD entre plusieurs r&eacute;seaux.</para>
+</sect2>
+</sect1>
+<sect1 id="sect2">
+<title>Mise en oeuvre du r&eacute;seau local</title>
+<para>Bien que le programme <command>ppp</command> puisse, et soit g&eacute;n&eacute;ralement
+utilis&eacute; pour fournir des services &agrave; la <emphasis>seule</emphasis> machine
+FreeBSD, il peut aussi servir &agrave; en faire une &ldquo;passerelle&rdquo; ou
+&ldquo;routeur&rdquo; entre les autres dispositifs reli&eacute;s au r&eacute;seau local
+et l'Internet ou tout autre service connect&eacute;.</para>
+<sect2>
+<title>Topologie classique du r&eacute;seau</title>
+<para>Ce document s'applique &agrave; un r&eacute;seau local dont la
+topologie est&nbsp;-&nbsp;classiquement&nbsp;-&nbsp;la suivante:</para>
+<programlisting>
+
++=========+ =======> Connexion &agrave; Internet ( Wanadoo, AOL, etc. )
+| | \
+| FreeBSD |=======
+| "Curly" |
+| |
++====+====+
+ |
+|=================+============+====| <== R&eacute;seau Local Ethernet
+ | | |
++====+====+ +====+====+ +====+====+
+| | | | | |
+| Win95 | | WFW | | WinNT |
+| "Larry" | | "Moe" | | "Shemp" |
+| | | | | |
++=========+ +=========+ +=========+
+
+</programlisting>
+</sect2>
+<sect2>
+<title>Hypoth&egrave;ses sur le r&eacute;seau local</title>
+<para>Pour les besoins de notre exemple, nous supposerons que :</para>
+<para>Il y a trois stations et un serveur reli&eacute;s par le r&eacute;seau Ethernet
+local:</para>
+<itemizedlist>
+<listitem><para>un serveur FreeBSD (&ldquo;Curly&rdquo;) avec un contr&ocirc;leur
+Ethernet NE-2000 configur&eacute; sur &ldquo;ed0&rdquo;,</para></listitem>
+<listitem><para>une station de travail Windows 95 (&ldquo;Larry&rdquo;) avec
+les pilotes TCP/IP 32-bits natifs de Microsoft,</para></listitem>
+<listitem><para>une station de travail Windows for Workgroups
+(&ldquo;Larry&rdquo;) avec les extension TCP/IP 16-bits de
+Microsoft,</para></listitem>
+<listitem><para>une station de travail Windows NT (&ldquo;Larry&rdquo;) avec
+les pilotes TCP/IP 32-bits natifs de Microsoft.</para></listitem>
+</itemizedlist>
+<para>Les adresses IP du r&eacute;seau Ethernet sur lequel se base notre exemple
+ont &eacute;t&eacute; attribu&eacute;es dans l'espace d'adresses priv&eacute;es d&eacute;fini par la RFC-1597,
+comme suit:</para>
+<programlisting>
+Nom Adresse IP
+"Curly" 192.168.1.1 # La machine FreeBSD
+"Larry" 192.168.1.2 # La machine Windows 95
+"Moe" 192.168.1.3 # La machine Windows for Workgroups
+"Shemp" 192.168.1.4 # La machine Windows NT
+</programlisting>
+<para>Nous supposerons aussi que le modem est connect&eacute; sur le premier port s&eacute;rie
+(<filename>/dev/cuaa0</filename> ou <filename>COM1:</filename> selon la
+terminologie DOS) de la machine FreeBSD.</para>
+<para>Enfin, nous supposerons que notre fournisseur d'acc&egrave;s Internet nous
+fournit automatiquement les adresses IP des deux extr&eacute;mit&eacute;s de la liaison PPP
+(point &agrave; point) : celle de notre machine FreeBSD et celle de la machine du c&ocirc;t&eacute;
+du fournisseur (adressage dynamique). Les d&eacute;tails de configuration de la
+connexion de la machine FreeBSD &agrave; l'ext&eacute;rieur sont donn&eacute;s au chapitre
+<link linkend="chap3">Configuration du syst&egrave;me FreeBSD</link>.</para>
+</sect2>
+</sect1>
+<sect1 id="chap3">
+<title>Configuration du syst&egrave;me FreeBSD</title>
+<para>Il y a trois informations &agrave; fournir au syst&egrave;me FreeBSD avant de le relier
+au r&eacute;seau local de notre exemple:</para>
+<itemizedlist>
+<listitem><para>Son nom de machine (<filename>hostname</filename>),
+&ldquo;Curly&rdquo; dans notre exemple,</para></listitem>
+<listitem><para>La configuration de son interface r&eacute;seau,</para></listitem>
+<listitem><para>Le fichier <filename>/etc/hosts</filename> (qui liste les noms
+et les adresses IP des autres machines du r&eacute;seau).</para></listitem>
+</itemizedlist>
+<para>Si vous avez install&eacute; FreeBSD via une connexion r&eacute;seau, il
+est possible que certaines de ces informations soient d&eacute;j&agrave; d&eacute;finies.</para>
+<para>M&ecirc;me si vous pensez que votre syst&egrave;me FreeBSD a d&eacute;j&agrave; &eacute;t&eacute; correctement
+configur&eacute; au moment de l'installation, il vous mieux vous assurer de la
+validit&eacute; de chacune de ces informations pour vous &eacute;viter des ennuis par la
+suite.</para>
+<sect2 id="sect31">
+<title>Contr&ocirc;ler le nom de la machine FreeBSD</title>
+<para>Il est possible que le nom de la machine FreeBSD ait &eacute;t&eacute; d&eacute;fini et
+enregistr&eacute; lors de l'installation du syst&egrave;me. Pour le v&eacute;rifier, entrez,
+&agrave; l'invite du syst&egrave;me, la commande suivante:</para>
+<para>
+<userinput>
+<prompt>#</prompt> hostname
+</userinput>
+</para>
+<para>Le nom de la machine FreeBSD sera affich&eacute; sur une seule ligne. Si ce nom
+para&icirc;t correct (c'est tr&egrave;s subjectif :-), vous pouvez passer au paragraphe
+<link linkend="sect32">Contr&ocirc;ler la configuration de l'interface Ethernet</link>.</para>
+<para>Dans notre exemple, le r&eacute;sultat de la commande <command>hostname</command>
+devrait &ecirc;tre &ldquo;curly.my.domain&rdquo; si le nom de la machine a &eacute;t&eacute;
+correctement d&eacute;fini &agrave; l'installation, ou ensuite. (A ce stade, ne vous
+pr&eacute;occupez pas du suffixe &ldquo;.my.domain&rdquo;, nous verrons cela par la
+suite. Ce qui compte maintenant est le nom qui pr&eacute;c&egrave;de le premier
+&ldquo;.&rdquo;)</para>
+<para>Si le nom de machine n'a pas &eacute;t&eacute; d&eacute;fini &agrave; l'installation, la r&eacute;ponse de
+<command>hostname</command> sera probablement &ldquo;myname.my.domain&rdquo;.
+Vous devez alors &eacute;diter le fichier <filename>/etc/rc.conf</filename> pour
+d&eacute;finir le nom du syst&egrave;me.</para>
+<sect3>
+<title>D&eacute;finir le nom de la machine FreeBSD</title>
+<note>
+<para>Vous devez &ecirc;tre en session sous &ldquo;root&rdquo; pour &eacute;diter les
+fichiers de configuration du syst&egrave;me.</para>
+</note>
+<note>
+<para>Si vous introduisez des erreurs dans les fichiers de configuration, il y
+a de fortes chances que votre syst&egrave;me <emphasis>ne red&eacute;marre</emphasis> pas
+correctement! Soyez prudents !</para>
+</note>
+<para>Le nom de machine du syst&egrave;me FreeBSD est d&eacute;fini au d&eacute;marrage par le
+fichier <filename>/etc/rc.conf</filename>. Utilisez l'&eacute;diteur par d&eacute;faut
+(&ldquo;ee&rdquo;) pour &eacute;diter ce fichier.</para>
+<para>Sous une session &ldquo;root&rdquo;, visualisez le fichier dans l'&eacute;diteur
+avec la commande:</para>
+<para>
+<userinput>
+<prompt>#</prompt> ee /etc/rc.conf
+</userinput>
+</para>
+<para>Avec les touches fl&egrave;ches, allez jusqu'&agrave; la ligne qui d&eacute;finit le nom de
+machine du syst&egrave;me FreeBSD. Par d&eacute;faut, vous y trouvez:</para>
+<literallayout>
+---
+### Basic network options: ###
+hostname="myname.my.domain" # Set this !
+---
+</literallayout>
+<para>Remplacez ces lignes, par exemple, par:</para>
+<literallayout>
+---
+### Basic network options: ###
+hostname="curly.my.domain" # Set this !
+---
+</literallayout>
+<para>Une fois la modification faite, appuyez sur la touche
+<keycap>Echap</keycap> pour aller dans le menu de commandes de
+l'&eacute;diteur. Choisissez
+&ldquo;leave editor&rdquo; (quitter l'&eacute;diteur) et s&eacute;lectionnez bien l'option
+&ldquo;save changes&rdquo; (enregistrer les modifications) quand la question
+vous est pos&eacute;e.</para>
+</sect3>
+</sect2>
+<sect2 id="sect32">
+<title>Contr&ocirc;ler la configuration de l'interface Ethernet</title>
+<para>Rappelons nos hypoth&egrave;ses : l'interface Ethernet de la machine s'appelle
+&ldquo;ed0&rdquo;. C'est la valeur par d&eacute;faut pour les contr&ocirc;leurs NE-1000,
+NE-2000, WD/SMC mod&egrave;les 8003, 8013 et Elite Ultra (8216).</para>
+<para>Les fichiers d'interface d'autres mod&egrave;les de contr&ocirc;leurs peuvent
+avoir d'autres noms sous FreeBSD. Si vous n'&ecirc;tes pas certain du nom
+correspondant &agrave; votre contr&ocirc;leur, consultez les Questions Fr&eacute;quemment Pos&eacute;es
+&agrave; propos de
+FreeBSD (&ldquo;FAQ&rdquo;) et substituez la bonne valeur dans les exemples
+qui suivent.</para>
+<para>De la m&ecirc;me fa&ccedil;on que pour le nom de la machine, l'interface Ethernet du
+syst&egrave;me FreeBSD a peut-&ecirc;tre &eacute;t&eacute; configur&eacute;e &agrave; l'installation.</para>
+<para>Pour consulter la configuration des interfaces (Ethernet et autres) de
+votre syst&egrave;me FreeBSD), utilisez la commande suivante:</para>
+<screen>
+<prompt>#</prompt> <userinput>ifconfig -a</userinput>
+</screen>
+<para>Soit en clair: "Donnes-moi la CONFIGuration des InterFaces de mes
+p&eacute;riph&eacute;riques r&eacute;seau."</para>
+<para>Par exemple:</para>
+<screen>
+<prompt>#</prompt> <userinput>ifconfig -a</userinput>
+ed0: flags=8843&lt;UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
+inet 192.168.1.1 netmask 0xffffff00 broadcast 192.168.1.255
+ether 01:02:03:04:05:06
+lp0: flags=8810&lt;POINTOPOINT,SIMPLEX,MULTICAST> mtu 1500
+tun0: flags=8050&lt;POINTOPOINT,RUNNING, MULTICAST> mtu 1500
+l0: flags=c010&lt;OINTOPOINT,LINK2,MULTICAST> mtu 552
+ppp0: flags=8010&lt;POINTOPOINT,MULTICAST> mtu 1500
+lo0: flags=8049&lt;UP,LOOPBACK,RUNNING,MULTICAST> mtu 16384
+inet 127.0.0.1 netmask 0xff000000
+<prompt>#</prompt>
+</screen>
+<para>Sur cet exemple, les p&eacute;riph&eacute;riques suivants sont reconnus :</para>
+<itemizedlist>
+<listitem><para><filename>ed0</filename>: l'interface
+Ethernet,</para></listitem>
+<listitem><para><filename>lp0</filename>: l'interface parall&egrave;le
+(que nous n'utiliserons pas ici),</para></listitem>
+<listitem><para><filename>tun0</filename>: l'interface SLIP (IP sur ligne s&eacute;rie,
+que nous n'utiliserons pas ici),</para></listitem>
+<listitem><para><filename>ppp0</filename>: un autre interface PPP
+(pour le module <command>ppp</command> int&eacute;gr&eacute; au noyau, que n'utiliserons pas
+ici),</para></listitem>
+<listitem><para><filename>lp0</filename>: l'interface
+"en boucle"&nbsp;-&nbsp;"loopback"&nbsp;-&nbsp;que
+nous n'utiliserons pas non plus).</para></listitem>
+</itemizedlist>
+<para>Dans l'exemple, l'interface &ldquo;ed0&rdquo; est active
+(&ldquo;UP&rdquo;) et fonctionne (&ldquo;RUNNING&rdquo;). Les indications
+importantes sont:</para>
+<orderedlist>
+<listitem><para>L'interface est active (&ldquo;UP&rdquo;),</para></listitem>
+<listitem><para>Elle a une adresse Ethernet (&ldquo;inet&rdquo;), dans notre
+cas: 192.168.1.1,</para></listitem>
+<listitem><para>Elle a un masque de sous-r&eacute;seau (&ldquo;netmask&rdquo;;
+0xffffff00 qui &eacute;quivaut &agrave; 255.255.255.0) correct,</para></listitem>
+<listitem><para>Elle a une adresse de diffusion (&ldquo;broadcast&rdquo;;
+ici, 192.168.1.255) valide.</para></listitem>
+</orderedlist>
+<para>Si la ligne d&eacute;crivant l'interface Ethernet mentionne quelque chose
+comme:</para>
+<programlisting>
+ed0: flags=8802&lt;BROADCAST,SIMPLEX,MULTICAST> mtu 1500
+ether 01:02:03:04:05:06
+</programlisting>
+<para>c'est que cette interface n'est pas encore configur&eacute;e.</para>
+<para>Si l'interface Ethernet est d&eacute;j&agrave; configur&eacute;e, vous pouvez passer
+directement au paragraphe <link linkend="sect34">Renseigner la liste des
+autres machines du r&eacute;seau</link>.
+Sinon, continuez en s&eacute;quence.</para>
+<sect3>
+<title>Configurer votre interface Ethernet</title>
+<note>
+<para>Vous devez &ecirc;tre en session sous &ldquo;root&rdquo; pour &eacute;diter les
+fichiers de configuration du syst&egrave;me.</para>
+</note>
+<note>
+<para>Si vous introduisez des erreurs dans les fichiers de configuration, il y
+a de fortes chances que votre syst&egrave;me <emphasis>ne red&eacute;marre</emphasis> pas
+correctement! Soyez prudents !</para>
+</note>
+<para>Les param&egrave;tres de configuration des interfaces r&eacute;seau sont d&eacute;finis au
+d&eacute;marrage par le fichier <filename>/etc/rc.conf</filename>. Utilisez l'&eacute;diteur
+par d&eacute;faut (&ldquo;ee&rdquo;) pour &eacute;diter ce fichier.</para>
+<para>Sous une session &ldquo;root&rdquo;, visualisez le fichier dans l'&eacute;diteur
+avec la commande:</para>
+<para>
+<userinput>
+<prompt>#</prompt> ee /etc/rc.conf
+</userinput>
+</para>
+<para>Vers la vingti&egrave;me ligne environ du fichier, se trouve la section qui
+d&eacute;finit quelles interfaces r&eacute;seau doivent &ecirc;tre mises en service au
+d&eacute;marrage. Le fichier de configuration par d&eacute;faut contient la ligne :</para>
+<programlisting>
+network_interfaces="lo0" # List of network interfaces (lo0 is loopback)
+</programlisting>
+<para>que vous devrez modifier pour dire &agrave; FreeBSD que vous voulez ajouter un
+autre p&eacute;riph&eacute;rique, en l'occurence l'interface &ldquo;ed0&rdquo;, en:</para>
+<programlisting>
+network_interfaces="lo0 ed0" # List of network interfaces (lo0 is loopback)
+</programlisting>
+<para>(Faites attention &agrave; l'espace entre la d&eacute;finition de l'interface en boucle
+&ldquo;lo0&rdquo; et l'interface Ethernet &ldquo;ed0&rdquo;.)</para>
+<note>
+<para>Si le nom correspondant &agrave; votre interface n'est pas &ldquo;ed0&rdquo;,n'oubliez pas de mettre la valeur ad&eacute;quate &agrave; la place.</para>
+</note>
+<para>Si vous avez install&eacute; FreeBSD via une connexion r&eacute;seau, la ligne
+&ldquo;<filename>network_interfaces</filename>&rdquo; comporte peut-&ecirc;tre
+d&eacute;j&agrave; un r&eacute;f&eacute;rence &agrave; votre carte Ethernet. Dans ce cas, assurez vous que son nom
+soit correct.</para>
+<para>Les lignes qui suivent celles o&ugrave; sont list&eacute;es les interfaces &agrave; mettre en
+service d&eacute;crivent les param&egrave;tres de chacune de ces interfaces. Dans le fichier
+<filename>/etc/rc.conf</filename> par d&eacute;faut, il n'y a qu'un seule ligne qui
+dit:</para>
+<programlisting>
+ifconfig_lo0="inet 127.0.0.1" # default loopback device configuration
+</programlisting>
+<para>Vous devrez ajouter une ligne qui d&eacute;finisse les caract&eacute;ristiques de
+votre interface &ldquo;ed0&rdquo;.</para>
+<para>Si vous avez install&eacute; FreeBSD via une connexion r&eacute;seau, la ligne
+&ldquo;<filename>ifconfig_ed0=</filename>&rdquo; existe peut-&ecirc;tre
+d&eacute;j&agrave;. V&eacute;rifiez alors qu'elle contienne bien les bonnes valeurs.</para>
+<para>En nous r&eacute;f&eacute;rant &agrave; notre exemple, nous ins&eacute;rerons la ligne suivante,
+imm&eacute;diatement apr&egrave;s la d&eacute;finition de l'interface
+&ldquo;en boucle&rdquo;:</para>
+<programlisting>
+ifconfig_ed0="inet 192.168.1.1 netmask 255.255.255.0"
+</programlisting>
+<para>Apr&egrave;s modification, cette section du fichier
+<filename>/etc/rc.conf</filename> doit ressembler &agrave;:</para>
+<programlisting>
+---
+network_interfaces="lo0 ed0" # List of network interfaces (lo0 is loopback)
+ifconfig_lo0="inet 127.0.0.1" # default loopback device configuration
+ifconfig_ed0="inet 192.168.1.1 netmask 255.255.255.0"
+---
+</programlisting>
+<para>Un fois que vous avez fait toutes les modifications n&eacute;cessaires,
+appuyez sur la touche
+<keycap>Echap</keycap> pour aller dans le menu de commandes de
+l'&eacute;diteur. Choisissez
+&ldquo;leave editor&rdquo; (quitter l'&eacute;diteur) et s&eacute;lectionnez bien l'option
+&ldquo;save changes&rdquo; (enregistrer les modifications) quand la question
+vous est pos&eacute;e.</para>
+</sect3>
+</sect2>
+<sect2 id="sect33">
+<title>Autoriser la transmission de paquets</title>
+<para>Par d&eacute;faut, FreeBSD n'active pas le transmission de paquets
+entre les diff&eacute;rentes interfaces r&eacute;seau d'une machine. En d'autres
+termes, les fonctions de routage (aussi appel&eacute;es de passerelle)
+ne sont pas disponibles.</para>
+<para>Si vous voulez utiliser le programme <command>ppp</command>
+comme poste Internet autonome et non comme passerelle entre le
+r&eacute;seau local et votre fournisseur d'acc&egrave;s &agrave; Internet, vous pouvez
+passer directement au paragraphe
+<link linkend="sect34">Renseigner la liste des autres machines du r&eacute;seau</link>.</para>
+<para>Si vous voulez utiliser le programme <command>ppp</command>
+pour connecter &agrave; la fois votre machine FreeBSD (pour servir de
+routeur) et les autres postes du r&eacute;seau local, vous devez autoriser
+la transmission de paquets IP.</para>
+<para>Pour cela, vous devez &eacute;diter le fichier
+<filename>/etc/rc.conf</filename>. Visualisez le fichier dans l'&eacute;diteur
+avec la commande:</para>
+<para>
+<userinput>
+<prompt>#</prompt> ee /etc/rc.conf
+</userinput>
+</para>
+<para>Vers la quatre-vingt-cinqui&egrave;me ligne environ, vous trouverez la section
+qui contr&ocirc;le la transmission de paquets. Elle ressemblera a ceci:</para>
+<literallayout>
+---
+gateway_enable="NO" # Set to YES if the host will be a gateway
+---
+</literallayout>
+<para>Modifiez-la en:</para>
+<para>
+<literallayout>
+---
+gateway_enable="YES" # Set to YES if the host will be a gateway
+---
+</literallayout>
+</para>
+<para>et quittez l'&eacute;diteur (en enregistrant vos modifications!).</para>
+<note>
+<para>Cette ligne contient peut-&ecirc;tre d&eacute;j&agrave;
+<command>gateway_enable="YES"</command>
+si la transmission de paquets IP a &eacute;t&eacute; autoris&eacute;e au moment de l'installation
+du syst&egrave;me FreeBSD.</para>
+</note>
+</sect2>
+<sect2 id="sect34">
+<title>Renseigner la liste des autres machines du r&eacute;seau
+(<filename>/etc/hosts</filename>)</title>
+<para>La derni&egrave;re &eacute;tape de la configuration du r&eacute;seau local vu de la machine
+FreeBSD consiste &agrave; cr&eacute;er la liste des noms et des adresses TCP/IP des
+diff&eacute;rentes machines raccord&eacute;es au r&eacute;seau local. Cette liste est d&eacute;finie dans le
+fichier <filename>/etc/hosts</filename>.</para>
+<para>Par d&eacute;faut, ce fichier ne contient qu'une ligne: le nom et l'adresse
+de l'interface &ldquo;en boucle&rdquo;. Par convention, ce nom est toujours
+&ldquo;localhost&rdquo; et son adresse 127.0.0.1. (Reportez-vous &agrave; l'exemple
+de configuration des interfaces au paragraphe
+<link linkend="sect32">Contr&ocirc;ler la configuration de l'interface Ethernet</link>.)</para>
+<para>Pour &eacute;diter le fichier <filename>/etc/hosts</filename>, tapez la
+commande:</para>
+<para>
+<userinput>
+<prompt>#</prompt> ee /etc/hosts
+</userinput>
+</para>
+<para>Allez jusqu'&agrave; la fin du fichier (en lisant au passage les commentaires,
+ce sont des informations utiles!) et ajoutez (toujours dans le cas du
+r&eacute;seau de notre exemple) les noms et les adresses IP suivantes:</para>
+<programlisting>
+192.168.1.1 curly curly.my.domain # machine FreeBSD
+192.168.1.2 larry larry.my.domain # machine Windows 95
+192.168.1.3 moe moe.my.domain # machine Windows for Workgroups
+192.168.1.4 shemp shemp.my.domain # machine Windows NT
+</programlisting>
+<para>(Vous ne devez pas modifier la ligne
+&ldquo;<command>127.0.0.1 localhost</command>&rdquo;.)</para>
+<para>Une fois que vous avez ajout&eacute; ces lignes, appuyez sur la touche
+<keycap>Echap</keycap> pour aller dans le menu de commandes de
+l'&eacute;diteur. Choisissez
+&ldquo;leave editor&rdquo; (quitter l'&eacute;diteur) et s&eacute;lectionnez bien l'option
+&ldquo;save changes&rdquo; (enregistrer les modifications) quand la question
+vous est pos&eacute;e.</para>
+</sect2>
+<sect2 id="sect35">
+<title>Tester le syst&egrave;me FreeBSD</title>
+<para>F&eacute;licitations! Une fois que vous en &ecirc;tes arriv&eacute; l&agrave;, votre machine
+FreeBSD est maintenant une machine UNIX connect&eacute;e au r&eacute;seau! Si vous avez
+d&ucirc; modifier votre fichier <filename>/etc/rc.conf</filename>, il faut
+red&eacute;marrer votre machine FreeBSD. Cela va faire deux choses importantes:</para>
+<itemizedlist>
+<listitem><para>Appliquer les modifications de configuration des interfaces,
+et:</para></listitem>
+<listitem><para>V&eacute;rifier que le syst&egrave;me red&eacute;marre sans erreur de configuration
+flagrante.</para></listitem>
+</itemizedlist>
+<sect3>
+<title>V&eacute;rifier le bon fonctionnement de l'interface
+&ldquo;en boucle&rdquo;</title>
+<para>Pour v&eacute;rifier que l'interface &ldquo;en boucle&rdquo; est correctement
+configur&eacute;e, ouvrez une session sous &ldquo;root&rdquo; et tapez:</para>
+<para>
+<userinput><prompt>#</prompt> ping localhost</userinput>
+</para>
+<para>Vous devriez voir d&eacute;filer des messages du type:</para>
+<para>
+<userinput><prompt>#</prompt> ping localhost</userinput>
+<programlisting>
+PING localhost.my.domain. (127.0.0.1): 56 bytes
+64 bytes from 127.0.0.1: icmp_seq=0 ttl=255 time=0.219 ms
+64 bytes from 127.0.0.1: icmp_seq=1 ttl=255 time=0.200 ms
+64 bytes from 127.0.0.1: icmp_seq=2 ttl=255 time=0.187 ms
+[...]
+</programlisting>
+</para>
+<para>jusqu'&agrave; ce que vous tapiez
+<keycombo><keycap>Ctrl</keycap><keycap>C</keycap></keycombo>
+pour arr&ecirc;ter ce d&eacute;lire.</para>
+</sect3>
+<sect3>
+<title>V&eacute;rifier le bon fonctionnement de l'interface Ethernet</title>
+<para>Pour v&eacute;rifier que l'interface Ethernet est correctement
+configur&eacute;e, tapez:</para>
+<para>
+<userinput><prompt>#</prompt> ping curly</userinput>
+</para>
+<para>Vous devriez voir:</para>
+<para>
+<userinput><prompt>#</prompt> ping curly</userinput>
+<programlisting>
+PING curly.my.domain. (192.168.1.1): 56 bytes
+64 bytes from 192.168.1.1: icmp_seq=0 ttl=255 time=0.219 ms
+64 bytes from 192.168.1.1: icmp_seq=1 ttl=255 time=0.200 ms
+64 bytes from 192.168.1.1: icmp_seq=2 ttl=255 time=0.187 ms
+[...]
+</programlisting>
+</para>
+<para>L'information importante dans ces deux exemples est que les noms
+(&ldquo;localhost&rdquo; et &ldquo;curly&rdquo;) correspondent bien
+&agrave; leurs adresses IP (127.0.0.1 et 192.168.1.1). Cela confirme que le fichier
+<filename>/etc/hosts</filename> est correct.</para>
+<para>Si les noms et les adresses appara&icirc;ssent correctement dans les r&eacute;sultats
+de la commande <command>ping</command> mais que des messages d'erreur sont
+affich&eacute;s, quelque chose ne va pas dans la configuration des interfaces.
+Retournez au paragraphe <link linkend="sect31">Contr&ocirc;ler le nom de la machine FreeBSD</link> et
+v&eacute;rifiez de nouveau votre configuration.</para>
+<para>Si maintenant, tout va bien, passez &agrave; la section suivante.</para>
+</sect3>
+</sect2>
+</sect1>
+<sect1>
+<title>Configurer la liaison PPP vers l'ext&eacute;rieur</title>
+<para>Il y a deux fa&ccedil;ons d'utiliser le programme <command>ppp</command>: en
+mode &ldquo;Interactif&rdquo; et en mode &ldquo;Automatique&rdquo;.</para>
+<para>En mode Interactif, vous:</para>
+<itemizedlist>
+<listitem>
+<para>Etablissez manuellement la connexion avec votre fournisseur d'acc&egrave;s
+Internet,</para>
+</listitem>
+<listitem>
+<para>Surfez, transf&eacute;rez des fichiers et envoyez du courrier
+&eacute;lectronique, etc.</para>
+</listitem>
+<listitem>
+<para>Coupez manuellement la connexion avec votre fournisseur d'acc&egrave;s
+Internet.</para>
+</listitem>
+</itemizedlist>
+<para>En mode Automatique, le programme <command>ppp</command> surveille
+silencieusement les op&eacute;rations du syst&egrave;me FreeBSD et se connecte et se
+d&eacute;connecte automagiquement &agrave; votre fournisseur d'acc&egrave;s selon le besoin,
+int&eacute;grant de fa&ccedil;on transparente l'Internet &agrave; votre r&eacute;seau.</para>
+<sect2>
+<title>Sauvegarder vos fichiers de configuration <command>ppp</command>
+d'origine</title>
+<para>Avant de modifier les fichiers qu'utilise <command>ppp</command>, il
+est bon de sauvegarder les fichiers par d&eacute;faut cr&eacute;&eacute;s &agrave; l'installation de
+FreeBSD.</para>
+<para>Ouvrez une session sous le compte &ldquo;root&rdquo;, et suivez la
+proc&eacute;dure ci-dessous:</para>
+<para>Allez dans le r&eacute;pertoire <filename>/etc</filename>:</para>
+<para>
+<userinput>
+<prompt>#</prompt> cd etc
+</userinput>
+</para>
+<para>Faites un copie des fichiers d'origine du r&eacute;pertoire
+<filename>ppp</filename>:</para>
+<para>
+<userinput>
+<prompt>#</prompt> cp -R ppp ppp.ORIGINAL
+</userinput>
+</para>
+<para>Vous devriez maintenant avoir un r&eacute;pertoire <filename>ppp</filename>
+et un r&eacute;pertoire <filename>ppp.ORIGINAL</filename> dans le r&eacute;pertoire
+<filename>etc</filename>.</para>
+</sect2>
+<sect2>
+<title>Cr&eacute;er vos propres fichiers de configuration de
+<command>ppp</command></title>
+<para>Par d&eacute;faut, la proc&eacute;dure d'installation de FreeBSD cr&eacute;e un certain
+nombre de fichiers d'exemple dans le r&eacute;pertoire <filename>/etc/ppp</filename>.
+Prenez un peu de temps pour parcourir ces fichiers. Ce sont des exemples
+emprunt&eacute;s &agrave; des syst&egrave;mes qui fonctionnent et ils illustrent les diff&eacute;rentes
+possibilit&eacute;s du programme <command>ppp</command>.</para>
+<para>Je vous encourage <emphasis>fortement</emphasis> &agrave; &eacute;tudier ces exemples
+et &agrave; les adapter &agrave; votre configuration.</para>
+<para>Pour plus d'informations sur le programme <command>ppp</command>, lisez
+les pages de manuel:</para>
+<para>
+<userinput>
+<prompt>#</prompt> man ppp
+</userinput>
+</para>
+<para>Pour plus d'informations sur le langage <command>chat</command>, utilis&eacute;
+par <command>ppp</command> pour &eacute;tablir la connexion, lisez les pages de
+manuel:</para>
+<para>
+<userinput>
+<prompt>#</prompt> man chat
+</userinput>
+</para>
+<para>La suite de ce chapitre d&eacute;crit le contenu recommand&eacute; des fichiers
+de configurations de <command>ppp</command>.</para>
+<sect3>
+<title>Le fichier <filename>/etc/ppp/ppp.conf</filename></title>
+<para>Le fichier <filename>/etc/ppp/ppp.conf</filename> contient les
+informations et les param&egrave;tres n&eacute;cessaires pour &eacute;tablir une connexion
+vers l'ext&eacute;rieur. Le
+<ulink url="&url.handbook;index.html">Manuel
+FreeBSD</ulink> d&eacute;crit en d&eacute;tail le contenu et la syntaxe de ce fichier.</para>
+<para>N'est d&eacute;crite ici que la configuration minimale n&eacute;cessaire pour arriver
+&agrave; &eacute;tablir une connexion.</para>
+<para>Voici le fichier <filename>/etc/ppp/ppp.conf</filename> que nous
+utiliserons sur notre passerelle entre le r&eacute;seau local et l'Internet:</para>
+<para>
+<programlisting>
+####################################################################
+# Fichier de Configuration de PPP ('/etc/ppp/ppp.conf')
+#
+# Param&egrave;tres par d&eacute;faut: Ces commandes sont toujours ex&eacute;cut&eacute;es
+# quand PPP est appel&eacute; et s'appliquent &agrave; toutes les configurations
+####################################################################
+default:
+set device /dev/cuaa0
+set speed 57600
+disable pred1
+deny pred1
+disable lqr
+deny lqr
+set dial "ABORT BUSY ABORT NO\\sCARRIER TIMEOUT 5 \"\" ATE1Q0M0
+OK-AT-OK\\dATDT\\T TIMEOUT 40 CONNECT"
+set redial 3 10
+#
+#
+####################################################################
+#
+# Configuration utilis&eacute;e en mode interactif :
+#
+# appel&eacute;e par: `ppp -alias interactive`
+#
+####################################################################
+interactive:
+set authname Your_User_ID_On_Remote_System
+set authkey Your_Password_On_Remote_System
+set phone 1-800-123-4567
+set timeout 300
+set openmode active
+accept chap
+#
+####################################################################
+#
+# Configuration utilis&eacute;e en mode &agrave; la demande ( automatique)
+#
+# appel&eacute;e par: 'ppp -auto -alias demand'
+#
+####################################################################
+demand:
+set authname Your_User_ID_On_Remote_System
+set authkey Your_Password_On_Remote_System
+set phone 1-800-123-4567
+set timeout 300
+set openmode active
+accept chap
+set ifaddr 127.1.1.1/0 127.2.2.2/0 255.255.255.0
+add 0 0 127.2.2.2
+################################################################
+# Fin de /etc/ppp/ppp.conf
+</programlisting>
+</para>
+<para>Ce fichier, recopi&eacute; tel quel d'un syst&egrave;me op&eacute;rationnel, comporte trois
+parties:</para>
+<sect4>
+<title>La section &ldquo;default&rdquo;</title>
+<para> La section &ldquo;default:&rdquo; contient les informations et
+param&egrave;tres utilis&eacute;s par toutes les autres sections du fichier. Cette section
+est donc implicitement ajout&eacute;e &agrave; toutes les autres.</para>
+<para>C'est l'endroit id&eacute;al pour d&eacute;finir les valeurs par d&eacute;faut qui s'appliquent
+&agrave; toutes les connexions vers l'ext&eacute;rieur; en particulier, la configuration
+du modem et le dialogue d'initialisation de la connexion, qui ne changent
+pas, quel que soit le syst&egrave;me distant auquel vous vous connectez.</para>
+<para>Voici le d&eacute;tail de chacune des lignes de la section
+&ldquo;default:&rdquo; du fichier
+<filename>/etc/ppp/ppp.conf</filename>:</para>
+<para>
+<programlisting>
+set device /dev/cuaa0
+</programlisting>
+</para>
+<para>Cette instruction dit au programme <command>ppp</command> d'utiliser le
+premier port s&eacute;rie. Sous FreeBSD, le p&eacute;riph&eacute;rique &ldquo;/dev/cuaa0&rdquo;
+correspond au port appel&eacute; &ldquo;COM1:&rdquo; de DOS, Windows, Windows 95,
+etc.</para>
+<para>Si votre modem est sur le port &ldquo;COM2&rdquo;: vous devrez mettre
+&ldquo;/dev/cuaa1&rdquo;. &ldquo;/dev/cuaa2&rdquo; serait le port
+&ldquo;COM3:&rdquo;.</para>
+<para>
+<programlisting>
+set speed 57600
+</programlisting>
+</para>
+<para>Cette ligne indique au programme <command>ppp</command> la vitesse
+en &eacute;mission et en r&eacute;ception entre le port s&eacute;rie et le modem. Bien que le modem
+de notre configuration fonctionne &agrave; 28.8 Kbps, donner la valeur 56000 permet
+&agrave; la liaison s&eacute;rie de fonctionner suffisamment vite pour g&eacute;rer la compression de
+donn&eacute;es int&eacute;gr&eacute;e aux modems les plus r&eacute;cents.</para>
+<para>Si vous avez des probl&egrave;mes pour dialoguer avec votre modem &agrave; cette
+vitesse, descendez &agrave; une valeur inf&eacute;rieure: 38400, voir aussi faible que
+19200.</para>
+<para>
+<programlisting>
+disable pred1
+deny pred1
+</programlisting>
+</para>
+<para>Ces deux lignes d&eacute;sactivent la compression &ldquo;CCP/Predictor 1&rdquo;
+dont est capable le programme <command>ppp</command>. La version actuelle
+de <command>ppp</command> supporte la compression de donn&eacute;es selon la
+d&eacute;finition provisoire des standards Internet. Malheureusement, de nombreux
+fournisseurs d'acc&egrave;s ont des &eacute;quipements qui n'offrent pas cette possibilit&eacute;.
+Comme la plupart des modems r&eacute;cents sont capables de compression &agrave; la vol&eacute;e,
+vous ne perdrez probablement pas grand-chose en termes de performances en
+d&eacute;sactivant cette possibilit&eacute; sur votre machine FreeBSD et en interdisant
+au site distant de vous la r&eacute;clamer.</para>
+<para>
+<programlisting>
+disable lqr
+deny lqr
+</programlisting>
+</para>
+<para>Ces deux lignes contr&ocirc;lent l'&ldquo;audit de la qualit&eacute; de la
+liaison (Link Quality Reporting)&rdquo; qui est partie int&eacute;grante des
+sp&eacute;cifications du protocole PPP.
+(Voyez la RFC-1989 pour plus de d&eacute;tails.)</para>
+<para>La premi&egrave;re ligne, &ldquo;disable lqr&rdquo; instruit le programme
+<command>ppp</command> de ne pas &eacute;mettre de demandes de contr&ocirc;le de la
+qualit&eacute; de la liaison &agrave; la machine distante.</para>
+<para>La seconde ligne, &ldquo;deny lqr&rdquo; instruit le progamme
+<command>ppp</command> de ne pas accepter de demandes de contr&ocirc;le de la
+qualit&eacute; de la liaison de la machine distante.</para>
+<para>Comme la plupart des modems ont des proc&eacute;dures int&eacute;gr&eacute;es de d&eacute;tection et
+de correction d'erreur et que l'audit LQR est rarement int&eacute;gralement
+impl&eacute;ment&eacute;e par les constructeurs, il vaut en g&eacute;n&eacute;ral mieux ne pas utiliser
+cette possibilit&eacute;.</para>
+<para>
+<programlisting>
+set dial "ABORT BUSY ABORT NO\\sCARRIER TIMEOUT 5 \"\" ATE1Q0M0 OK-AT-OK\\dATADT\\T TIMEOUT 40 CONNECT"
+</programlisting>
+</para>
+<note>
+<para>(Cette instruction doit &ecirc;tre &eacute;crite sur une seule ligne; ne tenez
+pas compte du formatage sur deux lignes, si elle se pr&eacute;sente ainsi dans ce
+document.)</para>
+</note>
+<para>Cette ligne d&eacute;crit le dialogue entre le programme <command>ppp</command>
+et le modem qui doit permettre d'&eacute;tablir la connexion et fournit des
+instructions rudimentaires sur la marche &agrave; suivre:</para>
+<itemizedlist>
+<listitem>
+<para>Une tentative d'appel &eacute;choue si le modem renvoie le code d'erreur
+&ldquo;BUSY (occup&eacute;)&rdquo;,</para>
+<para>Une tentative d'appel &eacute;choue aussi si le modem renvoie le code d'erreur
+&ldquo;NO CARRIER (pas de porteuse),&rdquo;,</para>
+<para>Le programme <command>ppp</command> doit constater, avec
+un d&eacute;lai maximum de cinq secondes entre chaque &eacute;v&eacute;nement, la s&eacute;quence
+d'&eacute;v&eacute;nements suivants:</para>
+</listitem>
+<listitem>
+<itemizedlist>
+<listitem>
+<para>Initialement, le programme <command>ppp</command> n'attend pas de
+r&eacute;ponse du modem (c'est le sens de la cha&icirc;ne <literal>\"\"</literal> dans
+l'instruction),</para>
+</listitem>
+<listitem>
+<para>Le programme enverra au modem la cha&icirc;ne &ldquo;ATE1Q0M0&rdquo; et
+attendra la r&eacute;ponse &ldquo;OK&rdquo;. Si cette r&eacute;ponse n'arrive pas, il enverra
+la commande d'interrogation &ldquo;AT&rdquo; et attendra &agrave; nouveau une r&eacute;ponse
+&ldquo;OK&rdquo;,</para>
+</listitem>
+<listitem>
+<para>Le programme devra attendre une seconde (c'est le sens de la cha&icirc;ne
+&ldquo;\\d&rdquo; dans l'instruction), et envoyer la s&eacute;quence d'appel au
+modem. Le pr&eacute;fixe &ldquo;ATDT&rdquo; est la commande d'appel standard pour
+les lignes t&eacute;l&eacute;phoniques &agrave; fr&eacute;quences vocales. Si vous n'avez pas de ligne
+&agrave; fr&eacute;quence vocale, remplacez &ldquo;ATDT&rdquo; par &ldquo;ATDP&rdquo;.
+La cha&icirc;ne &ldquo;\\T&rdquo; sera remplac&eacute;e par le num&eacute;ro
+de t&eacute;l&eacute;phone r&eacute;el (qui sera d&eacute;fini plus loin par la ligne
+&ldquo;set dial&rdquo;).</para>
+</listitem>
+</itemizedlist>
+</listitem>
+<listitem>
+<para>Pour finir, avec un d&eacute;lai d'attente de quarante secondes au maximum,
+le programme <command>ppp</command> doit recevoir un code d'acquittement
+&ldquo;CONNECT&rdquo; du modem.</para>
+</listitem>
+</itemizedlist>
+<para>Un &eacute;chec &agrave; une phase quelconque de ce dialogue sera interpret&eacute; comme
+un &eacute;chec d'appel et la connexion ne sera pas &eacute;tablie.</para>
+<para>(Pour avoir une description d&eacute;taill&eacute;e du mini-langage de commande
+utilis&eacute; par <command>ppp</command>, reportez-vous aux pages de manuel de
+<command>chat</command>.)</para>
+<para>
+<programlisting>
+set redial 3 10
+</programlisting>
+</para>
+<para>Cette ligne indique au programme <command>ppp</command> qu'en cas d'&eacute;chec,
+il peut faire jusqu'&agrave; trois nouvelles tentatives avec un temps d'attente de dix
+secondes entre chaque nouvel appel.</para>
+</sect4>
+<sect4 id="sect4122">
+<title>La section &ldquo;interactive&rdquo;</title>
+<para>La section &ldquo;interactive:&rdquo; contient les valeurs et les
+param&egrave;tres utilis&eacute;s par les connexions PPP interactives avec un syst&egrave;me
+distant particulier. Les lignes de la section &ldquo;default:&rdquo; sont
+automatiquement incluses dans cette section.</para>
+<para>L'exemple donn&eacute; ci-dessous suppose que vous vous connectiez &agrave; un syst&egrave;me
+qui sait identifier un utilisateur sans avoir &agrave; utiliser une s&eacute;rie de commandes
+baroques. Nous supposerons que le protocole CHAP est utilis&eacute; pour initialiser
+la session.</para>
+<para>A priori, si un syst&egrave;me Windows 95 peut &eacute;tablir la connexion d'un simple
+clic sur le bouton &ldquo;Connecter&rdquo;, la configuration donn&eacute;e en exemple
+devrait fonctionner.</para>
+<para>Si, &agrave; l'inverse, quand vous vous connectez chez votre fournisseur d'acc&egrave;s
+avec les utilitaires de Microsoft Windows 95, vous devez utiliser l'option
+&ldquo;Utiliser des proc&eacute;dures de connexion&rdquo;<footnote><para>N.d.T: ne
+disposant du mat&eacute;riel n&eacute;cessaire au contr&ocirc;le de certains de ces libell&eacute;s dans
+les versions fran&ccedil;is&eacute;es de Windows, ils ont &eacute;t&eacute; traduits du document en langue
+anglaise. En cas d'inexactitude, le lecteur voudra bien rectifier de
+lui-m&ecirc;me.</para></footnote>. il vous faudra alors
+lire les pages de manuel de <command>ppp</command> pour trouver des exemples
+de fichiers de configuration de PPP comportant des proc&eacute;dures
+&ldquo;expect / reponse&rdquo; pour &eacute;tablir votre connexion et vous devrez
+utiliser la commande &ldquo;set login&rdquo; &agrave; cet effet.</para>
+<para>Ou mieux, trouvez-vous un fournisseur d'acc&egrave;s qui offre l'authentification
+par PAP ou CHAP!</para>
+<para>La configuration donn&eacute;e en exemple a &eacute;t&eacute; utilis&eacute;e avec succ&egrave;s pour se
+connecter:</para>
+<itemizedlist>
+<listitem>
+<para>&agrave; Divers Shiva LanRovers,</para>
+</listitem>
+<listitem>
+<para>au r&eacute;seau IBM
+(<ulink url="http://www.ibm.net">http://www.ibm.net</ulink>),</para>
+</listitem>
+<listitem>
+<para>&agrave; AT&amp;T WorlNet
+(<ulink url="http://www.att.com/worldnet">http://www.att.com/worldnet</ulink>),</para>
+</listitem>
+<listitem>
+<para>&agrave; Erol's
+(<ulink url="http://www.erols.com">http://www.erols.com</ulink>).</para>
+</listitem>
+</itemizedlist>
+<para>Voici la description de chacune des lignes de la section
+&ldquo;interactive:&rdquo; du fichier <filename>/etc/ppp/ppp.conf</filename>
+de l'exemple:</para>
+<para>
+<programlisting>
+set authname Votre_Nom_d_Utilisateur_du_Syst&egrave;me_Distant
+</programlisting>
+</para>
+<para>Cette ligne d&eacute;finit avec quel nom d'utilisateur vous vous connectez au
+syst&egrave;me distant.</para>
+<para>
+<programlisting>
+set authkey Votre_Mot_de_Passe_Utilisateur_du_Syst&egrave;me_Distant
+</programlisting>
+</para>
+<para>Cette ligne d&eacute;finit le mot de passe que vous utilisez pour vous connecter
+au syst&egrave;me distant.</para>
+<para>
+<programlisting>
+set phone 012345678789
+</programlisting>
+</para>
+<para>C'est le num&eacute;ro de t&eacute;l&eacute;phone avec lequel vous joignez le syst&egrave;me
+distant.</para>
+<para>
+<programlisting>
+set timeout 300
+</programlisting>
+</para>
+<para>Cette ligne indique au programme <command>ppp</command> de couper la ligne
+s'il n'y a aucun &eacute;change pendant cinq minutes (300 secondes). Vous pouvez
+adapter cette ligne &agrave; votre besoin particulier.</para>
+<para>
+<programlisting>
+set openmode active
+</programlisting>
+</para>
+<para>Cette ligne dit au programme <command>ppp</command> de n&eacute;gocier la
+connexion d&egrave;s que la liaison entre les modems est &eacute;tablie. Certains sites
+distants le font automatiquement, d'autres non. Cette instruction permet
+&agrave; votre site d'initialiser la n&eacute;gociation.</para>
+<para>
+<programlisting>
+accept chap
+</programlisting>
+</para>
+<para>Cette ligne dit au programme <command>ppp</command> d'utiliser le
+protocole CHAP &ldquo;Challenge Handsake Autentification Protocole
+(protocole d'authentification par poign&eacute;e de main avec d&eacute;fi de
+d&eacute;cryptage)&rdquo; pour vous authentifier. Les valeurs &eacute;chang&eacute;es entre le
+syst&egrave;me local et le syst&egrave;me distant pour transmettre le nom d'utilisateur
+et le mot de passe sont d&eacute;finies par les lignes &ldquo;authname&rdquo; et
+&ldquo;authkey&rdquo;.</para>
+</sect4>
+<sect4>
+<title>La section &ldquo;demand&rdquo;</title>
+<para>La section &ldquo;demand:&rdquo; contient les valeurs et les
+param&egrave;tres utilis&eacute;s par les connexions PPP automatiques avec un syst&egrave;me
+distant particulier. Les lignes de la section &ldquo;default:&rdquo; sont
+automatiquement incluses dans cette section.</para>
+<para>A l'exception des deux derni&egrave;res lignes, cette section est identique &agrave;
+la section qui d&eacute;finit la configuration &ldquo;interactive&rdquo;.</para>
+<para>Comme indiqu&eacute; au paragraphe
+<link linkend="sect4122">La section &ldquo;interactive&rdquo;</link>, l'exemple donn&eacute;
+ci-dessous suppose que vous vous connectiez &agrave; un syst&egrave;me
+qui comprenne le protocole CHAP pour initialiser
+la session.</para>
+<para>Voici la description de chacune des lignes de la section
+&ldquo;demand:&rdquo; du fichier <filename>/etc/ppp/ppp.conf</filename>
+de l'exemple:</para>
+<para>
+<programlisting>
+set authname Votre_Nom_d_Utilisateur_du_Syst&egrave;me_Distant
+</programlisting>
+</para>
+<para>Cette ligne d&eacute;finit avec quel nom d'utilisateur vous vous connectez au
+syst&egrave;me distant.</para>
+<para>
+<programlisting>
+set authkey Votre_Mot_de_Passe_Utilisateur_du_Syst&egrave;me_Distant
+</programlisting>
+</para>
+<para>Cette ligne d&eacute;finit le mot de passe que vous utilisez pour vous connecter
+au syst&egrave;me distant.</para>
+<para>
+<programlisting>
+set phone 012345678789
+</programlisting>
+</para>
+<para>C'est le num&eacute;ro de t&eacute;l&eacute;phone avec lequel vous joignez le syst&egrave;me
+distant.</para>
+<para>
+<programlisting>
+set timeout 300
+</programlisting>
+</para>
+<para>Cette ligne indique au programme <command>ppp</command> de couper la ligne
+s'il n'y a aucun &eacute;change pendant cinq minutes (300 secondes). Vous pouvez
+adapter cette ligne &agrave; votre besoin particulier.</para>
+<para>
+<programlisting>
+set openmode active
+</programlisting>
+</para>
+<para>Cette ligne dit au programme <command>ppp</command> de n&eacute;gocier la
+connexion d&egrave;s que la liaison entre les modems est &eacute;tablie. Certains sites
+distants le font automatiquement, d'autres non. Cette instruction permet
+&agrave; votre site d'initialiser la n&eacute;gociation.</para>
+<para>
+<programlisting>
+accept chap
+</programlisting>
+</para>
+<para>Cette ligne dit au programme <command>ppp</command> d'utiliser le
+protocole CHAP &ldquo;Challenge Handsake Autentification Protocole
+(protocole d'authentification par poign&eacute;e de
+main avec d&eacute;fi de d&eacute;cryptage)&rdquo;
+pour vous authentifier. Les valeurs &eacute;chang&eacute;es entre le syst&egrave;me local et le
+syst&egrave;me distant pour transmettre le nom d'utilisateur et le mot de passe
+sont d&eacute;finies par les lignes &ldquo;authname&rdquo; et
+&ldquo;authkey&rdquo;</para>
+<para>
+<programlisting>
+set ifaddr 127.1.1.1/0 127.2.2.2/0 255.255.255.0
+</programlisting>
+</para>
+<para>Cette commande d&eacute;finit une paire d'adresses IP fictives pour les deux
+extr&eacute;mit&eacute;s de la liaison point-&agrave;-point. Elle dit au programme
+<command>ppp</command> d'utiliser l'adresse 127.1.1.1 pour l'extr&eacute;mit&eacute; locale
+de la liaison g&eacute;r&eacute;e par le pilote de p&eacute;riph&eacute;rique
+&ldquo;tun0 (tunnel)&rdquo;(Reportez-vous au <ulink url="&url.handbook;index.html">manuel FreeBSD</ulink> pour une
+description de ce pilote) et l'adresse 127.2.2.2 pour l'extr&eacute;mit&eacute; distante.
+Le &ldquo;/0&rdquo; qui les suit pr&eacute;cise le nombre de digits significatifs de
+ces adresses, qui peuvent, (et doivent en fait) &ecirc;tre n&eacute;goci&eacute;es entre les
+deux syst&egrave;mes une fois la liaison &eacute;tablie. 255.255.255.0 est le masque de
+sous-r&eacute;seau qui s'applique &agrave; ces deux pseudo-interfaces.</para>
+<para>Rappelez-vous, nous avons suppos&eacute; que votre fournisseur d'acc&egrave;s vous
+assigne les adresses des deux extr&eacute;mit&eacute;s de la ligne! Si votre fournisseur
+vous a donn&eacute; une adresse particuli&egrave;re, vous pouvez la mentionner sur cette
+ligne <emphasis>&agrave; la place</emphasis> de l'adresse 127.1.1.1.</para>
+<para>Inversement, si votre fournisseur vous a donn&eacute; une adresse particuli&egrave;re
+pour son c&ocirc;t&eacute; de la liaison, vous pouvez la mentionner sur cette
+ligne <emphasis>&agrave; la place</emphasis> de l'adresse 127.2.2.2.</para>
+<para>Dans les deux cas, il vaut mieux conserver le &ldquo;/0&rdquo; apr&egrave;s les
+deux adresses. Cela laisse la possibilit&eacute; au programme <command>ppp</command>
+de changer d'adresse(s) <emphasis>s'il en a besoin</emphasis>.</para>
+<para>
+<programlisting>
+add 0 0 127.2.2.2
+</programlisting>
+</para>
+<para>Cette derni&egrave;re ligne dit au programme <command>ppp</command> d'ajouter une
+route par d&eacute;faut pour le trafic vers l'adresse (fictive) 127.2.2.2 du
+fournisseur d'acc&egrave;s.</para>
+<note>
+<para>Si vous avez donn&eacute;e l'adresse que vous a indiqu&eacute; votre fournisseur d'acc&egrave;s
+&agrave; la place de l'adresse 127.2.2.2 &agrave; la ligne &ldquo;set ifaddr&rdquo;, vous
+devez utiliser la m&ecirc;me adresse ici, &agrave; la place de 127.2.2.2.</para>
+</note>
+<para>En ajoutant cette route &ldquo;fictive&rdquo; pour le trafic IP, le
+programme <command>ppp</command> peut, successivement, avant et au moment
+d'&eacute;tablir la liaison:</para>
+<itemizedlist>
+<listitem>
+<para>Accepter des paquets que FreeBSD ne sait pas encore comment
+rediriger,</para>
+</listitem>
+<listitem>
+<para>Etablir la connexion avec votre fournisseur d'acc&egrave;s,</para>
+</listitem>
+<listitem>
+<para>Reconfigurer les adresses IP des deux c&ocirc;t&eacute;s de la ligne,</para>
+</listitem>
+<listitem>
+<para>Transmettre les paquets entre votre syt&egrave;me local et votre fournisseur
+d'acc&egrave;s,</para>
+</listitem>
+</itemizedlist>
+<para>automatiquement!</para>
+<para>Une fois le nombre de secondes d&eacute;fini par l'instruction
+&ldquo;timeout&rdquo; de la section &ldquo;default&rdquo; &eacute;coul&eacute; sans
+trafic TCP/IP, le programme <command>ppp</command> coupe automatiquement la
+connexion, et le processus peut recommencer.</para>
+</sect4>
+</sect3>
+<sect3>
+<title>Le fichier <filename>/etc/ppp/ppp.linkup</filename></title>
+<para>L'autre fichier n&eacute;cessaire &agrave; la configuration de <command>ppp</command>
+est <filename>/etc/ppp/ppp.linkup</filename>. Ce fichier contient les
+instructions qui d&eacute;finissent ce que <command>ppp</command> doit faire une
+fois que la connexion est &eacute;tablie.</para>
+<para>Dans le cas d'une connexion &agrave; la demande, le programme
+<command>ppp</command> doit supprimer la route par d&eacute;faut vers l'adresse IP
+fictive du syst&egrave;me distant (127.2.2.2 dans notre exemple plus haut) et
+d&eacute;finir une nouvelle route vers l'adresse IP r&eacute;elle de ce syst&egrave;me (obtenue
+&agrave; l'&eacute;tablissement de la connexion).</para>
+<para>Voici un bon exemple de fichier
+<filename>/etc/ppp/ppp.linkup</filename>:</para>
+<para>
+<programlisting>
+#########################################################################=
+#
+# Fichier PPP Link Up ('/etc/ppp/ppp.linkup')
+#
+# Ce fichier est consult&eacute; une fois que PPP a &eacute;tabli une connexion
+#
+# Ce fichier est lu dans l'ordre suivant :
+#
+# 1) En premier, l'adresse IP qui nous a &eacute;t&eacute; assign&eacute;e est recherch&eacute;e
+# et la/les commande(s) associ&eacute;e(s) ex&eacute;cut&eacute;e(s)
+#
+# 2) Si l'adresse IP n'est pas trouv&eacute;e, alors l'&eacute;tiquette donn&eacute;e au
+# d&eacute;marrage de PPP est recherch&eacute;e, et la/les commande(s) associ&eacute;e(s)
+# ex&eacute;cut&eacute;e(s)
+#
+# 3) Si ni l'une ni l'autre n'ont &eacute;t&eacute; trouv&eacute;es, les commandes associ&eacute;es
+# &agrave; l'&eacute;tiquette 'MYADDR:' sont ex&eacute;cut&eacute;es.
+#
+#########################################################################=
+
+#
+# Cette section correspond &agrave; la configuration "demand" de
+# /etc/ppp/ppp.conf:
+demand:
+delete ALL
+add 0 0 HISADDR
+#
+# Toutes les autres configurations de /etc/ppp/ppp.conf utilisent
+# ce qui suit:
+#
+MYADDR:
+add 0 0 HISADDR
+########################################################################
+# Fin de /etc/ppp/ppp.linkup
+</programlisting>
+</para>
+<para>Remarquez qu'une section de ce fichier s'appelle &ldquo;demand:&rdquo;,
+tout comme dans le fichier <filename>/etc/ppp/ppp.conf</filename>. Cette section
+dit au programme <command>ppp</command> ce qu'il doit faire, une fois la
+connexion &agrave; la demande &eacute;tablie:</para>
+<orderedlist>
+<listitem>
+<para>Supprimer toutes les informations de routage qu'il a d&eacute;j&agrave; cr&eacute;&eacute;es,</para>
+</listitem>
+<listitem>
+<para>Ajouter une route par d&eacute;faut vers l'adresse r&eacute;elle de la machine
+distante.</para>
+</listitem>
+</orderedlist>
+<para>Il est capital que les configurations d&eacute;finies dans le fichier
+<filename>/etc/ppp/ppp.conf</filename> et qui comportent les lignes
+&ldquo;set ifaddr&rdquo; et &ldquo;add 0 0&rdquo; (i.e.: les configurations
+de connexion &agrave; la demande) ex&eacute;cutent les instructions &ldquo;delete ALL&rdquo;
+et &ldquo;add 0 0 HISADDR&rdquo; du fichier
+<filename>/etc/ppp/ppp.linkup.</filename></para>
+<para><emphasis>C'est le m&eacute;canisme qui contr&ocirc;le la configuration de la liaison
+dans le cas d'une connexion &agrave; la demande.</emphasis></para>
+<para>Toutes les configurations qui ne sont pas explicitement d&eacute;finies dans
+le fichier <filename>/etc/ppp/ppp.linkup</filename> utiliseront les commandes
+list&eacute;es dans la section &ldquo;MYADDR:&rdquo; de ce fichier. C'est ce que
+feront les connexions manuelles (comme dans notre exemple
+&ldquo;interactive:&rdquo;). Cette section ajoute simplement une route par
+d&eacute;faut vers l'adresse IP du fournisseur d'acc&egrave;s (&agrave; l'autre extr&eacute;mit&eacute; de la
+ligne).</para>
+</sect3>
+</sect2>
+<sect2>
+<title>Alias IP</title>
+<para>Toutes les &eacute;tapes pr&eacute;c&eacute;dentes s'appliquent &agrave; un systeme FreeBSD utilis&eacute;
+pour se connecter &agrave; la demande &agrave; un fournisseur d'acc&egrave;s Internet.</para>
+<para>Si vous cherchez simplement, en lisant ce guide, &agrave; connecter votre
+systeme FreeBSD &agrave; l'Internet, vous pouvez passer directement au chapitre
+<link linkend="sect6">Tester le r&eacute;seau</link>.</para>
+<para>Une possibilit&eacute; tr&egrave;s int&eacute;ressante du programme <command>ppp</command>
+en mode &ldquo;connexion &agrave; la demande&rdquo; est sa capacit&eacute; &agrave; aiguiller
+automatiquement le trafic vers les autres syst&egrave;mes du r&eacute;seau local. On donne
+&agrave; cela des noms divers &ldquo;alias IP (IP Aliasing)&rdquo;,
+&ldquo;traduction d'adresse r&eacute;seau (Network Adress Translation)&rdquo;,
+&ldquo;mascarade d'adresse (Adress Masquerading)&rdquo; ou
+&ldquo;mandatement transparent (Transparent Proxying)&rdquo;.</para>
+<para>Quelle que soit la terminologie employ&eacute;e, ce fonctionnement n'est
+cependant pas automatique. Si le programme <command>ppp</command> est d&eacute;marr&eacute;
+de fa&ccedil;on habituelle, il ne fera pas transiter de paquets entre l'interface avec
+le r&eacute;seau local et la liaison vers l'ext&eacute;rieur. En effet, seul le syst&egrave;me
+FreeBSD est connect&eacute; &agrave; l'Internet; les autres syst&egrave;mes ne peuvent pas partager
+la m&ecirc;me connexion.</para>
+<para>Par exemple, si le programme <command>ppp</command> est lanc&eacute; par:</para>
+<para>
+<userinput>
+<prompt>#</prompt> ppp interactive
+</userinput>
+</para>
+<para>ou:</para>
+<para>
+<userinput>
+<prompt>#</prompt> ppp -auto demand
+</userinput>
+</para>
+<para>correspondant respectivement aux modes manuel et automatique, alors
+il &eacute;tablira une connexion &agrave; l'Internet pour la <emphasis>seule</emphasis>
+machine FreeBSD.</para>
+<para>Pour d&eacute;marrer le programme <command>ppp</command> pour l'utiliser comme
+passerelle entre le r&eacute;seau local et l'Internet, il faut utiliser l'une des
+commandes suivantes:</para>
+<para>
+<userinput>
+<prompt>#</prompt> ppp -alias interactive
+</userinput>
+</para>
+<para>ou:</para>
+<para>
+<userinput>
+<prompt>#</prompt> ppp -auto -alias demand
+</userinput>
+</para>
+<para>Alternativement, vous pouvez utiliser l'instruction &ldquo;alias enable
+yes&rdquo; dans votre fichier de configuration de <command>ppp</command>
+(Reportez-vous aux pages de manuel pour plus de d&eacute;tails).</para>
+<para>Gardez cela pr&eacute;sent &agrave; l'esprit si vous passez maintenant au chapitre
+<link linkend="sect5">Configurer les syst&egrave;mes Windows</link>.</para>
+</sect2>
+</sect1>
+<sect1 id="sect5">
+<title>Configurer les Syst&egrave;mes Windows</title>
+<para>Comme indiqu&eacute; au Chapitre <link linkend="sect2">Mise en oeuvre du r&eacute;seau local</link>,
+le r&eacute;seau de notre exemple
+comporte un syst&egrave;me FreeBSD (&ldquo;Curly&rdquo;) qui sert de passerelle
+(ou routeur) pour un r&eacute;seau local compos&eacute; de trois moutures diff&eacute;rentes
+de syst&egrave;mes Windows. Pour que ces stations puissent utiliser Curly comme
+routeur, elles doivent &ecirc;tre correctement configur&eacute;es. Notez bien que l'on
+ne vous explique pas ici comment configurer les postes Windows pour qu'ils
+puissent se connecter eux-m&ecirc;mes. Si vous cherchez de bonnes explications sur
+le sujet, voyez
+<ulink url="http://www.aladdin.co.uk/techweb">http://www.aladdin.co.uk/techweb</ulink>.</para>
+<sect2>
+<title>Configurer Windows 95</title>
+<para>Il est relativement simple de configurer Windows 95 pour relier un poste
+&agrave; votre r&eacute;seau local. Le configuration r&eacute;seau Windows 95 doit &ecirc;tre l&eacute;g&eacute;rement
+modifi&eacute;e pour pouvoir utiliser le syst&egrave;me FreeBSD comme passerelle par d&eacute;faut
+vers votre fournisseur d'acc&egrave;s. Effectuez les &eacute;tapes suivantes:</para>
+<sect3>
+<title>Cr&eacute;er le fichier Windows 95 <filename>hosts</filename></title>
+<para>Pour vous connecter aux autres postes TCP/IP du r&eacute;seau local, vous devrez
+installer une copie du fichier <filename>hosts</filename> que vous avez cr&eacute;&eacute;
+sur votre syst&egrave;me FreeBSD au paragraphe
+<link linkend="sect34">Renseigner la liste des autres machines du r&eacute;seau</link>.</para>
+<itemizedlist>
+<listitem><para>Cliquez sur le bouton &ldquo;D&eacute;marrer&rdquo;, choisissez
+&ldquo;Ex&eacute;cuter ...&rdquo;, lancez
+<userinput>notepad \WINDOWS\HOSTS</userinput>
+et cliquez sur &ldquo;OK&rdquo;,</para></listitem>
+<listitem><para>Sous l'&eacute;diteur, entrez les noms et les adresses des machines
+recopi&eacute;s du fichier <filename>hosts</filename> du paragraphe
+<link linkend="sect34">Renseigner la liste des autres machines du r&eacute;seau</link>,</para></listitem>
+<listitem><para>Une fois que c'est fait, quittez <command>notepad</command>
+(assurez-vous d'avoir enregistr&eacute; le fichier!).</para></listitem>
+</itemizedlist>
+</sect3>
+<sect3>
+<title>D&eacute;finir le configuration r&eacute;seau TCP/IP Windows 95</title>
+<itemizedlist>
+<listitem><para>Cliquez sur le bouton &ldquo;D&eacute;marrer&rdquo; de la barre de
+t&acirc;ches, Choisissez &ldquo;Param&egrave;tres&rdquo; et
+&ldquo;Panneau de Configuration&rdquo;,</para></listitem>
+<listitem><para>Double-cliquez sur l'ic&ocirc;ne r&eacute;seau pour
+l'ouvrir.</para>
+<para>Les param&egrave;tres des &eacute;l&eacute;ments du r&eacute;seau sont tous
+affich&eacute;s.</para></listitem>
+<listitem><para>S&eacute;lectionnez l'option &ldquo;Configuration&rdquo; et faites
+d&eacute;filer la liste des composants install&eacute;s pour choisir la ligne
+&ldquo;TCP/IP -><replaceable>votre interface</replaceable>&rdquo; (o&ugrave;
+<replaceable>votre interface</replaceable> est le nom ou le mod&egrave;le de
+votre contr&ocirc;leur Ethernet),</para>
+<para>Si &ldquo;TCP/IP&rdquo; ne figure pas dans la liste des composants
+r&eacute;seau install&eacute;s, cliquez sur le bouton &ldquo;Ajouter&rdquo; pour
+l'installer avant de continuer</para>
+<tip><para>Ajouter | Protocoles | Microsoft | TCP/IP | OK.</para></tip>
+</listitem>
+<listitem><para>Cliquez sur le bouton &ldquo;Propri&eacute;t&eacute;s&rdquo; pour afficher
+la liste des param&egrave;tres associ&eacute;s au composant TCP.</para></listitem>
+</itemizedlist>
+</sect3>
+<sect3>
+<title>Configurer les informations relatives &agrave; l'adresse IP</title>
+<itemizedlist>
+<listitem><para>Choisissez l'onglet &ldquo;Adresse IP&rdquo;</para></listitem>
+<listitem><para>Enfoncez le bouton &ldquo;Sp&eacute;cifier une adresse
+IP&rdquo;.</para>
+<para>(Dans notre exemple, le syst&egrave;me Windows 95 est celui que nous avons
+appel&eacute; &ldquo;Larry&rdquo;.)</para></listitem>
+<listitem><para>Dans la zone &ldquo;Adresse IP&rdquo;, entrez
+&ldquo;192.168.1.2&rdquo;,</para></listitem>
+<listitem><para>Entrez &ldquo;255.255.255.0&rdquo; dans le zone
+&ldquo;Masque de Sous-r&eacute;seau&rdquo;.</para></listitem>
+</itemizedlist>
+</sect3>
+<sect3>
+<title>Configurer les informations relatives &agrave; la passerelle</title>
+<itemizedlist>
+<listitem><para>Cliquez sur l'onglet &ldquo;Passerelle&rdquo;.</para>
+<para>Dans le r&eacute;seau de notre exemple, c'est le syst&egrave;me FreeBSD qui sera notre
+passerelle vers l'Internet (routant les paquets entre le r&eacute;seau local Ethernet
+et la connexion PPP). Entrez l'adresse IP de l'interface Ethernet de la
+machine FreeBSD, &ldquo;192.168.1.1&rdquo;, dans la zone
+&ldquo;Nouvelle Passerelle&rdquo; et cliquez sur le bouton
+&ldquo;Ajouter&rdquo;. S'il y a d'autres passerelles d&eacute;finies dans les
+&ldquo;Passerelles Install&eacute;es&rdquo;, peut-&ecirc;tre devrez-vous les
+supprimer.</para></listitem>
+</itemizedlist>
+</sect3>
+<sect3>
+<title>Configurer les informations relatives au DNS</title>
+<para>Nous supposons que votre fournisseur d'acc&egrave;s Internet vous a donn&eacute; une
+liste de serveurs de noms de domaines (Domain Name Servers)&nbsp;-&nbsp;ou
+&ldquo;Serveurs DNS&rdquo;&nbsp;-&nbsp;que vous devez utiliser. Si vous voulez
+mettre en service un serveur DNS sur votre machine FreeBSD, reportez-vous au
+chapitre
+<link linkend="sect7">Exercices pour l'&eacute;tudiant int&eacute;ress&eacute;</link> pour avoir des indications sur
+l'installation d'un serveur DNS sur une machine FreeBSD.</para>
+<itemizedlist>
+<listitem><para>Cliquez sur l'onglet &ldquo;Configuration DNS&rdquo;,</para>
+</listitem>
+<listitem><para>Assurez-vous que l'option &ldquo;Activer DNS&rdquo; est
+bien s&eacute;lectionn&eacute;e,</para>
+<para>(Si cette option n'est pas s&eacute;lectionn&eacute;e, seules les machines d&eacute;finies dans
+votre fichier <filename>hosts</filename> seront accessibles et vous ne pourrez
+pas &ldquo;surfer&rdquo; comme vous le souhaitez!)</para></listitem>
+<listitem><para>Dans la zone &ldquo;H&ocirc;te&rdquo;, entrez le nom du poste
+Windows 95, dans notre cas : &ldquo;Larry&rdquo;,</para></listitem>
+<listitem><para>Dans la zone &ldquo;Domaine&rdquo;, entrez le nom du r&eacute;seau
+local, dans notre cas : &ldquo;my.domain&rdquo;,</para></listitem>
+<listitem><para>Dans la zone &ldquo;Ordre de recherche DNS&rdquo;,
+entrez les adresses
+IP des serveurs DNS que votre fournisseur vous a donn&eacute;es, cliquez sur
+&ldquo;Ajouter&rdquo; &agrave; chaque adresse que vous d&eacute;finissez. R&eacute;p&eacute;tez l'op&eacute;ration
+autant de fois que n&eacute;cessaire pour entrer toutes les adresses que votre
+fournisseur vous a indiqu&eacute;es.</para></listitem>
+</itemizedlist>
+</sect3>
+<sect3>
+<title>Autres options TCP/IP Windows 95</title>
+<para>Pour nos besoins, les param&egrave;tres des sections &ldquo;Avanc&eacute;es&rdquo;,
+&ldquo;Configuration WINS&rdquo; et &ldquo;Liens&rdquo; sont inutiles.</para>
+<para>Si vous souhaitez utiliser le service de noms Internet de Windows
+(Windows Internet Naming Service&nbsp;-&nbsp;&ldquo;WINS&rdquo;), vous trouverez
+plus d'informations sur
+<ulink url="http://www.localnet.org">http://www.localnet.org</ulink>,
+en particulier en ce qui concerne le partage de fichiers de fa&ccedil;on transparente
+&agrave; travers l'Internet.</para>
+</sect3>
+<sect3>
+<title>Pour finir</title>
+<itemizedlist>
+<listitem><para>Cliquez sur &ldquo;OK&rdquo; pour fermer la fen&ecirc;tre
+&ldquo;Propri&eacute;t&eacute;s TCP/IP&rdquo;,</para></listitem>
+<listitem><para>Cliquez sur &ldquo;OK&rdquo; pour fermer la fen&ecirc;tre
+&ldquo;Panneau de Contr&ocirc;le R&eacute;seau&rdquo;,</para></listitem>
+<listitem><para>Red&eacute;marrez votre ordinateur si on vous le demande.</para>
+</listitem>
+</itemizedlist>
+<para>C'est tout!</para>
+</sect3>
+</sect2>
+<sect2>
+<title>Configurer Windows NT</title>
+<para>Il est relativement simple de configurer Windows NT pour relier un poste
+&agrave; votre r&eacute;seau local. Les proc&eacute;dures sont semblables &agrave; celles suivies pour
+Windows 95 &agrave; quelques diff&eacute;rences pr&egrave;s quant &agrave; l'interface utilisateur.</para>
+<para>Les &eacute;tapes d&eacute;crites ci-dessous s'appliquent &agrave; Windows NT 4.0 Workstation,
+mais les principes sont les m&ecirc;mes pour Windows NT 3.5x. Si vous installez un
+poste Windows NT 3.5x, vous pouvez vous r&eacute;f&eacute;rer
+au paragraphe <link linkend="sect53">Configurer Windows for Workgroups</link>, en
+effet, l'interface utilisateur est la m&ecirc;me pour NT 3.5x et WfW.</para>
+<para>Effectuez les op&eacute;rations suivantes:</para>
+<sect3>
+<title>Cr&eacute;er le fichier Windows NT <filename>hosts</filename></title>
+<para>Pour vous connecter aux autres postes TCP/IP du r&eacute;seau local, vous devrez
+installer une copie du fichier <filename>hosts</filename> que vous avez cr&eacute;&eacute;
+sur votre syst&egrave;me FreeBSD au paragraphe
+<link linkend="sect34">Configurer Windows for Workgroups</link>.</para>
+<itemizedlist>
+<listitem><para>Cliquez sur le bouton &ldquo;D&eacute;marrer&rdquo;, choisissez
+&ldquo;Ex&eacute;cuter ...&rdquo;, lancez
+<userinput>notepad \WINDOWS\SYSTEM\DRIVERS\ETC\HOSTS</userinput>
+et cliquez sur &ldquo;OK&rdquo;,</para></listitem>
+<listitem><para>Sous l'&eacute;diteur, entrez les noms et les adresses des machines
+recopi&eacute;s du fichier <filename>hosts</filename> du paragraphe
+<link linkend="sect34">Renseigner la liste des autres machines du r&eacute;seau</link>,</para></listitem>
+<listitem><para>Une fois que c'est fait, quittez <command>notepad</command>
+(assurez-vous d'avoir enregistr&eacute; le fichier!).</para></listitem>
+</itemizedlist>
+</sect3>
+<sect3>
+<title>D&eacute;finir le configuration r&eacute;seau TCP/IP Windows NT</title>
+<itemizedlist>
+<listitem><para>Cliquez sur le bouton &ldquo;D&eacute;marrer&rdquo; de la barre de
+t&acirc;ches, Choisissez &ldquo;Param&egrave;tres&rdquo; et
+&ldquo;Panneau de Configuration&rdquo;,</para></listitem>
+<listitem><para>Double-cliquez sur l'ic&ocirc;ne r&eacute;seau pour
+l'ouvrir,</para></listitem>
+<listitem><para>Dans l'onglet &ldquo;Identification&rdquo;,
+v&eacute;rifiez les informations des zones &ldquo;Nom d'Ordinateur&rdquo; et
+&ldquo;Workgroup&rdquo;. Dans notre exemple, &ldquo;Shemp&rdquo; sera
+le nom de la machine, et &ldquo;Stooges&rdquo; celui du groupe de travail.
+Choisissez &ldquo;Modifier&rdquo; pour corriger ces valeurs au
+besoin,</para></listitem>
+<listitem><para>Choisissez l'onglet &ldquo;Protocoles&rdquo;.</para>
+<para>Les Protocoles R&eacute;seau install&eacute;s seront affich&eacute;s. Il peut y en avoir un
+certain nombre, mais le seul qui nous int&eacute;resse ici est le
+&ldquo;Protocole TCP/IP&rdquo;. Si le &ldquo;Protocole TCP/IP&rdquo;
+n'appara&icirc;t pas dans la liste, cliquez sur le bouton &ldquo;Ajouter&rdquo;
+pour l'installer.</para>
+<tip><para>Ajouter | Protocole TCP/IP | OK.</para></tip>
+</listitem>
+<listitem><para>S&eacute;lectionnez &ldquo;Protocole TCP/IP&rdquo; et cliquez sur le
+bouton &ldquo;Propri&eacute;t&eacute;s&rdquo;.</para>
+<para>Les diff&eacute;rentes propri&eacute;t&eacute;s associ&eacute;es &agrave; TCP/IP appara&icirc;tront.</para>
+</listitem>
+</itemizedlist>
+</sect3>
+<sect3>
+<title>Configurer les informations relatives &agrave; l'adresse IP</title>
+<para>V&eacute;rifiez que l'interface Ethernet est bien d&eacute;finie dans la zone
+&ldquo;Carte R&eacute;seau&rdquo;; si ce n'est pas le cas, parcourez la
+liste des contr&ocirc;leurs jusqu'&agrave; ce que l'interface ad&eacute;quate soit affich&eacute;e.</para>
+<itemizedlist>
+<listitem><para>Choisissez l'option &ldquo;Sp&eacute;cifier une Adresse IP&rdquo;
+pour activer les trois zones de texte,</para>
+<para>Dans notre exemple, le poste Windows NT est celui qui s'appele
+&ldquo;Shemp&rdquo;.</para></listitem>
+<listitem><para>Dans la zone &ldquo;Adresse IP&rdquo;, entrez
+&ldquo;192.168.1.4&rdquo;,</para></listitem>
+<listitem><para>Entrez &ldquo;255.255.255.0&rdquo; dans le zone
+&ldquo;Masque de Sous-r&eacute;seau.&rdquo;.</para></listitem>
+</itemizedlist>
+</sect3>
+<sect3>
+<title>Configurer les informations relatives &agrave; la passerelle</title>
+<para>Dans le r&eacute;seau de notre exemple, c'est le syst&egrave;me FreeBSD qui sera notre
+passerelle vers l'Internet (routant les paquets entre le r&eacute;seau local Ethernet
+et la connexion PPP).</para>
+<itemizedlist>
+<listitem><para>S'il n'y a rien encore dans la zone &ldquo;Nouvelle
+Passerelle&rdquo;, entrez l'adresse IP de l'interface Ethernet de la
+machine FreeBSD, &ldquo;192.168.1.1&rdquo;, dans cette zone
+et cliquez sur le bouton &ldquo;Ajouter&rdquo;. Sinon, utilisez le bouton
+"Avanc&eacute;es" et la fonction &ldquo;Ajouter&rdquo; pour ajouter cette nouvelle
+passerelle.</para>
+<para>S'il y a d'autres passerelles d&eacute;finies dans les
+&ldquo;Passerelles Install&eacute;es&rdquo;, peut-&ecirc;tre devrez-vous les
+supprimer.</para></listitem>
+</itemizedlist>
+</sect3>
+<sect3>
+<title>Configurer les informations relatives au DNS</title>
+<para>Nous supposons que votre fournisseur d'acc&egrave;s Internet vous a donn&eacute; une
+liste de serveurs de noms de domaines (Domain Name Servers)&nbsp;-&nbsp;ou
+&ldquo;Serveurs DNS&rdquo;&nbsp;-&nbsp;que vous devez utiliser.</para>
+<para>Si vous voulez
+mettre en service un serveur DNS sur votre machine FreeBSD, reportez-vous
+au chapitre
+<link linkend="sect7">Exercices pour l'&eacute;tudiant int&eacute;ress&eacute;</link> pour avoir des indications sur
+l'installation d'un serveur DNS sur une machine FreeBSD.</para>
+<itemizedlist>
+<listitem><para>Cliquez sur le bouton &ldquo;DNS&rdquo;,</para>
+</listitem>
+<listitem><para>Dans la zone &ldquo;Nom d'H&ocirc;te&rdquo;, entrez le nom du poste
+Windows NT, dans notre cas : &ldquo;Shemp&rdquo;,</para></listitem>
+<listitem><para>Dans la zone &ldquo;Domaine&rdquo;, entrez le nom du r&eacute;seau
+local, dans notre cas : &ldquo;my.domain&rdquo;,</para></listitem>
+<listitem><para>Dans la zone &ldquo;Ordre de recherche du service DNS&rdquo;,
+entrez les adresses
+IP des serveurs DNS que votre fournisseur vous a donn&eacute;es, cliquez sur
+&ldquo;Ajouter&rdquo; &agrave; chaque adresse que vous d&eacute;finissez. R&eacute;p&eacute;tez l'op&eacute;ration
+autant de fois que n&eacute;cessaire pour entrer toutes les adresses que votre
+fournisseur vous a indiqu&eacute;es.</para></listitem>
+</itemizedlist>
+</sect3>
+<sect3>
+<title>Autres options TCP/IP Windows NT</title>
+<para>Pour nos besoins, les param&egrave;tres des sections
+&ldquo;Adresses WINS&rdquo; et &ldquo;Routage&rdquo; sont inutiles.</para>
+<para>Si vous souhaitez utiliser le service de noms Internet de Windows
+(Windows Internet Naming Service&nbsp;-&nbsp;&ldquo;WINS&rdquo;), vous trouverez
+plus d'informations sur
+<ulink url="http://www.localnet.org">http://www.localnet.org</ulink>,
+en particulier en ce qui concerne le partage de fichiers de fa&ccedil;on transparente
+&agrave; travers l'Internet.</para>
+</sect3>
+<sect3>
+<title>Pour finir</title>
+<itemizedlist>
+<listitem><para>Cliquez sur &ldquo;OK&rdquo; pour fermer la fen&ecirc;tre
+&ldquo;Propri&eacute;t&eacute;s TCP/IP&rdquo;,</para></listitem>
+<listitem><para>Cliquez sur &ldquo;OK&rdquo; pour fermer la fen&ecirc;tre
+&ldquo;Panneau de Contr&ocirc;le R&eacute;seau&rdquo;,</para></listitem>
+<listitem><para>Red&eacute;marrez votre ordinateur si on vous le demande.</para>
+</listitem>
+</itemizedlist>
+<para>C'est tout!</para>
+</sect3>
+</sect2>
+<sect2 id="sect53">
+<title>Configurer Windows for Workgroups</title>
+<para>Pour qu'un poste Windows for Workgroups puisse &ecirc;tre utilis&eacute; en r&eacute;seau, il
+faut avoir install&eacute; les pilotes qui sont sur la disquette Microsoft TCP/IP. Ces
+pilotes ne sont pas inclus avec WfW et les disquettes qui vont avec. S'il vous
+en faut une copie, ils sont disponibles sur
+<ulink url="ftp://ftp.microsoft.com/peropsys/windows/public/tcpip">ftp://ftp.microsoft.com/peropsys/windows/public/tcpip.</ulink></para>
+<para>Une fois que les pilotes TCP/IP ont &eacute;t&eacute; install&eacute;s, effectuez les
+op&eacute;rations suivantes:</para>
+<sect3>
+<title>Cr&eacute;er le fichier Windows for Workgroups
+<filename>hosts</filename></title>
+<para>Pour vous connecter aux autres postes TCP/IP du r&eacute;seau local, vous devrez
+installer une copie du fichier <filename>hosts</filename> que vous avez cr&eacute;&eacute;
+sur votre syst&egrave;me FreeBSD au paragraphe
+<link linkend="sect34">Renseigner la liste des autres machines du r&eacute;seau</link>.</para>
+<itemizedlist>
+<listitem><para>Dans le Gestionnaire de Programmes, cliquez sur le bouton
+&ldquo;Fichier&rdquo;, choisissez &ldquo;Ex&eacute;cuter ...&rdquo;, lancez
+<userinput>notepad \WINDOWS\HOSTS</userinput>
+et cliquez sur &ldquo;OK&rdquo;,</para></listitem>
+<listitem><para>Sous l'&eacute;diteur, entrez les noms et les adresses des machines
+recopi&eacute;s du fichier <filename>hosts</filename> de
+<link linkend="sect34">Renseigner la liste des autres machines du r&eacute;seau</link>,</para></listitem>
+<listitem><para>Une fois que c'est fait, quittez <command>notepad</command>
+(assurez-vous d'avoir enregistr&eacute; le fichier!).</para></listitem>
+</itemizedlist>
+</sect3>
+<sect3>
+<title>D&eacute;finir le configuration r&eacute;seau TCP/IP Windows for Workgroups</title>
+<itemizedlist>
+<listitem><para>Dans le Gestionnaire de Programmes, ouvrez le groupe
+&ldquo;R&eacute;seau&rdquo; en double-cliquant sur l'ic&ocirc;ne,</para></listitem>
+<listitem><para>Double-cliquez sur l'ic&ocirc;ne &ldquo;Param&egrave;tres
+R&eacute;seau&rdquo;,</para></listitem>
+<listitem><para>Dans la bo&icirc;te de dialogue &ldquo;Pilotes R&eacute;seau&rdquo;,
+double-cliquez sur l'option &ldquo;Microsoft TCP/IP-32&rdquo;.</para>
+</listitem>
+</itemizedlist>
+</sect3>
+<sect3>
+<title>Configurer les informations relatives &agrave; l'adresse IP</title>
+<para>V&eacute;rifiez que l'interface Ethernet est bien d&eacute;finie dans la liste
+&ldquo;Carte R&eacute;seau&rdquo;; si ce n'est pas le cas, parcourez la
+liste des contr&ocirc;leurs jusqu'&agrave; ce que l'interface ad&eacute;quate soit affich&eacute;e
+et s&eacute;lectionnez-la en cliquant dessus.</para>
+<itemizedlist>
+<listitem><para>V&eacute;rifiez que l'option &ldquo;Activer la Configuration DHCP
+Automatique&rdquo; n'est pas s&eacute;lectionn&eacute;e. Si c'est le cas, cliquez dessus
+pour effacer le &ldquo;X&rdquo;.</para></listitem>
+<listitem><para>Dans notre exemple, le poste Windows for Workgroups est celui
+qui s'appelle &ldquo;Moe&rdquo;; dans la zone &ldquo;Adresse IP&rdquo;, entrez
+&ldquo;192.168.1.3&rdquo;,</para></listitem>
+<listitem><para>Entrez &ldquo;255.255.255.0&rdquo; dans le zone
+&ldquo;Masque de Sous-r&eacute;seau&rdquo;.</para></listitem>
+</itemizedlist>
+</sect3>
+<sect3>
+<title>Configurer les informations relatives &agrave; la passerelle</title>
+<para>Dans le r&eacute;seau de notre exemple, c'est le syst&egrave;me FreeBSD qui sera notre
+passerelle vers l'Internet (routant les paquets entre le r&eacute;seau local Ethernet
+et la connexion PPP).</para>
+<itemizedlist>
+<listitem><para>Entrez l'adresse IP de l'interface Ethernet de la
+machine FreeBSD, &ldquo;192.168.1.1&rdquo;, dans la zone
+&ldquo;Passerelle par D&eacute;faut&rdquo;.</para></listitem>
+</itemizedlist>
+</sect3>
+<sect3>
+<title>Configurer les informations relatives au DNS</title>
+<para>Nous supposons toujours que votre fournisseur d'acc&egrave;s Internet vous a
+donn&eacute; une liste de serveurs de noms de domaines (Domain Name Servers)&nbsp;-&nbsp;ou
+&ldquo;Serveurs DNS&rdquo;&nbsp;-&nbsp;que vous devez utiliser.</para>
+<para>Si vous voulez
+mettre en service un serveur DNS sur votre machine FreeBSD, reportez-vous
+au chapitre
+<link linkend="sect7">Exercices pour l'&eacute;tudiant int&eacute;ress&eacute;</link> pour avoir des indications sur
+l'installation d'un serveur DNS sur une machine FreeBSD.</para>
+<itemizedlist>
+<listitem><para>Cliquez sur l'onglet &ldquo;Configuration DNS&rdquo;,</para>
+</listitem>
+<listitem><para>Dans la zone &ldquo;H&ocirc;te&rdquo;, entrez le nom du poste
+Windows for Workgroups, dans notre cas : &ldquo;Moe&rdquo;,</para></listitem>
+<listitem><para>Dans la zone &ldquo;Domaine&rdquo;, entrez le nom du r&eacute;seau
+local, dans notre cas : &ldquo;my.domain&rdquo;,</para></listitem>
+<listitem><para>Dans la zone &ldquo;Ordre de recherche DNS&rdquo;,
+entrez les adresses
+IP des serveurs DNS que votre fournisseur vous a donn&eacute;es, cliquez sur
+&ldquo;Ajouter&rdquo; &agrave; chaque adresse que vous d&eacute;finissez. R&eacute;p&eacute;tez l'op&eacute;ration
+autant de fois que n&eacute;cessaire pour entrer toutes les adresses que votre
+fournisseur vous a indiqu&eacute;es,</para></listitem>
+<listitem><para>Cliquez sur &ldquo;OK&rdquo; pour fermer la fen&ecirc;tre
+&ldquo;Configuration DNS&rdquo;.</para></listitem>
+</itemizedlist>
+</sect3>
+<sect3>
+<title>Pour finir</title>
+<itemizedlist>
+<listitem><para>Cliquez sur &ldquo;OK&rdquo; pour fermer la fen&ecirc;tre
+&ldquo;Propri&eacute;t&eacute;s TCP/IP&rdquo;,</para></listitem>
+<listitem><para>Cliquez sur &ldquo;OK&rdquo; pour fermer la fen&ecirc;tre
+&ldquo;Panneau de Contr&ocirc;le R&eacute;seau&rdquo;,</para></listitem>
+<listitem><para>Red&eacute;marrez votre ordinateur si on vous le demande.</para>
+</listitem>
+</itemizedlist>
+<para>C'est tout!</para>
+</sect3>
+</sect2>
+</sect1>
+<sect1 id="sect6">
+<title>Tester le r&eacute;seau</title>
+<para>Une fois que vous aurez termin&eacute; les op&eacute;rations n&eacute;cessaires d&eacute;crites plus
+haut, votre passerelle PPP vers l'Internet devrait &ecirc;tre op&eacute;rationnelle.</para>
+<sect2>
+<title>Tester la connexion vers l'ext&eacute;rieur</title>
+<para>La premi&egrave;re chose &agrave; v&eacute;rifier est que la connexion s'&eacute;tablisse entre votre
+modem et votre fournisseur d'acc&egrave;s.</para>
+</sect2>
+<sect2>
+<title>Tester le r&eacute;seau local</title>
+<para>*** &agrave; faire ***</para>
+</sect2>
+</sect1>
+<sect1 id="sect7">
+<title>Exercices pour l'&eacute;tudiant int&eacute;ress&eacute;</title>
+<sect2>
+<title>G&eacute;rer un mini-DNS</title>
+<para>Bien que g&eacute;rer une hi&eacute;rarchie du service de noms de domaines
+(&ldquo;Domain Name Service&rdquo;&nbsp;-&nbsp;DNS) puisse &ecirc;tre une t&acirc;che
+diabolique, il est tout &agrave; fait faisable d'installer un mini-serveur
+DNS sur le syt&egrave;me FreeBSD qui vous sert aussi de passerelle vers votre
+fournisseur d'acc&egrave;s.</para>
+<para>A partir des fichiers existants dans <filename>/etc/namedb</filename>
+apr&egrave;s installation de FreeBSD, il est possible de d&eacute;finir un serveur DNS qui
+ait autorit&eacute; sur le r&eacute;seau de notre exemple et serve d'interface avec
+l'architecture DNS de l'Internet.</para>
+<para>Pour cette configuration minimale, il suffit de trois fichiers:</para>
+<itemizedlist>
+<listitem><para><filename>/etc/namedb/named.boot</filename></para></listitem>
+<listitem><para><filename>/etc/namedb/named.root</filename></para></listitem>
+<listitem><para><filename>/etc/namedb/mydomain.db</filename></para></listitem>
+</itemizedlist>
+<para>Le fichier <filename>/etc/namedb/named.root</filename> est automatiquement
+initialis&eacute; &agrave; l'installation de FreeBSD, les deux autres fichiers doivent &ecirc;tre
+renseign&eacute;s manuellement.</para>
+<sect3>
+<title>Le fichier <filename>/etc/namedb/named.boot</filename></title>
+<para>Le fichier <filename>/etc/namedb/named.boot</filename> d&eacute;crit la
+configuration initiale du serveur DNS. Essentiellement, il indique au
+serveur de noms:</para>
+<orderedlist>
+<listitem><para>O&ugrave; sont les fichiers de configuration,</para></listitem>
+<listitem><para>De quels &ldquo;noms de domaines&rdquo; il a la
+responsabilit&eacute;,</para></listitem>
+<listitem><para>O&ugrave; trouver les autres serveurs DNS.</para></listitem>
+</orderedlist>
+<para>Avec l'&eacute;diteur <command>ee</command>, cr&eacute;ez un fichier
+<filename>/etc/namedb/named.boot</filename> comme suit:</para>
+<para>
+<programlisting>
+
+; fichier de d&eacute;marrage pour un mini-serveur de noms de domaines
+
+directory /etc/namedb
+
+; type domain source machine/fichier fichier de sauvegarde
+
+cache . named.root
+primary my.domain. mydomain.db
+</programlisting>
+</para>
+<para>Les lignes qui commencent par un point-virgule sont des commentaires.
+Voici la signification des autres lignes:</para>
+<itemizedlist>
+<listitem>
+<para>
+<programlisting>
+directory /etc/namedb
+</programlisting>
+</para>
+<para>Dit au serveur de noms o&ugrave; trouver les fichiers de configuration r&eacute;f&eacute;renc&eacute;s
+dans la suite du fichier <filename>/etc/namedb/named.boot</filename>.</para>
+</listitem>
+<listitem>
+<para>
+<programlisting>
+cache . named.root
+</programlisting>
+</para>
+<para>Dit au serveur de noms que la liste des serveurs de la racine (&ldquo;Root
+Servers&rdquo;) se trouve dans le fichier <filename>named.root</filename>. (Ce
+fichier est inclus dans l'installation standard et n'est pas d&eacute;crit ici.)</para>
+</listitem>
+<listitem>
+<para>
+<programlisting>
+primary my.domain mydomain.db
+</programlisting>
+</para>
+<para>Dit au serveur de noms qu'il a &ldquo;autorit&eacute;&rdquo; sur un domaine DNS
+appel&eacute; &ldquo;my.domain&rdquo; et que la liste des adresses IP des machines
+du domaine &ldquo;my.domain&rdquo; (le r&eacute;seau local) se trouve dans le fichier
+<filename>/etc/namedb/mydomain.db</filename>.
+</para>
+</listitem>
+</itemizedlist>
+<para>Une fois cr&eacute;&eacute; et sauvegard&eacute; le fichier
+<filename>/etc/namedb/named.boot</filename>, passez &agrave; l'&eacute;tape suivante pour
+cr&eacute;er le fichier <filename>/etc/namedb/named.db</filename>.</para>
+</sect3>
+<sect3>
+<title>Le fichier <filename>/etc/namedb/named.db</filename></title>
+<para>Le fichier <filename>/etc/namedb/named.boot</filename> liste les noms
+et les adresses IP de <emphasis>toutes</emphasis> les machines du r&eacute;seau
+local.</para>
+<para><emphasis>Pour une description d&eacute;taill&eacute;e des instructions de ce fichier,
+reportez-vous aux pages de manuel de <command>named</command></emphasis>.</para>
+<para>Le fichier <filename>/etc/namedb/named.boot</filename> de notre serveur
+DNS minimum contient les lignes suivantes:</para>
+<para>
+<programlisting>
+@ IN SOA my.domain. root.my.domain. (
+ 961230 ; Serial
+ 3600 ; Refresh
+ 300 ; Retry
+ 3600000 ; Expire
+ 3600 ) ; Minimum
+ IN NS curly.my.domain.
+
+curly.my.domain. IN A 192.168.1.1 # The FreeBSD box
+larry.my.domain. IN A 192.168.1.2 # The Win'95 box
+moe.my.domain. IN A 192.168.1.3 # The WfW box
+shemp.my.domain. IN A 192.168.1.4 # The Windows NT box
+
+$ORIGIN 1.168.192.IN-ADDR.ARPA
+ IN NS curly.my.domain.
+1 IN PTR curly.my.domain.
+2 IN PTR larry.my.domain.
+3 IN PTR moe.my.domain.
+4 IN PTR shemp.my.domain.
+
+$ORIGIN 0.0.127.IN-ADDR.ARPA
+ IN NS curly.my.domain.
+1 IN PTR localhost.my.domain.
+</programlisting>
+</para>
+<para>Bri&egrave;vement, ce fichier d&eacute;clare que le serveur DNS local est:</para>
+<itemizedlist>
+<listitem><para>Le &ldquo;D&eacute;but d'Autorit&eacute;&rdquo; (Start Of Authority) pour
+le domaine appel&eacute; &ldquo;my.domain&rdquo;,</para></listitem>
+<listitem><para>Le serveur de noms (Name Server&nbsp;-&nbsp;&ldquo;NS&rdquo;) pour
+&ldquo;my.domain&rdquo;,</para></listitem>
+<listitem><para>Responsable de la r&eacute;solution inverse des adresses IP qui
+commencent par &ldquo;192.168.1&rdquo; et &ldquo;127.0.0&rdquo;
+(&ldquo;$ORIGIN ...&rdquo;).</para></listitem>
+</itemizedlist>
+<para>Pour ajouter de nouvelles machines, vous devez ajouter deux lignes pour
+chaque syst&egrave;me; une dans la section du haut o&ugrave; les noms des syst&egrave;mes sont
+associ&eacute;s aux adresses Internet (&ldquo;IN A&rdquo;), et une autre ligne qui
+associe inversement l'adresse au nom de la machine (&ldquo;IN PTR&rdquo;),
+dans la section
+&ldquo;$ORIGIN 1.168.192.IN-ADDR.ARPA&rdquo;.</para>
+</sect3>
+<sect3>
+<title>D&eacute;marrer le serveur DNS</title>
+<para>Par d&eacute;faut, le serveur DNS (<filename>/etc/sbin/named</filename>) n'est
+pas lanc&eacute; au d&eacute;marrage du syst&egrave;me. Vous pouvez modifier ce comportement en
+rectifiant une seule ligne dans le fichier <filename>/etc/rc.conf</filename>,
+comme suit:</para>
+<para>Avec l'&eacute;diteur <command>ee</command>, visualisez le fichier
+<filename>/etc/rc.conf</filename>. Descendez d'une quarantaine de lignes jusqu'&agrave;
+ce que vous trouviez la section qui dit:</para>
+<para>
+<programlisting>
+---
+named_enable="NO" # Run named, the DNS server (or NO).
+named_flags="-b /etc/namedb/named.boot" # Flags to named (if enabled).
+---
+</programlisting>
+</para>
+<para>et modifiez-la en:</para>
+<para>
+<programlisting>
+---
+named_enable="YES" # Run named, the DNS server (or NO).
+named_flags="-b /etc/namedb/named.boot" # Flags to named (if enabled).
+---
+</programlisting>
+</para>
+<para>Sauvegardez le fichier et red&eacute;marrez le syst&egrave;me.</para>
+<para>Vous pouvez aussi d&eacute;marrer le serveur DNS avec la commande
+suivante:</para>
+<para>
+<userinput>
+<prompt>#</prompt> named -b /etc/namedb/named.boot
+</userinput>
+</para>
+<para>Chaque fois que vous modifiez les fichiers du r&eacute;pertoire
+<filename>/etc/namedb/named.boot</filename>, vous devez faire relire ces
+modifications par le serveur DNS avec la commande suivante:</para>
+<para>
+<userinput>
+<prompt>#</prompt> kill -HUP `cat /var/run/named.pid`
+</userinput>
+</para>
+</sect3>
+</sect2>
+<sect2>
+<title>Essayer les filtres PPP</title>
+<para>Le programme <command>ppp</command> a la capacit&eacute; d'appliquer des r&egrave;gles
+de filtrage au trafic qu'il route. Bien que cela ne soit pas aussi s&eacute;curis&eacute;
+qu'un v&eacute;ritable coupe-feu, cela autorise quelques contr&ocirc;les d'acc&egrave;s &agrave; la
+liaison.</para>
+<para>(&ldquo;<filename>man ipfw</filename>&rdquo; pour plus
+d'informations sur la configuration d'un syst&egrave;me FreeBSD plus s&eacute;curis&eacute;.)</para>
+<para>La documentation compl&egrave;te des diff&eacute;rents filtres et r&egrave;gles utilisables
+avec le programme <command>ppp</command> se trouve dans les pages de manuel
+de <command>ppp</command>.</para>
+<para>Il y a quatre classes de filtres qui s'appliquent au programme
+<command>ppp</command>:</para>
+<itemizedlist>
+<listitem>
+<para><filename>afilter</filename>&nbsp;-&nbsp;filtre compteur d'acc&egrave;s
+(ou &ldquo;Keep Alive&rdquo;&nbsp;-&nbsp;garder en vie)</para>
+<para>Ils d&eacute;finissent quels &eacute;v&eacute;nements sont ignor&eacute;s par l'instruction
+<filename>set timeout=</filename>.</para>
+</listitem>
+<listitem>
+<para><filename>dfilter</filename>&nbsp;-&nbsp;filtre d'appel</para>
+<para>Ils d&eacute;finissent quels &eacute;v&eacute;nements sont ignor&eacute;s par <command>ppp</command>
+en mode connexion &agrave; la demande.</para>
+</listitem>
+<listitem>
+<para><filename>ifilter</filename>&nbsp;-&nbsp;filtre d'entr&eacute;e</para>
+<para>Ils d&eacute;finissent quels paquets entrants sont accept&eacute;s ou
+refus&eacute;s par le programme <command>ppp</command>.</para>
+</listitem>
+<listitem>
+<para><filename>ofilter</filename>&nbsp;-&nbsp;filtre de sortie</para>
+<para>Ils d&eacute;finissent quels paquets sortants sont accept&eacute;s ou
+refus&eacute;s par le programme <command>ppp</command>.</para>
+</listitem>
+</itemizedlist>
+<para>L'exemple qui suit est un extrait de la configuration d'un syst&egrave;me
+op&eacute;rationnel qui donne une bonne base pour un fonctionnement Internet
+&ldquo;normal&rdquo;, tout en emp&ecirc;chant que <command>ppp</command> accepte
+n'importe quoi sur la liaison. Les commentaires d&eacute;crivent la logique de
+chaque jeu de r&egrave;gles.:</para>
+<para>
+<programlisting>
+ #
+ # filtres KeepAlive
+ # ne pa prendre en compte les paquets ICMP,DNS et RIP
+ #
+ set afilter 0 deny icmp
+ set afilter 1 deny udp src eq 53
+ set afilter 2 deny udp dst eq 53
+ set afilter 3 deny udp src eq 520
+ set afilter 4 deny udp dst eq 520
+ set afilter 5 permit 0/0 0/0
+ #
+ # filtre d'appel:
+ # Note: ICMP &eacute;tablira la connexion dans cette configuration!
+ #
+ set dfilter 0 permit 0/0 0/0
+ #
+ # autoriser les paquets ident
+ #
+ set ifilter 0 permit tcp dst eq 113
+ set ofilter 0 permit tcp src eq 113
+ #
+ # autoriser les connexions telnet &agrave; l'Internet
+ #
+ set ifilter 1 permit tcp src eq 23 estab
+ set ofilter 1 permit tcp dst eq 23
+ #
+ # autoriser l'acc&egrave;s ftp &agrave; l'Internet
+ #
+ set ifilter 2 permit tcp src eq 21 estab
+ set ofilter 2 permit tcp dst eq 21
+ set ifilter 3 permit tcp src eq 20 dst gt 1023
+ set ofilter 3 permit tcp dst eq 20
+ #
+ # autoriser les requ&ecirc;tes DNS
+ #
+ set ifilter 4 permit udp src eq 53
+ set ofilter 4 permit udp dst eq 53
+ #
+ # autoriser les transferts de zone DNS
+ #
+ set ifilter 5 permit tcp src eq 53
+ set ofilter 5 permit tcp dst eq 53
+ #
+ # autoriser l'acc&egrave;s depuis/vers le r&eacute;seau local
+ #
+ set ifilter 6 permit 0/0 192.168.1.0/24
+ set ofilter 6 permit 192.168.1.0/24 0/0
+ #
+ # autoriser les r&eacute;ponses au ping et traceroute
+ #
+ set ifilter 7 permit icmp
+ set ofilter 7 permit icmp
+ set ifilter 8 permit udp dst gt 33433
+ set ofilter 9 permit udp dst gt 33433
+ #
+ # autoriser cvsup
+ #
+ set ifilter 9 permit tcp src eq 5998
+ set ofilter 9 permit tcp dst eq 5998
+ set ifilter 10 permit tcp src eq 5999
+ set ofilter 10 permit tcp dst eq 5999
+ #
+ # autoriser NTP pour la synchronization des horloges
+ #
+ set ifilter 11 permit tcp src eq 123 dst eq 123
+ set ofilter 11 permit tcp src eq 123 dst eq 123
+ set ifilter 12 permit udp src eq 123 dst eq 123
+ set ofilter 12 permit udp src eq 123 dst eq 123
+ #
+ # SMTP serait une bonne id&eacute;e!
+ #
+ set ifilter 13 permit tcp src eq 25
+ set ofilter 13 permit tcp dst eq 25
+ #
+ #
+ # nous utilisons beaucoup whois, donc nous le laissons passer
+ #
+ set ifilter 14 permit tcp src eq 43
+ set ofilter 14 permit tcp dst eq 43
+ set ifilter 15 permit udp src eq 43
+ set ofilter 15 permit udp dst eq 43
+ #
+ # si aucune des conditions ci-dessus n'est remplie, le paquet est refus&eacute;
+ #-------
+</programlisting>
+</para>
+<para>Il peut y avoir jusqu'&agrave; vingt r&egrave;gles dans chaque classe de filtres. Dans
+chaque classe, les r&egrave;gles sont num&eacute;rot&eacute;es s&eacute;quentiellement de 0 &agrave; 20,
+<emphasis>mais aucune r&egrave;gle dans une classe particuli&egrave;re n'est appliqu&eacute;e tant
+que la r&egrave;gle &ldquo;0&rdquo; n'est pas d&eacute;finie!</emphasis></para>
+<para>Si vous d&eacute;cidez de <emphasis>ne pas</emphasis> utiliser de r&egrave;gles de
+filtrage dans votre configuration du programme <command>ppp</command>, alors
+<emphasis>TOUT</emphasis> le trafic de/vers votre syst&egrave;me sera accept&eacute; lorsqu'il
+est connect&eacute; &agrave; votre fournisseur d'acc&egrave;s.</para>
+<para>Si vous d&eacute;cidez d'appliquer des r&egrave;gles de filtrages, ajoutez les lignes
+pr&eacute;c&eacute;dentes &agrave; votre fichier <filename>/etc/ppp/ppp.conf</filename> dans l'une
+des sections &ldquo;default&rdquo;, &ldquo;demand&rdquo; ou
+&ldquo;interactive&rdquo; (ou &agrave; toutes&nbsp;-&nbsp;c'est &agrave; vous de voir).</para>
+</sect2>
+</sect1>
+</article>
diff --git a/fr_FR.ISO8859-1/articles/programming-tools/Makefile b/fr_FR.ISO8859-1/articles/programming-tools/Makefile
new file mode 100644
index 0000000000..72c1d9b8c9
--- /dev/null
+++ b/fr_FR.ISO8859-1/articles/programming-tools/Makefile
@@ -0,0 +1,20 @@
+#
+# The FreeBSD Documentation Project
+# The FreeBSD French Documentation Project
+#
+# $FreeBSD$
+# Original revision: 1.4
+#
+
+DOC?= article
+
+FORMATS?= html
+
+INSTALL_COMPRESSED?=gz
+INSTALL_ONLY_COMPRESSED?=
+
+SRCS= article.sgml
+
+DOC_PREFIX?= ${.CURDIR}/../../..
+
+.include "${DOC_PREFIX}/share/mk/doc.project.mk"
diff --git a/fr_FR.ISO8859-1/articles/programming-tools/article.sgml b/fr_FR.ISO8859-1/articles/programming-tools/article.sgml
new file mode 100755
index 0000000000..064144f61c
--- /dev/null
+++ b/fr_FR.ISO8859-1/articles/programming-tools/article.sgml
@@ -0,0 +1,2001 @@
+<!--
+ The FreeBSD Documentation Project
+ The FreeBSD French Documentation Project
+
+ $FreeBSD$
+ Original revision: n.nn
+-->
+
+<!DOCTYPE ARTICLE PUBLIC "-//FreeBSD//DTD DocBook V3.1-Based Extension//EN" [
+<!ENTITY % man PUBLIC "-//FreeBSD//ENTITIES DocBook Manual Page Entities//EN"> %man;
+<!ENTITY % urls PUBLIC "-//FreeBSD//ENTITIES Common Document URL Entities//FR"> %urls;
+<!ENTITY % abstract PUBLIC "-//FreeBSD//ENTITIES DocBook Abstract Entities//FR"> %abstract;
+<!ENTITY % artheader PUBLIC "-//FreeBSD//ENTITIES DocBook ArtHeader Entities//FR"> %artheader;
+<!ENTITY % translators PUBLIC "-//FreeBSD//ENTITIES DocBook Translator Entities//FR"> %translators;
+
+<!ENTITY % authors SYSTEM "../../../en_US.ISO_8859-1/books/handbook/authors.ent"> %authors;
+<!ENTITY % mailing-lists SYSTEM "../../books/handbook/mailing-lists.ent"> %mailing-lists;
+ <!ENTITY rel.current CDATA "3.2">
+]>
+
+<article LANG="fr">
+ <artheader>
+ <title>Les outils de d&eacute;veloppement sous FreeBSD : Guide de
+ l'utilisateur</title>
+ <authorgroup>
+ <author>
+ <firstname>James</firstname>
+ <surname>Raynard</surname>
+ <affiliation>
+ <address>
+ <email>jraynard@freebsd.org</email>
+ </address>
+ </affiliation>
+ </author>
+ </authorgroup>
+ <abstract>
+ <para>17 Ao&ucirc;t 1997</para>
+ <para>Copyright &copy; James Raynard, 1997.</para>
+ <para>Ce document est une introduction &agrave; l'utilisation de
+ quelques-uns des outils de programmation fournis avec FreeBSD,
+ quoique l'essentiel reste aussi valable pour de nombreuses autres
+ versions d'Unix. Il ne cherche <emphasis>pas</emphasis> &agrave;
+ expliquer en d&eacute;tail comment coder. La plus grande partie du
+ document suppose que vous n'avez aucune ou peu de notions
+ pr&eacute;alables de programmation, bien que l'on esp&egrave;re
+ que la plupart des programmeurs y trouveront quelque chose qui leur
+ sera utile.</para>
+ &abstract.disclaimer;
+ &trans.a.haby;
+ </abstract>
+ </artheader>
+ <sect1>
+ <title>Introduction<anchor id=foo></title>
+ <para>FreeBSD fournit un excellent environnement de d&eacute;veloppement.
+ Le syst&egrave;me de base comprend des compilateurs C, C++ et Fortran,
+ et un assembleur, pour ne pas mentionner l'interpr&eacute;teur Perl et
+ les outils Unix classiques comme <command>sed</command> et
+ <command>awk</command>. Si cela ne vous suffit pas, il y a beaucoup
+ d'autres compilateurs et interpr&eacute;teurs au catalogue des logiciels
+ port&eacute;s. FreeBSD est tr&egrave;s largement compatible avec les
+ standards comme <acronym>POSIX</acronym> et <acronym>ANSI</acronym> C,
+ de m&ecirc;me qu'avec son propre h&eacute;ritage BSD, il est donc
+ possible d'&eacute;crire des applications qui compilent et
+ s'ex&eacute;cutent sur une grande vari&eacute;t&eacute; de
+ plates-formes.</para>
+ <para>Toute cette puissance, toutefois, peut submerger au premier abord,
+ si vous n'avez jamais auparavant &eacute;crit de programme sur une
+ plate-forme Unix. Ce document vise &agrave; vous aider &agrave; vous
+ y mettre, sans approfondir trop les questions les plus avanc&eacute;es.
+ L'intention est de vous fournir suffisamment de bases pour vous
+ permettre de tirer ensuite profit de la documentation.</para>
+ <para>La plus grande partie du document ne demande aucune ou peu de
+ connaissance de la programmation mais suppose une comp&eacute;tence de
+ base dans l'utilisation d'Unix et la volont&eacute; d'apprendre!</para>
+ </sect1>
+ <sect1>
+ <title>Introduction &agrave; la programmation</title>
+ <para>Un programme est une s&eacute;rie d'instructions qui dit &agrave;
+ l'ordinateur de faire des choses diverses; l'instruction qu'il doit
+ ex&eacute;cuter d&eacute;pend parfois de ce qui s'est pass&eacute;
+ lorsqu'il a ex&eacute;cut&eacute; une instruction
+ pr&eacute;c&eacute;dente. Cette section vous donne un aper&ccedil;u
+ des deux principales m&eacute;thodes pour transmettre ces instructions,
+ ou &ldquo;commandes&rdquo; comme on les appellent. L'une est d'utiliser
+ un <firstterm>interpr&eacute;teur</firstterm>, l'autre de se servir d'un
+ <firstterm>compilateur</firstterm>. Comme les langues humaines sont trop
+ compliqu&eacute;es pour &ecirc;tre comprises sans ambigu&iuml;t&eacute;
+ par un ordinateur, les commandes sont g&eacute;n&eacute;ralement
+ &eacute;crites dans l'un ou l'autre des languages sp&eacute;cialement
+ con&ccedil;us &agrave; cet effet.</para>
+ <sect2>
+ <title>Interpr&eacute;teurs</title>
+ <para>Dans le cas d'un interpr&eacute;teur, le langage s'accompagne d'un
+ environnement, sous lequel vous tapez des commandes &agrave; son invite
+ et qui les ex&eacute;cute pour vous. Pour des programmes plus
+ compliqu&eacute;s, vous pouvez saisir les commandes dans un fichier
+ et le faire charger et ex&eacute;cuter les commandes qu'il contient par
+ l'interpr&eacute;teur. Si quelque chose se passe mal, la plupart des
+ interpr&eacute;teurs passeront le contr&ocirc;le &agrave; un
+ d&eacute;bogueur pour vous aider &agrave; trouver l'origine du
+ probl&egrave;me.</para>
+ <para>Cela a l'avantage de vous permettre de voir imm&eacute;diatement
+ le r&eacute;sultat de vos commandes et de corriger sur le champ vos
+ erreurs. Le principal inconv&eacute;nient survient lorsque vous voulez
+ partager vos programmes avec d'autres. Il faut qu'ils aient le
+ m&ecirc;me interpr&eacute;teur que vous ou que vous ayez le moyen de
+ leur fournir cet interpr&eacute;teur; il faut aussi qu'ils comprennent
+ comment s'en servir. Les utilisateurs peuvent aussi ne pas
+ appr&eacute;cier de se retrouver sous un d&eacute;bogueur s'ils
+ appuyent sur la mauvaise touche! Du point de vue de la performance,
+ les interpr&eacute;teurs utilisent parfois beaucoup de m&eacute;moire
+ et ne g&eacute;n&eacute;rent habituellement pas le code aussi
+ efficacement que les compilateurs.</para>
+ <para>A mon avis, les langages interpr&eacute;t&eacute;s sont le meilleur
+ moyen de d&eacute;buter si vous n'avez jamais programm&eacute;
+ auparavant. On trouve typiquement ce genre d'environnement avec des
+ langages tels que Lisp, Smalltalk, Perl et Basic. On peut aussi
+ avancer que le <foreignphrase>shell</foreignphrase> Unix est
+ lui-m&ecirc;me un interpr&eacute;teur, beaucoup &eacute;crivent en fait
+ avec des
+ proc&eacute;dures&nbsp;-&nbsp;<foreignphrase>scripts</foreignphrase>&nbsp;-&nbsp;pour
+ se faciliter le travail d'administration de leur machine. De fait,
+ une partie de la philosphie d'origine d'Unix &eacute;tait de fournir
+ nombre de petits programmes utilitaires qui puissent &ecirc;tre
+ utilis&eacute;s de concert dans des proc&eacute;dures pour effectuer
+ des t&acirc;ches utiles.</para>
+ </sect2>
+ <sect2>
+ <title>Interpr&eacute;teurs disponibles pour FreeBSD</title>
+
+ <para>Voici une liste des interpr&eacute;teurs disponibles sous forme de
+ <ulink URL="ftp://ftp.freebsd.org/pub/FreeBSD/packages/">&ldquo;paquetages&rdquo;</ulink>
+ FreeBSD, accompagn&eacute;e d'une br&egrave;ve description des langages
+ interpr&eacute;t&eacute;s les plus r&eacute;pandus.</para>
+ <para>Pour vous procurer l'un de ces &ldquo;paquetages&rdquo;, il vous
+ suffit de cliquer sur le lien correspondant et d'ex&eacute;cuter
+ ensuite:</para>
+<screen>&prompt.root; <userinput>pkg_add <replaceable>nom_du_paquetage</replaceable></userinput></screen>
+ <para>sous le compte super-utilisateur <username>root</username>. Il faut
+ bien &eacute;videmment que vous ayez un syst&egrave;me FreeBSD 2.1.0
+ ou ult&eacute;rieur en &eacute;tat de marche pour que le logiciel
+ fonctionne.</para>
+ <variablelist>
+ <varlistentry>
+ <term><acronym>BASIC</acronym></term>
+ <listitem>
+ <para>Abr&eacute;viation pour &ldquo;<foreignphrase>Beginner's
+ All-purpose Symbolic Instruction
+ Code</foreignphrase>&rdquo;&nbsp;-&nbsp;code d'instructions
+ symbolique universel pour les d&eacute;butants.
+ D&eacute;velopp&eacute; dans les ann&eacute;es 50 pour apprendre
+ la programmation aux &eacute;tudiants des Universit&eacute;s et
+ fourni avec tout ordinateur personnel qui se respectait dans les
+ ann&eacute;es 80, <acronym>BASIC</acronym> a &eacute;t&eacute; le
+ premier langage pour de nombreux programmeurs. C'est aussi la base
+ de <trademark>Visual Basic</trademark>.</para>
+ <para>L'<ulink URL="ftp://ftp.freebsd.org/pub/FreeBSD/packages/lang/bwbasic-2.10.tgz">interpr&eacute;teur
+ Basic Bywater</ulink> et
+ l'<ulink URL="ftp://ftp.freebsd.org/pub/FreeBSD/packages/lang/pbasic-2.0.tgz">interpr&eacute;teur
+ Basic de Phil Cockroft</ulink> (appel&eacute; auparavant
+ &ldquo;Rabbit Basic&rdquo;) sont disponibles sous forme de
+ <ulink URL="ftp://ftp.freebsd.org/pub/FreeBSD/packages/">&ldquo;paquetages&rdquo;
+ FreeBSD</ulink>.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>Lisp</term>
+ <listitem>
+ <para>Un langage d&eacute;velopp&eacute; &agrave; la fin des
+ ann&eacute;es 1950 comme alternative aux langages
+ &ldquo;d&eacute;voreurs de nombres&rdquo; qui e&acute;taient
+ populaires &agrave; l'&eacute;poque. Au lieu d'&ecirc;tre
+ bas&eacute; sur les nombres, Lisp repose sur les listes; de fait,
+ son nom est une abr&eacute;viation pour &ldquo;<foreignphrase>List
+ Processing</foreignphrase>&rdquo;&nbsp;-&nbsp;traitement de
+ listes. Tr&eacute;s r&eacute;pandu dans les milieux de l'IA
+ (Intelligence Artificielle).</para>
+ <para>Lisp est un langage tr&egrave;s puissant et
+ sophistiqu&eacute;, mais peut &ecirc;tre assez lourd et
+ bavard.</para>
+ <para>FreeBSD dispose de
+ <ulink URL="ftp://ftp.freebsd.org/pub/FreeBSD/packages/gcl-2.0.tgz">GNU
+ Common Lisp</ulink> sous forme de &ldquo;paquetage&rdquo;.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>Perl</term>
+ <listitem>
+ <para>Tr&egrave;s employ&eacute; par les administrateurs
+ syst&egrave;me pour &eacute;crire des proc&eacute;dures; et
+ souvent aussi sur les serveurs <foreignphrase>World Wide
+ Web</foreignphrase> pour &eacute;crire des proc&eacute;dures
+ <acronym>CGI</acronym>.</para>
+ <para>La Version 4, qui est probablement encore la version la plus
+ largement r&eacute;pandue est fournie avec FreeBSD; le plus
+ r&eacute;cent
+ <ulink URL="ftp://ftp.freebsd.org/pub/FreeBSD/packages/lang/perl-5.001.tgz">Perl
+ Version 5</ulink> est disponible sous forme de
+ &ldquo;paquetage&rdquo;.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>Scheme</term>
+ <listitem>
+ <para>Un dialecte de Lisp qui est plut&ocirc;t plus compact et plus
+ propre que Common Lisp. Courant dans les Universit&eacute;s parce
+ qu'il est assez facile &agrave; enseigner en premier cycle comme
+ langage d'initiation et pr&eacute;sente un niveau d'abstraction
+ suffisant pour &ecirc;tre utilis&eacute; pour du travail de
+ recherche.</para>
+ <para>FreeBSD offre en &ldquo;paquetages&rdquo;
+ l'<ulink URL="ftp://ftp.freebsd.org/pub/FreeBSD/packages/lang/elk-3.0.tgz">Interpr&eacute;teur
+ Scheme Elk</ulink>,
+ l'<ulink URL="ftp://ftp.freebsd.org/pub/FreeBSD/packages/lang/mit-scheme-7.3.tgz">Interpr&eacute;teur Scheme du MIT</ulink> et
+ l'<ulink URL="ftp://ftp.freebsd.org/pub/FreeBSD/packages/lang/scm-4e1.tgz">Interpr&eacute;teur
+ Scheme SCM</ulink>.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>Icon</term>
+ <listitem>
+ <para><ulink URL="ftp://ftp.freebsd.org/pub/FreeBSD/packages/lang/icon-9.0.tgz">Le
+ langage de programmation Icon</ulink>.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>Logo</term>
+ <listitem>
+ <para><ulink URL="ftp://ftp.freebsd.org:pub/FreeBSD/packages/lang/ucblogo-3.3.tgz">L'interpr&eacute;teur
+ LOGO de Brian Harvey</ulink>.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry><term>Python</term>
+ <listitem>
+ <para><ulink URL="ftp://ftp.freebsd.org/pub/FreeBSD/packages/lang/python-1.2">Le
+ langage de programmation orient&eacute; objet Python</ulink>.</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </sect2>
+ <sect2>
+ <title>Compilateurs</title>
+ <para>Les compilateurs sont assez diff&eacute;rents. Vous &eacute;crivez
+ d'abord votre code dans un(des) fichiers(s) &agrave; l'aide d'un
+ &eacute;diteur. Vous ex&eacute;cutez ensuite le compilateur et voyez
+ s'il valide votre programme. S'il ne le compile pas, serrez les dents et
+ retournez sous l'&eacute;diteur. S'il le compile et vous en fait un
+ programme, vous pouvez l'utiliser soit &agrave; l'invite de
+ l'interpr&eacute;teur de commande, soit en vous servant d'un
+ d&eacute;bogueur pour voir s'il fonctionne
+ correctement<footnote><para>Dans
+ le cas contraire, si vous l'ex&eacute;cutez sur la ligne de commande, il
+ peut &eacute;ventuellement
+ planter&nbsp;-&nbsp;&ldquo;<foreignphrase>core
+ dump</foreignphrase>&rdquo;.</para></footnote>.</para>
+ <para>Ce n'est &eacute;videmment pas aussi imm&eacute;diat que de se
+ servir d'un interpr&eacute;teur. Cela vous permet cependant de faire
+ beaucoup de choses qui sont tr&egrave;s difficiles ou m&ecirc;me
+ irr&eacute;alisables avec un interpr&eacute;teur, comme &eacute;crire
+ du code qui interagisse &eacute;troitement avec le syst&egrave;me
+ d'exploitation&nbsp;-&nbsp; ou m&ecirc;me &eacute;crire votre propre
+ syst&egrave;me d'exploitation! C'est aussi utile si vous avez besoin
+ d'&eacute;crire du code tr&egrave;s efficace, parce que le compilateur
+ peut prendre son temps et optimiser le code, ce qui ne serait pas
+ acceptable d'un interpr&eacute;teur. Distribuer un programme
+ &eacute;crit pour un compilateur est g&eacute;n&eacute;ralement plus
+ facile&nbsp;-&nbsp;il suffit de livrer une copie de l'ex&eacute;cutable,
+ en supposant que les destinataires aient le m&ecirc;me syst&egrave;me
+ d'exploitation que vous.</para>
+ <para>Les langages compil&eacute;s incluent Pascal, C et C++. C et C++
+ sont des langages qui pardonnent assez peu, et plus adapt&eacute;s aux
+ programmeurs plus exp&eacute;riment&eacute;s. Pascal, d'un autre
+ c&ocirc;t&eacute;, a &eacute;t&eacute; con&ccedil;u pour l'enseignement,
+ et est un assez bon langage avec lequel commencer. Malheureusement,
+ FreeBSD n'a aucun support pour Pascal, &agrave; l'exception d'un
+ convertisseur de Pascal en C, au catalogue des logiciels
+ port&eacute;s.</para>
+ <para>Comme le cycle
+ &ldquo;&eacute;dition-compilation-ex&eacute;cution-d&eacute;bogage&rdquo;
+ est assez fastidieux, de nombreux fournisseurs de compilateurs
+ commerciaux
+ ont produit des Environnements de D&eacute;veloppement
+ Int&eacute;gr&eacute;s (<acronym>EDI</acronym> en abr&eacute;g&eacute;).
+ FreeBSD ne dispose pas d'<acronym>EDI</acronym> en tant que tel; il est
+ cependant possible d'utiliser Emacs &agrave; cet effet. C'est
+ expliqu&eacute; &agrave; la section <link linkend="emacs">Utiliser
+ Emacs comme environnement de d&eacute;veloppement</link>.</para>
+ </sect2>
+ </sect1>
+ <sect1>
+ <title>Compiler avec <command>cc</command></title>
+ <para>Cette section ne s'occupe que du compilateur GNU pour C et C++, qui
+ est fourni de base avec le syst&egrave;me FreeBSD. Il peut &ecirc;tre
+ appel&eacute; soit avec la commande <command>cc</command>, soit avec
+ <command>gcc</command>. Les d&eacute;tails de la r&eacute;alisation
+ d'un programme avec un interpr&eacute;teur varient consid&eacute;rablement
+ d'un interpr&eacute;teur &agrave; l'autre, est sont
+ g&eacute;n&eacute;ralement bien d&eacute;crits par l'aide en ligne de
+ l'interpr&eacute;teur.</para>
+ <para>Une fois que vous avez &eacute;crit votre chef-d'oeuvre,
+ l'&eacute;tape suivante consiste &agrave; le convertir en quelque chose
+ qui (esp&eacute;rons-le!) s'ex&eacute;cutera sous FreeBSD. Cela demande
+ habituellement plusieurs op&eacute;rations successives, dont chacune est
+ confi&eacute;e &agrave; un programme diff&eacute;rent.</para>
+ <procedure>
+ <step>
+ <para>Pr&eacute;-processer votre code source pour en &eacute;liminer les
+ commentaires et faire diverses autres choses, comme la substitution
+ des macros-instructions en C.</para>
+ </step>
+ <step>
+ <para>V&eacute;rifier la syntaxe de votre code pour s'assurer que vous
+ avez respect&eacute; les r&egrave;gles du langage. Si ce n'est pas le
+ cas, il rousp&eacute;tera.</para>
+ </step>
+ <step>
+ <para>Convertir le code source en langage
+ assembleur&nbsp;-&nbsp;c'est tr&egrave;s proche du code machine, mais
+ encore compr&eacute;hensible par des &ecirc;tres humains. C'est du
+ moins ce que l'on pr&eacute;tend<footnote><para>Pour &ecirc;tre
+ rigoureusement exact, <command>cc</command> convertit le code source
+ en un <firstterm>P-code</firstterm> qui lui est propre, et ne
+ d&eacute;pend pas de la machine, et non en assembleur &agrave; ce
+ stade.</para></footnote>.</para>
+ </step>
+ <step>
+ <para>Convertir le langage assembleur en code machine&nbsp;-&nbsp;oui,
+ nous parlons ici de bits et d'octets, de z&eacute;ros et de
+ uns.</para>
+ </step>
+ <step>
+ <para>V&eacute;rifier que vous avez utilis&eacute; de fa&ccedil;on
+ coh&eacute;rente les fonctions et les variables globales. Si, par
+ exemple, vous avez appel&eacute; une fonction qui n'existe pas, il
+ s'en plaindra.</para>
+ </step>
+ <step>
+ <para>Si vous essayez de g&eacute;n&eacute;rer un programme &agrave;
+ partir de plusieurs fichiers de source, faire ce qu'il faut pour
+ les regrouper.</para>
+ </step>
+ <step>
+ <para>S'arranger pour produire quelque chose que le chargeur de
+ programmes du syst&egrave;me pourra mettre en m&eacute;moire et
+ ex&eacute;cuter.</para>
+ </step>
+ </procedure>
+ <para>Le mot <firstterm>compiler</firstterm> est souvent utilis&eacute; pour
+ ne d&eacute;signer que les &eacute;tapes 1 &agrave; 4&nbsp;-&nbsp;les
+ autres sont appel&eacute;es <firstterm>&eacute;dition de
+ liens</firstterm>. L'&eacute;tape 1 est parfois appel&eacute;e
+ <firstterm>pr&eacute;-processer</firstterm> et les &eacute;tapes 3-4
+ <firstterm>assembler</firstterm>.</para>
+ <para>Heureusement, pratiquement tous ces d&eacute;tails vous sont
+ transparents, car la commande <command>cc</command> est une interface
+ qui g&egrave;re pour vous l'appel de ces diff&eacute;rents programmes
+ avec les bons arguments; taper simplement:</para>
+<screen>&prompt.user; <userinput>cc foobar.c</userinput></screen>
+ <para>effectue la compilation de <filename>foobar.c</filename> en passant
+ par toutes les &eacute;tapes d&eacute;crites ci-dessus. Si vous avez
+ &agrave; compiler plus d'un fichier, faites simplement quelque chose
+ comme:</para>
+<screen>&prompt.user; <userinput>cc foo.c bar.c</></screen>
+ <para>Notez que la v&eacute;rification syntaxique ne consiste qu'en cela:
+ v&eacute;rifier la syntaxe. Il n'y aura pas de contr&ocirc;le sur les
+ erreurs logiques que vous auriez commises, comme faire ex&eacute;cuter
+ au programme une boucle infinie ou utiliser un tri &agrave; bulles au lieu
+ d'un tri par arbre binaire<footnote><para>Au cas o&ugrave; vous ne le
+ sauriez pas, un tri par arbre binaire est une mani&egrave;re efficace
+ d'ordonner des donn&eacute;es, ce qui n'est pas le cas du tri
+ &agrave; bulles.</para></footnote>.</para>
+ <para><command>cc</command> dispose d'une quantit&eacute; d'options, qui
+ sont toutes d&eacute;crites dans les pages de manuel. En voici
+ quelques-unes des plus importantes, et la fa&ccedil;on de les
+ utiliser.</para>
+ <variablelist>
+ <varlistentry>
+ <term><option>-o <replaceable>nom_de_fichier</replaceable></option></term>
+ <listitem>
+ <para>Le nom du fichier r&eacute;sultat. Si vous n'utilisez pas cette
+ option, <command>cc</command> g&eacute;n&eacute;rera un
+ ex&eacute;cutable appel&eacute;
+ <filename>a.out</filename><footnote><para>Les raisons de cela se
+ sont perdues dans les brumes de
+ l'histoire.</para></footnote>.</para>
+ <informalexample>
+<screen>&prompt.user; <userinput>cc foobar.c</userinput> <lineannotation>l'ex&eacute;cutable est <filename>a.out</filename></lineannotation>
+&prompt.user; <userinput>cc -o foobar foobar.c</userinput> <lineannotation>l'ex&eacute;cutable est <filename>foobar</filename></lineannotation></screen>
+ </informalexample>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><option>-c</option></term>
+ <listitem>
+ <para>Uniquement compiler le fichier, ne pas faire l'&eacute;dition de
+ liens. Utile pour des programmes d'essai, quand vous voulez
+ simplement v&eacute;rifier la syntaxe, ou si vous vous servez d'un
+ <filename>Makefile</filename>.</para>
+ <informalexample>
+<screen>&prompt.user; <userinput>cc -c foobar.c</userinput></screen>
+ </informalexample>
+ <para>Cela g&eacute;n&eacute;rera un <firstterm>fichier
+ objet</firstterm> (et non un ex&eacute;cutable) appel&eacute;
+ <filename>foobar.o</filename>. Il pourra &ecirc;tre li&eacute; avec
+ d'autres fichiers objet pour constituer un ex&eacute;cutable.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><option>-g</option></term>
+ <listitem>
+ <para>Cr&eacute;e une version d&eacute;bogable de l'ex&eacute;cutable
+ Le compilateur inclut alors dans l'ex&eacute;cutable des
+ informations de correspondance entre les num&eacute;ros de ligne du
+ fichier source et les fonctions appel&eacute;es. Un d&eacute;bogueur
+ peut alors utiliser ces informations pour vous afficher le code
+ source tandis que vous ex&eacute;cutez pas &agrave; pas le
+ programme, ce qui est <emphasis>tr&egrave;s</emphasis> utile;
+ l'inconv&eacute;nient est que toutes ces informations augmentent
+ consid&eacute;rablement la taille du programme. Normalement, vous
+ compilez avec <option>-g</option> quand vous d&eacute;veloppez le
+ programme, et compilez ensuite une &ldquo;version de
+ livraison&rdquo; quand vous &ecirc;tes satisfait parce qu'il
+ fonctionne correctement.</para>
+ <informalexample>
+<screen>&prompt.user; <userinput>cc -g foobar.c</userinput></screen>
+ </informalexample>
+ <para>Cela produira une version d&eacute;bogable du
+ programme<footnote><para>Remarquez que nous n'avons pas
+ utilis&eacute; l'indicateur <option>-o</option> pour pr&eacute;ciser
+ le nom de l'ex&eacute;cutable, celui-ci s'appelera donc
+ <filename>a.out</filename>. G&eacute;n&eacute;rer une version
+ d&eacute;bogable appel&eacute;e <filename>foobar</filename> est
+ laiss&eacute; &agrave; titre d'exercice aux soins du
+ lecteur!</para></footnote>.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><option>-O</option></term>
+ <listitem>
+ <para>G&eacute;n&egrave;re une version optimis&eacute;e de
+ l'ex&eacute;cutable. Le compilateur effectue alors diverses
+ op&eacute;rations bien pens&eacute;es pour essayer de construire
+ un programme qui aille plus vite que normalement. Vous pouvez
+ faire suivre <option>-O</option> d'un nombre pour demander un
+ degr&eacute; plus important d'optimisation, mais cela met souvent
+ en &eacute;vidence des bogues dans l'optimiseur du compilateur.
+ Par exemple, on sait que la version de <command>cc</command> de
+ FreeBSD 2.1.0 produit du code incorrect avec l'option
+ <option>-O2</option> dans certaines circonstances.</para>
+ <para>On n'active en g&eacute;n&eacute;ral l'optimisation
+ qu'&agrave; la compilation de la version de livraison.</para>
+ <informalexample>
+<screen>&prompt.user; <userinput>cc -O -o foobar foobar.c</userinput></screen>
+ </informalexample>
+ <para>Cela construira une version optimis&eacute;e de
+ <filename>foobar</filename>.</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ <para>Les trois indicateurs suivants demanderont &agrave;
+ <command>cc</command> de v&eacute;rifier que votre code est conforme
+ &agrave; la norme internationale, souvent appel&eacute;e norme
+ <acronym>ANSI</acronym>, bien que ce soit &agrave; proprement parler
+ une norme <acronym>ISO</acronym>.</para>
+ <variablelist>
+ <varlistentry>
+ <term><option>-Wall</option></term>
+ <listitem>
+ <para>Active tous les messages d'avertissement que les auteurs du
+ compilateur <command>cc</command> ont jug&eacute;s
+ int&eacute;ressants. Malgr&eacute; son nom
+ (&ldquo;<foreignphrase>all</foreignphrase>&rdquo;&nbsp;-&nbsp;tous),
+ cela n'active pas tous les messages d'avertissement dont le
+ compilateur est capable.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><option>-ansi</option></term>
+ <listitem>
+ <para>D&eacute;sactive la plupart, mais pas toutes, les
+ possibilit&eacute;s non-<acronym>ANSI</>&nbsp;C fournies par
+ <command>cc</command>. Malgr&eacute; son nom, cela ne garantit pas
+ absolument que votre code soit conforme &agrave; la norme.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><option>-pedantic</option></term>
+ <listitem>
+ <para>D&eacute;sactive <emphasis>toutes</emphasis> les
+ possibilit&eacute;s non-<acronym>ANSI</>&nbsp;C de
+ <command>cc</command>.</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ <para>Sans ces indicateurs, <command>cc</command> vous permet d'utiliser
+ ses extensions non-standard de la norme. Quelques-unes sont tr&egrave;s
+ utiles, mais ne se retrouveront pas sur d'autres
+ compilateurs&nbsp;-&nbsp;de fait, l'un des objectifs principaux de la
+ norme est de permettre l'&eacute;criture de code qui puissent &ecirc;tre
+ r&eacute;utilis&eacute; avec n'importe quel compilateur sur n'importe
+ quel syst&egrave;me. C'est cela que l'on appelle du <firstterm>code
+ portable</firstterm>.</para>
+ <para>En g&eacute;n&eacute;ral, vous devriez vous efforcer de rendre votre
+ code aussi portable que possible, sans quoi vous risquez de devoir
+ r&eacute;&eacute;crire enti&egrave;rement votre programme par la suite
+ pour qu'il fonctionne ailleurs&nbsp;-&nbsp;et qui peut dire ce que vous
+ utiliserez dans quelques ann&eacute;es?</para>
+ <informalexample>
+<screen>&prompt.user; <userinput>cc -Wall -ansi -pedantic -o foobar foobar.c</userinput></screen>
+ </informalexample>
+ <para>Cela g&eacute;n&eacute;rera un ex&eacute;cutable
+ <filename>foobar</filename> apr&egrave;s avoir v&eacute;rifi&eacute; que
+ <filename>foobar.c</filename> respecte la norme.</para>
+ <variablelist>
+
+ <varlistentry>
+ <term><option>-l<replaceable>biblioth&egrave;que</replaceable></option></term>
+ <listitem>
+ <para>D&eacute;finit une biblioth&egrave;que de fonctions &agrave;
+ utiliser pour l'&eacute;dition de liens.</para>
+ <para>L'exemple le plus courant est la compilation d'un programme
+ qui utilise certaines des fonctions math&eacute;matiques de C. A
+ l'inverse de la plupart des autres plates-formes, ces fonctions
+ sont dans une biblioth&egrave;que diff&eacute;rente de la
+ biblioth&egrave;que C standard et vous devez pr&eacute;ciser au
+ compilateur qu'il doit l'utiliser.</para>
+ <para>La r&egrave;gle est que si la biblioth&egrave;que s'appelle
+ <filename>lib<replaceable>quelque_chose</replaceable>.a</filename>,
+ vous donnez &agrave; <command>cc</command> l'argument
+ <option>-l<replaceable>quelque_chose</replaceable></option>. Par
+ exemple, la biblioth&egrave;que math&eacute;matique s'appelle
+ <filename>libm.a</filename>, vous donnez donc &agrave;
+ <command>cc</command> l'argument <option>-lm</option>. Un
+ d&eacute;tail &agrave; conna&icirc;tre &agrave; propos de la
+ biblioth&egrave;que math&eacute;matique est que ce doit
+ g&eacute;n&eacute;ralement &ecirc;tre la derni&egrave;re sur
+ la ligne de commande.</para>
+ <informalexample>
+<screen>&prompt.user; <userinput>cc -o foobar foobar.c -lm</userinput></screen>
+ </informalexample>
+ <para>Cela ajoutera &agrave; l'&eacute;dition de liens de
+ <filename>foobar</filename> des fonctions de la
+ biblioth&egrave;que math&eacute;matique.</para>
+ <para>Si vous compilez du code C++, vous devrez ajouter
+ <option>-lg++</option>, ou <option>-lstdc++</option> si vous
+ utilisez la version 2.2 de FreeBSD ou une version
+ ult&eacute;rieure, &agrave; la ligne de commande pour
+ &eacute;diter les liens avec les fonctions de la
+ biblioth&egrave;que C++. Au lieu de cela, vous pouvez utiliser la
+ commande <command>c++</command> au lieu de <command>cc</command>,
+ qui fera la m&ecirc;me chose &agrave; votre place. Sous FreeBSD,
+ <command>c++</command> peut aussi &ecirc;tre appell&eacute; avec
+ <command>g++</command>.</para>
+ <informalexample>
+<screen>&prompt.user; <userinput>cc -o foobar foobar.cc -lg++</userinput> <lineannotation>Avec FreeBSD 2.1.6 et ant&eacute;rieurs</lineannotation>
+&prompt.user; <userinput>cc -o foobar foobar.cc -lstdc++</userinput> <lineannotation>Avec FreeBSD 2.2 et ult&eacute;rieurs</lineannotation>
+&prompt.user; <userinput>c++ -o foobar foobar.cc</userinput></screen>
+ </informalexample>
+
+ <para>Chacun de ces exemples construira un ex&eacute;cutable
+ <filename>foobar</filename> &agrave; partir du fichier source C++
+ <filename>foobar.cc</filename>. Remarquez que, sur les
+ syst&egrave;mes Unix, les fichiers sources C++ ont
+ traditionnellement l'extension <filename>.C</filename>,
+ <filename>.cxx</filename> ou <filename>.cc</filename>,
+ plut&ocirc;t que l'extension <filename>.cpp</filename>
+ de sytle <trademark>MS-DOS</trademark> (qui est d&eacute;j&agrave;
+ utilis&eacute;e pour autre chose). <command>gcc</command> se
+ fiait autrefois &agrave; l'extension pour savoir quel type de
+ compilateur utiliser avec le fichier source, mais cette
+ restriction ne s'applique plus, vous pouvez donc appeler vos
+ fichiers C++ <filename>.cpp</filename> en toute
+ impunit&eacute;!</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ <sect2>
+ <title>Questions et probl&egrave;mes <command>cc</command></title>
+ <para>Q. J'essaie d'&eacute;crire un programme qui utilise la fonction
+ <function>sin()</function> et j'obtiens une erreur qui ressemble
+ &agrave; ce qui suit. Qu'est-ce que cela veut dire?
+ <informalexample>
+<screen>/var/tmp/cc0143941.o: Undefined symbol `_sin' referenced from text segment</screen>
+ </informalexample>
+ </para>
+ <para>R. Quand vous utilisez des fonctions math&eacute;matiques telles
+ que <function>sin()</function>, vous devez dire &agrave;
+ <command>cc</command> d'inclure la biblioth&egrave;que
+ math&eacute;matique &agrave; l'&eacute;dition de liens, comme ceci:
+ <informalexample>
+<screen>&prompt.user; <userinput>cc -o foobar foobar.c -lm</userinput></screen>
+ </informalexample></para>
+
+ <para>Q. D'accord, j'ai &eacute;crit ce petit programme pour
+ m'entra&icirc;ner &agrave; utiliser <option>-lm</option>. Il ne fait
+ que calculer 2.1 &agrave; la puissance 6:
+ <informalexample>
+ <programlisting>
+#include &lt;stdio.h&gt;
+
+int main() {
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;float f;
+
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;f = pow(2.1, 6);
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;printf("2.1 ^ 6 = %f\n", f);
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return 0;
+}
+ </programlisting>
+ </informalexample>
+ et l'ai compil&eacute; comme ceci:
+ <informalexample>
+<screen>&prompt.user; <userinput>cc temp.c -lm</userinput></screen>
+ </informalexample>
+ comme vous avez dit qu'il fallait le faire, mais voil&agrave; ce que
+ j'obtiens &agrave; l'ex&eacute;cution:
+ <informalexample>
+<screen>&prompt.user; <userinput>./a.out</userinput>
+2.1 ^ 6 = 1023.000000</screen>
+ </informalexample></para>
+ <para>Ce n'est <emphasis>pas</emphasis> la bonne r&eacute;ponse! Que se
+ passe-t-il?</para>
+ <para>R. Quand le compilateur voit que vous appelez une fonction, il
+ regarde s'il en a d&eacute;j&agrave; vu un prototype. Si ce n'est pas
+ le cas, il suppose que la fonction retourne un
+ <type>int</type>&nbsp;-&nbsp;<foreignphrase>entier</foreignphrase>, ce
+ qui n'est &eacute;videmment pas ce que vous souhaitez dans ce
+ cas.</para>
+ <para>Q. Comment alors r&eacute;gler ce probl&egrave;me?</para>
+ <para>R. Les prototypes des fonctions math&eacute;matiques sont dans
+ <filename>math.h</filename>. Si vous incluez ce fichier, le
+ compilateur trouvera le prototype et cessera de vous fournir un
+ r&eacute;sultat bizarre!
+ <informalexample>
+ <programlisting>
+#include &lt;math.h&gt;
+#include &lt;stdio.h&gt;
+
+int main() {
+...
+ </programlisting>
+ </informalexample>
+ </para>
+ <para>Apr&egrave;s l'avoir recompil&eacute; de la m&ecirc;me
+ fa&ccedil;on qu'auparavant, ex&eacute;cutez-le:
+ <informalexample>
+<screen>&prompt.user; <userinput>./a.out</userinput>
+2.1 ^ 6 = 85.766121</screen>
+ </informalexample>
+ </para>
+ <para>Si vous utilisez la moindre fonction math&eacute;matique, incluez
+ <emphasis>toujours</emphasis> <filename>math.h</filename> et n'oubliez
+ pas d'utiliser la biblioth&egrave;que math&eacute;matique &agrave;
+ l'&eacute;dition de liens.</para>
+ <para>Q. J'ai compil&eacute; un fichier appel&eacute;
+ <filename>foobar.c</filename> et je ne trouve pas d'ex&eacute;cutable
+ appel&eacute; <filename>foobar</filename>. O&ugrave; est-il
+ pass&eacute;?</para>
+ <para>R. N'oubliez pas, <command>cc</command> appelera
+ l'ex&eacute;cutable <filename>a.out</filename> &agrave; moins que vous
+ ne lui disiez de faire autrement. Utilisez l'option
+ <option>-o&nbsp;<replaceable>nom_de_fichier</replaceable></option>:
+ <informalexample>
+<screen>&prompt.user; <userinput>cc -o foobar foobar.c</userinput></screen>
+ </informalexample>
+ </para>
+ <para>Q. OK, si j'ai un ex&eacute;cutable appel&eacute;
+ <filename>foobar</filename>, je le vois avec <command>ls</command>,
+ mais quand je tape <command>foobar</command> sur la ligne de commande,
+ il me dit que le fichier n'existe pas. Pourquoi ne le trouve-t-il
+ pas?</para>
+ <para>R. A l'inverse de <trademark>MS-DOS</trademark>, Unix ne regarde
+ pas dans le r&eacute;pertoire courant quand il cherche le programme
+ que vous voulez ex&eacute;cuter, &agrave; moins que vous ne le lui
+ disiez. Soit tapez <command>./foobar</command>, ce qui veut dire
+ &ldquo;ex&eacute;cuter le fichier appel&eacute;
+ <filename>foobar</filename> du r&eacute;pertoire courant&rdquo;, ou
+ modifiez votre variable d'environnement
+ <systemitem class=environvar>PATH</systemitem> pour qu'elle ressemble
+ &agrave;:
+ <informalexample>
+<screen>bin:/usr/bin:/usr/local/bin:.</screen>
+ </informalexample>
+ Le dernier point signifie &ldquo;chercher dans le r&eacute;pertoire
+ courant si le fichier n'est pas dans les autres
+ r&eacute;pertoires&rdquo;.</para>
+ <para>Q. J'ai appel&eacute; mon ex&eacute;cutable
+ <filename>test</filename>, mais il ne se passe rien quand je le
+ lance. Pourquoi?</para>
+ <para>R. Il y a un programme appel&eacute; <command>test</command> dans
+ <filename>/usr/bin</filename> sur la plupart des syst&egrave;mes Unix
+ et c'est celui-l&agrave; que trouve l'interpr&eacute;teur de commandes
+ avant de regarder dans le r&eacute;pertoire courant. Soit tapez:
+ <informalexample>
+<screen>&prompt.user; <userinput>./test</userinput></screen>
+ </informalexample>
+ ou choisissez un meilleur nom pour votre programme!</para>
+ <para>Q. J'ai compil&eacute; et tout a commenc&eacute; &agrave;
+ fonctionner correctement, puis il y a eu une erreur et il m'a dit
+ quelque chose &agrave; propos de <errorname>core dumped</errorname>.
+ Qu'est-ce que cela veut dire?</para>
+ <para>A. L'expression <firstterm>core dump</firstterm> date des tous
+ premiers jours d'Unix, quand les machines utilisaient la
+ m&eacute;moire
+ centrale&nbsp;-&nbsp;&ldquo;<foreignphrase>core memory</foreignphrase>&rdquo;
+ pour stocker les informations. Essentiellement, si le programme
+ &ldquo;plantait&rdquo; dans certaines conditions, le syst&egrave;me
+ enregistrait sur disque le contenu de la m&eacute;moire centrale
+ dans un fichier appel&eacute; <filename>core</filename>, que le
+ programmeur pouvait ensuite diss&eacute;quer pour trouver
+ o&ugrave; les choses avaient mal tourn&eacute;es.</para>
+ <para>Q. Fascinant, mais que suis-je cens&eacute; faire
+ maintenant?</para>
+ <para>A. Servez-vous de <command>gdb</command> pour analyser l'image
+ m&eacute;moire (Reportez-vous &agrave; la section
+ <link linkend="debugging">D&eacute;boguer</link>).</para>
+ <para>R. Quand mon programme a g&eacute;n&eacute;r&eacute; une image
+ m&eacute;moire, il a dit quelque chose &agrave; propose de
+ <errorname>segmentation fault</errorname>&nbsp;-&nbsp;&ldquo;erreur
+ de segmentation&rdquo;. Qu'est-ce que c'est?</para>
+ <para>Q. Cela signifie essentiellement que votre programme a
+ essay&eacute; d'effectuer une quelconque op&eacute;ration
+ ill&eacute;gale sur la m&eacute;moire; Unix est con&ccedil;u pour
+ prot&eacute;ger le syst&egrave;me d'exploitation des programmes
+ mal &eacute;duqu&eacute;s.</para>
+ <para>Les raisons les plus courantes en sont:
+ <itemizedlist>
+ <listitem>
+ <para>Essayer d'&eacute;crire en m&eacute;moire adress&eacute;e par
+ un pointeur <symbol>NULL</symbol>, e.g.:
+ <programlisting>
+char *foo = NULL;
+strcpy(foo, "bang!");
+ </programlisting>
+ </para>
+ </listitem>
+ <listitem>
+ <para>Utiliser un pointeur qui n'a pas &eacute;t&eacute;
+ initialis&eacute;, e.g.:
+ <programlisting>
+char *foo;
+strcpy(foo, "bang!");
+ </programlisting>
+ Le pointeur aura une valeur al&eacute;atoire qui, avec de la
+ chance, adressera une zone m&eacute;moire non accessible &agrave;
+ votre programme, de sorte que le noyau tuera ce dernier avant
+ qu'il ne provoque de d&eacute;gat. Si vous manquez de chance,
+ il pointera quelque part &agrave; l'int&eacute;rieur de votre
+ programme et endommagera l'une de vos structures de
+ donn&eacute;es, provoquant un dysfonctionnement myst&eacute;rieux
+ de votre programme.</para>
+ </listitem>
+ <listitem>
+ <para>Tenter d'acc&eacute;der au-del&agrave; du dernier
+ &eacute;l&eacute;ment d'un tableau, e.g.:
+ <programlisting>
+int bar[20];
+bar[27] = 6;
+ </programlisting>
+ </para>
+ </listitem>
+ <listitem>
+ <para>Essayer d'enregistrer quelque chose dans une zone de
+ m&eacute;moire accessible en lecture seule, e.g.:
+ <programlisting>
+char *foo = "Mon texte";
+strcpy(foo, "bang!");
+ </programlisting>
+ Les compilateurs Unix stockent souvent les cha&icirc;nes de
+ caract&egrave;res constantes comme <literal>"Mon texte"</literal>
+ en m&eacute;moire accessible en lecture seule.</para>
+ </listitem>
+ <listitem>
+ <para>Utiliser incorrectement les fonctions
+ <function>malloc()</function> et <function>free()</function>,
+ e.g.:
+ <programlisting>
+char bar[80];
+free(bar);
+ </programlisting>
+ ou:
+ <programlisting>
+char *foo = malloc(27);
+free(foo);
+free(foo);
+ </programlisting>
+ </para>
+ </listitem>
+ </itemizedlist>
+ </para>
+ <para>Commettre l'une de ces fautes ne provoquera pas toujours une erreur,
+ mais ce sont malgr&eacute; tout des choses &agrave; ne pas faire.
+ Certains syst&egrave;mes et compilateurs sont plus tol&eacute;rants que
+ d'autres, ce qui fait que des programmes qui s'ex&eacute;cutent
+ correctement sur un syst&egrave;me peuvent ne plus fonctionner sur un
+ autre.</para>
+ <para>Q. Parfois, le programme provoque la g&eacute;n&eacute;ration d'une
+ image m&eacute;moire avec le message <errorname>bus error</errorname>.
+ Mon manuel Unix dit qu'il s'agit d'un erreur mat&eacute;riel, mais
+ l'ordinateur fonctionne apparemment correctement. Est-ce vrai?</para>
+ <para>R. Fort heureusement, non (&agrave; moins bien s&ucirc;r que vous
+ n'ayez aussi un probl&egrave;me mat&eacute;riel). C'est habituellement
+ une autre fa&ccedil;on de dire que vous avez acc&eacute;d&eacute;
+ incorrectement &agrave; la m&eacute;moire.</para>
+ <para>Q. Il me semble que cette histoire de <foreignphrase>core
+ dump</foreignphrase> peut &ecirc;tre tr&egrave;s utile, si je peux la
+ provoquer quand je veux. Est-ce possible, ou dois-je attendre qu'il se
+ produise une erreur?</para>
+ <para>R. Oui, allez simplement sur une autre console ou fen&ecirc;tre
+ <application>xterm</application> et tapez:
+ <screen>&prompt.user; <userinput>ps</userinput></screen> pour
+ conna&icirc;tre l'IDentifiant de processus de votre programme, puis:
+ <screen>&prompt.user; <userinput>kill -ABRT <replaceable>pid</replaceable></userinput></screen>
+ o&ugrave; <parameter><replaceable>pid</replaceable></parameter> est
+ l'ID de processus que vous avez recherch&eacute;.</para>
+ <para>C'est par exemple utile si votre programme est parti dans une boucle
+ infinie. Au cas o&ugrave; votre programme pi&eacute;gerait les
+ interruptions <symbol>SIGABRT</symbol>, il y a plusieurs autres signaux
+ qui auront le m&ecirc;me effet.</para>
+ </sect2>
+ </sect1>
+ <sect1>
+ <title>Make</title>
+ <sect2>
+ <title>Qu'est-ce que <command>make</command>?</title>
+ <para>Lorsque vous travaillez sur un programme simple avec seulement un
+ ou deux fichiers de source, taper:
+<screen>&prompt.user; <userinput>cc fichier1.c fichier2.c</userinput></screen>
+ n'est pas trop g&ecirc;nant, mais cela devient rapidement tr&egrave;s
+ fastidieux lorsqu'il y a plusieurs fichiers&nbsp;-&nbsp;et cela peut
+ aussi mettre du temps &agrave; compiler.</para>
+ <para>Un fa&ccedil;on d'&eacute;viter ces probl&egrave;mes est
+ d'utiliser des fichiers <firstterm>objets</firstterm> et de ne
+ recompiler que les fichiers de source dont le contenu a chang&eacute;.
+ Nous pourrions alors avoir quelque chose du style:
+<screen>&prompt.user; <userinput>cc fichier1.o fichier2.o</userinput> &hellip; <userinput>file37.c</userinput> &hellip</screen>
+ si nous avons modif&eacute; <filename>fichier37.c</filename>, et
+ celui-l&agrave; uniquement, depuis notre compilation
+ pr&eacute;c&eacute;dente. Cela peut s&eacute;rieusement
+ acc&eacute;l&eacute;rer la compilation, mais ne r&eacute;soud pas le
+ probl&egrave;me de saisie &agrave; r&eacute;p&eacute;tition de la
+ commande.</para>
+ <para>Nous pourrions aussi &eacute;crire une proc&eacute;dure pour
+ r&eacute;soudre ce dernier probl&egrave;me, mais ne ne pourrions alors
+ que lui faire tout recompiler, ce qui serait tr&egrave;s peu efficace
+ sur un gros projet.</para>
+ <para>Que ce passe-t-il si nous avons des centaines de fichiers de
+ sources? Si nous travaillons en &eacute;quipe et que d'autres
+ oublient de nous pr&eacute;venir des modifications qu'ils ont
+ apport&eacute;es &agrave; un des fichiers que nous utilisons?</para>
+ <para>Peut-&ecirc;tre pourrions-nous rassembler les deux solutions et
+ &eacute;crire quelque chose qui ressemble &agrave; une
+ proc&eacute;dure et comporte une sorte de r&egrave;gle magique
+ qui dise quand tel fichier de source doit &ecirc;tre compil&eacute;.
+ Nous n'aurions plus besoin que d'un programme qui comprennent ces
+ r&egrave;gles, parce que c'est un peu trop compliqu&eacute; pour une
+ proc&eacute;dure.</para>
+ <para>Ce programme s'appelle <command>make</command>. Il lit un fichier,
+ qu'on appelle un <firstterm>makefile</firstterm>, qui lui dit quelles
+ sont les d&eacute;pendances entre les diff&eacute;rents fichiers, et
+ en d&eacute;duit lesquels ont besoin ou non d'&ecirc;tre
+ recompil&eacute;s. Par exemple, une r&egrave;gle peut signifier
+ quelque chose comme &ldquo;si <filename>fromboz.o</filename> est plus
+ ancien que <filename>fromboz.c</filename>, cela veut dire que
+ <filename>fromboz.c</filename> doit avoir &eacute;t&eacute;
+ modifi&eacute;, il faut donc le recompiler&rdquo;. Le fichier
+ &ldquo;<foreignphrase>makefile</foreignphrase>&rdquo; inclut aussi
+ des r&egrave;gles qui lui disent <emphasis>comment</emphasis>
+ recompiler, ce qui en fait un outil encore plus puissant.</para>
+ <para>Ces fichiers &ldquo;makefiles&rdquo; sont habituellement
+ rang&eacute;s dans le m&ecirc;me r&eacute;pertoire que les sources
+ auxquels ils s'appliquent, et peuvent &ecirc;tre appel&eacute;s
+ <filename>makefile</filename>, <filename>Makefile</filename> ou
+ <filename>MAKEFILE</filename>. La plupart des programmeurs utilisent
+ le nom <filename>Makefile</filename>, ce qui fait qu'ils se trouvent
+ alors vers le d&eacute;but de la liste des fichiers et sont ainsi
+ facilement rep&eacute;rables <footnote><para>Ils n'utilisent pas la
+ variante <filename>MAKEFILE</filename> parce que les noms en
+ majuscules servent souvent &agrave; d&eacute;signer les fichiers de
+ documentation comme
+ <filename>README</filename>.</para></footnote>.</para>
+ </sect2>
+ <sect2>
+ <title>Exemple d'utilisation de <command>make</command></title>
+ <para>Voici un fichier <filename>Makefile</filename>
+ &eacute;l&eacute;mentaire :
+ <programlisting>
+foo: foo.c
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cc -o foo foo.c
+ </programlisting>
+ Il contient deux lignes, une pour la d&eacute;pendance et une
+ pour la g&eacute;n&eacute;ration.</para>
+ <para>La ligne d&eacute;crivant la d&eacute;pendance contient le
+ nom du programme (qu'on appelle la <firstterm>cible</firstterm>),
+ suivi de &ldquo;deux points&rdquo;, puis d'un blanc et du nom
+ du fichier source. Quand <command>make</command> lit cette ligne,
+ il regarde si <filename>foo</filename> existe; s'il existe, il
+ compare la date de derni&egrave;re modification de
+ <filename>foo</filename> &agrave; celle de derni&egrave;re
+ modification de <filename>foo.c</filename>. Si
+ <filename>foo</filename> n'existe pas, ou s'il est ant&eacute;rieur
+ &agrave; <filename>foo.c</filename>, il regarde alors la ligne de
+ g&eacute;n&eacute;ration pour savoir ce qu'il faut faire. En
+ d'autres termes, c'est la r&egrave;gle &agrave; appliquer pour
+ savoir si <filename>foo.c</filename> doit &ecirc;tre
+ recompil&eacute;.</para>
+ <para>La ligne de g&eacute;n&eacute;ration commence par une
+ <token>tabulation</token> (appuyez sur la touche
+ <keycap>Tab</keycap>) suivie de la commande que vous taperiez
+ pour compiler <filename>foo</filename> si vous le faisiez sur
+ la ligne de commande. Si <filename>foo</filename> n'est pas
+ &agrave; jour ou s'il n'existe pas, <command>make</command>
+ ex&eacute;cute alors cette commande pour le cr&eacute;er. En
+ d'autres termes, c'est la r&egrave;gle qui dit &agrave;
+ <command>make</command> comment recompiler
+ <filename>foo.c</filename>.</para>
+ <para>Ainsi, quand vous tapez <userinput>make</userinput>, il
+ fera en sorte que <filename>foo</filename> soit en phase avec les
+ derni&egrave;res modifications que vous avez apport&eacute;es &agrave;
+ <filename>foo.c</filename>. Ce principe s'&eacute;tend aux
+ <filename>Makefile</filename>s avec des centaines de
+ cibles&nbsp;-&nbsp;de fait, sur FreeBSD, il est possible de compiler
+ tout le syst&egrave;me d'exploitation en tapant simplement
+ <userinput>make world</userinput> dans le r&eacute;pertoire
+ ad&eacute;quat!</para>
+ <para>Une autre particularit&eacute; de <filename>Makefile</filename>s
+ est que les cibles ne sont pas n&eacute;cessairement des programmes.
+ Nous pourrions par exemple avoir le <filename>Makefile</filename>
+ suivant:
+ <programlisting>
+foo: foo.c
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cc -o foo foo.c
+
+install:
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cp foo /home/me
+ </programlisting>
+ </para>
+ <para>Nous pouvons dire &agrave; <command>make</command> quelle cible
+ nous voulons atteindre en tapant:
+<screen>&prompt.user; <userinput>make <replaceable>cible</replaceable></userinput></screen>
+ <command>make</command> examinera alors cette cible et ignorera
+ toutes les autres. Par exemple, si, avec le
+ <filename>Makefile</filename> pr&eacute;c&eacute;dent, nous tapons
+ <userinput>make foo</userinput>, <command>make</command> ignorera
+ la cible <action>install</action>.</para>
+ <para>Si nous tapons simplement <userinput>make</userinput> tout
+ court, il examinera toujours la premi&egrave;re cible et
+ s'arr&ecirc;tera ensuite sans s'occuper des autres. Si nous
+ avions tap&eacute; <userinput>make</userinput> dans ce cas, il
+ serait simplement all&eacute; &agrave; la cible
+ <action>foo</action>, aurait recompil&eacute;
+ <filename>foo</filename> si n&eacute;cessaire, et se serait
+ arr&ecirc;t&eacute; sans passer &agrave; la cible
+ <action>install</action>.</para>
+ <para>Remarquez que la cible <action>install</action> ne d&eacute;pend
+ en fait de rien du tout! Cela signifie que la commande sur la ligne
+ suivante est toujours ex&eacute;cut&eacute;e si nous essayons de
+ reconstruire cette cible en tapant
+ <userinput>make install</userinput>. Dans ce cas, il copiera
+ <filename>foo</filename> dans le r&eacute;pertoire de l'utilisateur.
+ C'est souvent utilis&eacute; par les <filename>Makefile</filename>s
+ de logiciels, de sorte que l'application soit install&eacute;e dans
+ le bon r&eacute;pertoire, une fois correctement
+ compil&eacute;e.</para>
+ <para>C'est un point un peu d&eacute;licat &agrave; expliquer. Si vous
+ ne comprenez pas exactement comment <command>make</command>
+ fonctionne, la meilleure chose &agrave; faire est d'&eacute;crire
+ un programme simple comme le classique &ldquo;Bonjour, le
+ monde!&rdquo;, un fichier <filename>Makefile</filename> et de
+ faire des essais. Compilez ensuite en utilisant plus d'un
+ fichier source, ou en ayant un fichier source qui inclut un
+ fichier d'en-t&ecirc;te. La commande <command>touch</command>
+ vous sera tr&egrave;s utile&nbsp;-&nbsp;elle modifie la date
+ d'un fichier sans que vous ayez &agrave; l'&eacute;diter.</para>
+ </sect2>
+ <sect2>
+ <title>Makefiles FreeBSD</title>
+ <para>L'&eacute;criture de <filename>Makefile</filename>s peut
+ &ecirc;tre assez compliqu&eacute;e. Heurusement, les syst&egrave;mes
+ bas&eacute;s sur BSD, comme FreeBSD, en fournissent de tr&egrave;s
+ puissants, int&eacute;gr&eacute;s au syst&egrave;me. Le catalogue des
+ logiciels port&eacute;s de FreeBSD en est un excellent exemple. Voici
+ l'essentiel d'un de leurs <filename>Makefile</filename>s typiques:
+ <programlisting>
+MASTER_SITES= ftp://freefall.cdrom.com/pub/FreeBSD/LOCAL_PORTS/
+DISTFILES= scheme-microcode+dist-7.3-freebsd.tgz
+
+.include &lt;bsd.port.mk&gt;
+ </programlisting>
+ </para>
+ <para>Si nous allons maintenant dans le r&eacute;pertoire associ&eacute;
+ &agrave; ce logiciel et tapons <userinput>make</userinput>, voici ce
+ qui se passe:</para>
+ <procedure>
+ <step>
+ <para>Il regarde si le code source de ce logiciel est
+ d&eacute;j&agrave; pr&eacute;sent sur le syst&egrave;me.</para>
+ </step>
+ <step>
+ <para>S'il n'y est pas, une connexion FTP &agrave; l'URL
+ indiqu&eacute;e par <symbol>MASTER_SITES</symbol> est
+ &eacute;tablie pour t&eacute;l&eacute;charger le source.</para>
+ </step>
+ <step>
+ <para>La somme de contr&ocirc;le est calcul&eacute;e sur le source et
+ compar&eacute;e &agrave; celle calcul&eacute;e sur une version
+ connue et valid&eacute;e. Cela pour s'assurer que le source n'a
+ pas &eacute;t&eacute; corrompu pendant le transfert.</para>
+ </step>
+ <step>
+ <para>Les modifications n&eacute;cessaires pour que le code
+ fonctionne sous FreeBSD sont appliqu&eacute;es&nbsp;-&nbsp;c'est
+ ce que l'on appelle <firstterm>patcher</firstterm>.</para>
+ </step>
+ <step>
+ <para>Les op&eacute;rations particuli&egrave;res de configuration
+ du source sont effectu&eacute;es. (De nombreuses distributions de
+ programmes Unix essayent de d&eacute;terminer sur quel
+ syst&egrave;me elles sont compil&eacute;es et de quelles
+ fonctionnalit&eacute;s Unix optionnelles il
+ dispose&nbsp;-&nbsp;c'est &agrave; ce stade du sc&eacute;nario
+ d'installation de logiciels sous FreeBSD que leur sont fournies
+ ces informations).</para>
+ </step>
+ <step>
+ <para>Le code source du programme est compil&eacute;. De fait, on
+ passe dans le r&eacute;pertoire o&ugrave; le code a
+ &eacute;t&eacute; d&eacute;compact&eacute; et
+ <command>make</command> y est ex&eacute;cut&eacute;&nbsp;-&nbsp;le
+ <filename>Makefile</filename> du programme lui-m&ecirc;me contient
+ les informations n&eacute;cessaires &agrave; sa
+ compilation.</para>
+ </step>
+ <step>
+ <para>Nous disposons maintenant d'une version compil&eacute;e du
+ programme. Si nous le voulons, nous pouvons maintenant la tester;
+ si nous avons confiance dans le programme, nous pouvons taper
+ <userinput>make install</userinput>. Cela recopiera le programme
+ et tous les fichiers d'environnement dont il a besoin &agrave;
+ l'endroit ad&eacute;quat; une entr&eacute;e sera aussi
+ cr&eacute;&eacute;e dans une <database>base de donn&eacute;es des
+ logiciels</database>, de fa&ccedil;on &agrave; ce qu'il puisse
+ &ecirc;tre d&eacute;sinstall&eacute; par la suite, si nous
+ changeons d'avis.</para>
+ </step>
+ </procedure>
+ <para>Je pense que vous serez maintenant d'accord pour trouver que c'est
+ assez impressionnant pour une simple proc&eacute;dure de quatre
+ lignes!</para>
+ <para>Le secret se trouve &agrave; la derni&egrave;re ligne, qui dit
+ &agrave; <command>make</command> d'aller voir ce qu'il y a dans le
+ <filename>Makefile</filename> appel&eacute;
+ <filename>bsd.port.mk</filename>. Il est facile de rater cette ligne,
+ mais c'est pourtant de l&agrave; que vient toute la m&eacute;canique
+ subtile. Quelqu'un a &eacute;crit un <filename>Makefile</filename>
+ qui dit &agrave; <command>make</command> de faire tout ce qui a
+ &eacute;t&eacute; d&eacute;crit ci-dessus (plus deux ou trois autres
+ choses dont je n'ai pas parl&eacute;, dont le traitement des erreurs
+ qui pourraient se produire) et tout le monde peut l'utiliser en
+ mettant simplement cette unique ligne dans son propre
+ <filename>Makefile</filename>!</para>
+ <para>Si vous voulez jeter un oeil &agrave; ces
+ <filename>Makefile</filename>s syst&egrave;mes, ils sont dans le
+ r&eacute;pertoire <filename>/usr/share/mk</filename>, mais il vaut
+ mieux attendre d'avoir un peu d'exp&eacute;rience des
+ <filename>Makefile</filename>s, parce qu'ils sont tr&egrave;s
+ compliqu&eacute;s (et si vous les regardez, ayez sous la main
+ une bonne dose de caf&eacute; serr&eacute;!).</para>
+ </sect2>
+ <sect2>
+ <title>Utilisation plus pouss&eacute;e de <command>make</command></title>
+ <para> <command>make</command> est un outil tr&egrave;s puissant, et peut
+ faire beaucoup plus que l'exemple &eacute;l&eacute;mentaire que nous
+ avons donn&eacute;. Il y a malheureusement plusieurs versions de
+ <command>make</command>, et elles sont tr&egrave;s
+ diff&eacute;rentes. La meilleure fa&ccedil;on de savoir ce qu'elles
+ peuvent faire est certainement de lire la
+ documentation&nbsp;-&nbsp;esp&eacute;rons que cette introduction
+ vous aura fourni les bases pour le faire.</para>
+ <para>La version de <command>make</command> fournie avec FreeBSD est
+ <application>Berkeley make</application>; elle s'accompagne d'un guide
+ dans <filename>/usr/share/doc/psd/12.make</filename>. Pour le
+ visualiser, tapez:
+<screen>&prompt.user; <userinput>zmore paper.ascii.gz</userinput></screen>
+ dans ce r&eacute;pertoire.</para>
+ <para>Il y a des nombreux logiciels du catalogue des logiciels
+ port&eacute;s qui utilisent <application>GNU make</application>, qui
+ est tr&egrave;s bien document&eacute; dans les pages
+ &ldquo;info&rdquo;. Si vous avez install&eacute; un de ces logiciels,
+ <application>GNU make</application> sera automatiquement install&eacute;
+ sont le nom <command>gmake</command>. Il est aussi disponible sous forme
+ de logiciel port&eacute; ou pr&eacute;compil&eacute; autonome.</para>
+ <para>Pour visualiser les pages &ldquo;info&rdquo; de
+ <application>GNU make</application>, il vous faut &eacute;diter le
+ fichier <filename>dir</filename> du r&eacute;pertoire
+ <filename>/usr/local/info</filename> et y ajouter une ligne pour ce
+ programme. C'est une ligne du genre:
+ <programlisting>
+ * Make: (make). L'utilitaire GNU Make.
+ </programlisting>
+ Une fois que c'est fait, vous pouvez taper <userinput>info</userinput>
+ puis s&eacute;lectionner <guimenuitem>make</guimenuitem> dans le menu
+ (ou sous <application>Emacs</application>, taper <userinput>C-h
+ i</userinput>).</para>
+ </sect2>
+ </sect1>
+ <sect1 id="debugging">
+ <title>D&eacute;boguer</title>
+ <sect2>
+ <title>Le d&eacute;bogueur</title>
+ <para>Le d&eacute;bogueur qui est fourni avec FreeBSD s'appelle
+ <command>gdb</command>
+ (<application>GNU d&eacute;bogueur</application>). Vous le lancez en
+ tapant:
+<screen>&prompt.user; <userinput>gdb <replaceable>nom_du_programme</replaceable></userinput></screen>
+ bien que la plupart des gens pr&eacute;f&egrave;rent l'ex&eacute;cuter
+ sous <application>Emacs</application>. Ce qui se fait avec:
+<screen><userinput>M-x gdb RET <replaceable>progname</replaceable> RET</userinput></screen>
+ </para>
+ <para>Se servir d'un d&eacute;bogueur vous permet d'ex&eacute;cuter le
+ programme sous contr&ocirc;le. Vous pouvez typiquement
+ l'ex&eacute;cuter pas &agrave; pas, inspecter les valeurs des
+ variables, les modifier, dire au d&eacute;bogueur d'ex&eacute;cuter
+ le programme jusqu'&agrave; un certain endroit et de s'y
+ arr&ecirc;ter, et ainsi de suite. Vous pouvez m&ecirc;me
+ le rattacher &agrave; un programme qui est d&eacute;j&agrave; en
+ cours d'ex&eacute;cution, ou charger une image
+ m&eacute;moire&nbsp;-&nbsp;&ldquo;<foreignphrase>core</foreignphrase>&rdquo;.
+ Il est m&ecirc;me possible de d&eacute;boguer le noyau, bien que cela
+ soit un peu plus compliqu&eacute; que dans le cas des programmes
+ utilisateurs, dont nous parlerons dans cette section.</para>
+ <para><command>gdb</command> dispose d'une assez bonne aide en ligne,
+ ainsi que d'un jeu de pages &ldquo;info&rdquo;, cette section se
+ concentrera donc sur quelques commandes de base.</para>
+ <para>Enfin, si le mode de fonctionnement en ligne de commande vous
+ rebute, il existe une interface graphique appel&eacute;e
+ <ulink URL="http://www.freebsd.org/ports/devel.html">xxgdb</ulink>
+ au catalogue des logiciels port&eacute;s.</para>
+ <para>Cette section est destin&eacute;e &agrave; servir d'introduction
+ &agrave; l'utilisation du d&eacute;bogueur et ne couvre pas les
+ questions sp&eacute;cialis&eacute;es comme le d&eacute;bogage du
+ noyau.</para>
+ </sect2>
+ <sect2>
+ <title>Ex&eacute;cuter un programme sous le d&eacute;bogueur</title>
+ <para>Il faudra que vous ayez compil&eacute; le programme avec l'option
+ <option>-g</option> pour tirer le meilleur parti de
+ <command>gdb</command>. Cela fonctionnera sans cela, mais vous ne
+ verrez que le nom de la fonction dans laquelle vous &ecirc;tes, au
+ lieu du code source. Si vous avez un message du genre:
+<screen>&hellip; (no debugging symbols found) &hellip;</screen>
+ au d&eacute;marrage de <command>gdb</command>, vous saurez que le
+ programme n'a pas &eacute;t&eacute; compil&eacute; avec l'option
+ <option>-g</option>.</para>
+ <para>A l'invite de <command>gdb</command>, tapez <userinput>break
+ main</userinput>. Cela dira au d&eacute;bogueur d'ex&eacute;cuter le
+ code pr&eacute;liminaire de mise en oeuvre dans le programme et de
+ s'arr&ecirc;ter au d&eacute;but de votre programme. Tapez maintenant
+ <userinput>run</userinput> pour lancer le programme&nbsp;-&nbsp;il
+ commencera au d&eacute;but du code pr&eacute;liminaire et sera
+ interrompu par le d&eacute;bogueur sur l'appel de
+ <function>main()</function>. (Si vous vous &eacute;tiez jamais
+ demand&eacute; d'o&ugrave; la fonction <function>main()</function>
+ &eacute;tait appel&eacute;e, vous le savez maintenant!).</para>
+ <para>Vous pouvez maintenant ex&eacute;cuter le programme une ligne
+ &agrave; la fois, en appuyant sur <command>n</command>. Si
+ vous arrivez sur un appel de fonction, vous pouvez passer dans la
+ fonction en appuyant sur <command>s</command>. Une fois dans la
+ fonction, vous pouvez terminer son ex&eacute;cution et en sortir en
+ tapant <command>f</command>. Vous pouvez aussi utiliser
+ <command>up</command> et <command>down</command> pour jeter un
+ coup d'oeil au code appelant.</para>
+ <para>Voici un exemple simple de la mani&egrave;re de diagnostiquer une
+ erreur dans un programme avec <command>gdb</command>. Voici notre
+ programme (intentionnellement faux):
+ <programlisting>
+#include &lt;stdio.h&gt;
+
+int bazz(int un_entier);
+
+main() {
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;int i;
+
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;printf("C'est mon programme\n");
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;bazz(i);
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return 0;
+}
+
+int bazz(int un_entier) {
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;printf("Vous m'avez donn&eacute; %d\n", un_entier);
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return un_entier;
+}
+ </programlisting>
+ </para>
+ <para>Ce programme affecte &agrave; <symbol>i</symbol> la valeur
+ <literal>5</literal> et la passe &agrave; la fonction
+ <function>bazz()</function> qui affiche la valeur que nous lui
+ donnons en param&egrave;tre.</para>
+ <para>Quand nous compilons et ex&eacute;cutons le programme, nous
+ obtenons:
+<screen>&prompt.user; <userinput>cc -g -o temp temp.c</userinput>
+&prompt.user; <userinput>./temp</userinput>
+C'est mon programme
+Vous m'avez donn&eacute; 4231</screen></para>
+ <para>Ce n'est pas ce &agrave; quoi nous nous attendions! C'est le
+ moment d'aller voir ce qui ce passe!
+<screen>&prompt.user; <userinput>gdb temp</userinput>
+GDB is free software and you are welcome to distribute copies of it
+ under certain conditions; type "show copying" to see the conditions.
+There is absolutely no warranty for GDB; type "show warranty" for details.
+GDB 4.13 (i386-unknown-freebsd), Copyright 1994 Free Software Foundation, Inc.
+(gdb) <userinput>break main</userinput> <lineannotation>Ex&eacute;cuter le code d'initialisation</lineannotation>
+Breakpoint 1 at 0x160f: file temp.c, line 9. <lineannotation><command>gdb</command> met un pont d'arr&ecirc;t &agrave; l'appel de <function>main()</function></lineannotation>
+(gdb) <userinput>run</userinput> <lineannotation>Ex&eacute;cuter jusqu'&agrave; <function>main()</function></lineannotation>
+Starting program: /home/james/tmp/temp <lineannotation>Le programme d&eacute;marre</lineannotation>
+
+Breakpoint 1, main () at temp.c:9 <lineannotation><command>gdb</command> s'arr&ecirc;te &agrave; <function>main()</function></lineannotation>
+(gdb) <userinput>n</userinput> <lineannotation>Aller &agrave; la ligne suivante</lineannotation>
+C'est mon programme <lineannotation>Le programme imprime</lineannotation>
+(gdb) <userinput>s</userinput> <lineannotation>Aller dans <function>bazz()</function></lineannotation>
+bazz (un_entier=4231) at temp.c:17 <lineannotation><command>gdb</command> affiche la position dans la pile d'appel</lineannotation>
+(gdb)</screen></para>
+ <para>Une minute! Comment <symbol>un_entier</symbol> peut-il valoir
+ <literal>4231</literal>? Ne l'avons-nous pas initialis&eacute;
+ &agrave; <literal>5</literal> dans <function>main()</function>?
+ Revenons &agrave; <function>main()</function> et jetons un
+ oeil.</para>
+ <para>
+<screen>(gdb) <userinput>up</userinput> <lineannotation>Remonter d'un cran dans la pile d'appel</lineannotation>
+#1 0x1625 in main () at temp.c:11 <lineannotation><command>gdb</command> affiche la position dans la pile d'appel</lineannotation>
+(gdb) <userinput>p i</userinput> <lineannotation>Afficher la valeur de <symbol>i</symbol></lineannotation>
+$1 = 4231 <lineannotation><command>gdb</command> affiche <literal>4231</literal></lineannotation></screen>
+ Et oui! Si nous regardons le code, nous avons oubli&eacute;
+ d'initialiser <symbol>i</symbol>. Nous voulions mettre:
+ <programlisting>
+<lineannotation>&hellip;</lineannotation>
+main() {
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;int i;
+
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;i = 5;
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;printf("C'est mon programme\n");
+<lineannotation>&hellip</lineannotation>
+ </programlisting>
+ mais nous avons oubli&eacute; la ligne <literal>i=5;</literal>.
+ Comme nous n'avons pas initialis&eacute; <symbol>i</symbol>, il
+ prend la valeur qui se trouve &agrave; cet endroit de la
+ m&eacute;moire quand le programme s'ex&eacute;cute, dans notre
+ cas, il s'est trouv&eacute; que c'&eacute;tait
+ <literal>4231</literal>.</para>
+ <note>
+ <para><command>gdb</command> affiche l'endroit o&ugrave; nous nous
+ trouvons dans la pile d'appel, chaque fois que nous entrons ou
+ sortons d'une fonction, m&ecirc;me si nous utilisons
+ <command>up</command> et <command>down</command> pour nous
+ d&eacute;placer dans la pile. Cela nous donne le nom de la fonction
+ et les valeurs de ses param&egrave;tres, ce qui nous aide &agrave;
+ rep&eacute;rer o&ugrave; nous sommes et ce qu'il se passe. (La pile
+ d'appel est une zone de m&eacute;moire o&ugrave; le programme
+ enregistre les informations sur les param&egrave;tres pass&eacute;s
+ aux fonctions et o&ugrave; aller quand il ressort d'un fonction
+ appel&eacute;e.)</para>
+ </note>
+ </sect2>
+ <sect2>
+ <title>Examiner un fichier
+ &ldquo;<foreignphrase>core</foreignphrase>&rdquo;</title>
+ <para>Un fichier &ldquo;<foreignphrase>core</foreignphrase>&rdquo; est
+ essentiellement un fichier qui contient l'&eacute;tat complet du
+ programme au moment o&ugrave; il s'est &ldquo;plant&eacute;&rdquo;. Au
+ &ldquo;bon vieux temps&rdquo;, les programmeurs devaient imprimer le
+ contenu en hexad&eacute;cimal des fichiers
+ &ldquo;<foreignphrase>core</foreignphrase>&rdquo; et transpirer sur des
+ manuels de code machine, mais la vie est aujourd'hui un peu plus facile.
+ Au passage, sous FreeBSD et les autres syst&egrave;mes 4.4BSD, un
+ fichier &ldquo;<foreignphrase>core</foreignphrase>&rdquo; s'appelle
+ <filename><replaceable>nom_du_programme</replaceable>.core</filename>,
+ et non <filename>core</filename> tout court,
+ de fa&ccedil;on &agrave; ce que l'on sache &agrave; quel programme il
+ correspond.</para>
+ <para>Pour examiner un fichier
+ &ldquo;<foreignphrase>core</foreignphrase>&rdquo;, lancez
+ <command>gdb</command> comme d'habitude. Au lieu de taper
+ <command>break</command> ou <command>run</command>, tapez:
+<screen>(gdb) <userinput>core <replaceable>nom_du_programme</replaceable>.core</userinput></screen>
+ Si vous n'&ecirc;tes pas dans le m&ecirc;me r&eacute;pertoire que
+ le fichier &ldquo;<foreignphrase>core</foreignphrase>&rdquo;, vous
+ devrez d'abord faire
+ <userinput>dir /ou/se/trouve/le/fichier/core</userinput>.</para>
+ <para>Vous devriez voir quelque chose comme:
+<screen>&prompt.user; <userinput>gdb a.out</userinput>
+GDB is free software and you are welcome to distribute copies of it
+ under certain conditions; type "show copying" to see the conditions.
+There is absolutely no warranty for GDB; type "show warranty" for details.
+GDB 4.13 (i386-unknown-freebsd), Copyright 1994 Free Software Foundation, Inc.
+(gdb) <userinput>core a.out.core</userinput>
+Core was generated by `a.out'.
+Program terminated with signal 11, Segmentation fault.
+Cannot access memory at address 0x7020796d.
+#0 0x164a in bazz (un_entier=0x5) at temp.c:17
+(gdb)</screen></para>
+ <para>Dans ce cas, le programme s'appelait <filename>a.out</filename>, le
+ fichier &ldquo;<foreignphrase>core</foreignphrase>&rdquo; s'appelle
+ donc <filename>a.out.core</filename>. Nous constatons que le programme
+ s'est termin&eacute; en erreur &agrave; cause d'une tentative
+ d'acc&egrave;s &agrave; une zone de m&eacute;moire qui n'&eacute;tait
+ pas accessible dans une fonction appel&eacute;
+ <function>bazz</function>.</para>
+ <para>Il est parfois utile de pouvoir savoir comment une fonction a
+ &eacute;t&eacute; appel&eacute;e, parce que le probl&egrave;me peut
+ s'&ecirc;tre produit bien au-dessus dans la pile d'appel dans un
+ programme complexe. La commande <command>bt</command> dit &agrave;
+ <command>gdb</command> d'imprimer en remontant la pile d'appel:
+<screen>(gdb) <userinput>bt</userinput>
+#0 0x164a in bazz (un_entier=0x5) at temp.c:17
+#1 0xefbfd888 in end ()
+#2 0x162c in main () at temp.c:11
+(gdb)</screen>
+ La fonction <function>end()</function> est appel&eacute;e quand un
+ programme &eacute;choue; dans le cas pr&eacute;sent, la fonction
+ <function>bazz()</function> a &eacute;t&eacute; appel&eacute;e par
+ <function>main()</function>.</para>
+ </sect2>
+ <sect2>
+ <title>Prendre le contr&ocirc;le d'un programme en cours
+ d'ex&eacute;cution</title>
+ <para>Une des possibilit&eacute;s les plus int&eacute;ressantes de
+ <command>gdb</command> est qu'il peut se rattacher &agrave; un
+ programme en cours d'ex&eacute;cution. Il faut bien s&ucirc;r que vous
+ ayez les autorisations suffisantes pour le faire. Le cas d'un programme
+ qui &ldquo;fourche&rdquo;&nbsp;-&nbsp;<foreignphrase>fork</foreignphrase>&nbsp;-&nbsp;est
+ un probl&egrave;me classique, lorsque vous voulez suivre le
+ d&eacute;roulement du processus fils, alors que le d&eacute;bogueur ne
+ vous permet que de tracer le processus p&egrave;re.</para>
+ <para>Vous lancez alors un autre <command>gdb</command>, utilisez
+ <command>ps</command> pour conna&icirc;tre l'IDentifiant de processus du
+ fils, puis faites:
+<screen>(gdb) <userinput>attach <replaceable>pid</replaceable></userinput></screen>
+ sous <command>gdb</command>, et d&eacute;boguez alors comme
+ d'habitude.</para>
+ <para>&ldquo;Tout cela est bien beau&rdquo;, vous dites vous
+ peut-&ecirc;tre, &ldquo;mais le temps que j'ai fait tout &ccedil;a, le
+ processus fils aura d&eacute;j&agrave; fait un bon bout de
+ chemin&rdquo;. Rien &agrave; craindre, aimable lecteur, voici ce
+ qu'il faut faire (emprunt&eacute; aux pages &ldquo;info&rdquo; de
+ <command>gdb</command>):
+<screen><lineannotation>&hellip</lineannotation>
+if ((pid = fork()) < 0)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;/* _Toujours_ effectuer se contr&ocirc;le */
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;error();
+else if (pid == 0) {&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;/* C'est le processus fils */
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;int PauseMode = 1;
+
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;while (PauseMode)
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sleep(10);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;/* Attendre que quelqu'un se rattache &agrave; nous */
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&hellip;
+} else {&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;/* parent */
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&hellip;</screen>
+ Il n'y a plus qu'&agrave; se rattacher au fils, positionner
+ <symbol>PauseMode</symbol> &agrave; <literal>0</literal>, et attendre
+ que l'appel de <function>sleep()</function> nous rende la main!</para>
+ </sect2>
+ </sect1>
+ <sect1 id="emacs">
+ <title>Utiliser Emacs comme environnement de d&eacute;veloppement</title>
+ <sect2>
+ <title>Emacs</title>
+ <para>Les syst&egrave;mes Unix ne s'accompagnent malheureusement pas
+ du type d'environnement de d&eacute;veloppement
+ int&eacute;gr&eacute; du genre &ldquo;tout ce que vous avez toujours
+ voulu et encore beaucoup plus en un seul monstrueux paquetage&rdquo;
+ dont disposent d'autres syst&egrave;mes<footnote><para>Au moins, pas
+ &agrave; moins que vous ne soyez pr&ecirc;t &agrave; les payer une somme
+ astronomique.</para></footnote>. Il est cependant possible de mettre
+ au point votre propre environnement. Il ne sera peut-&ecirc;tre pas
+ aussi esth&eacute;tique et il ne sera peut-&ecirc;tre pas aussi
+ int&eacute;gr&eacute;, mais vous pourrez le configurer comme vous le
+ voulez. Et il est gratuit. En plus, vous en avez les sources.</para>
+ <para>Emacs est la cl&eacute; de tout. Il y a bien des gens qui le
+ d&eacute;crient, mais nombreux sont ceux qui l'aiment. Si vous
+ &ecirc;tes des premiers, j'ai peur que cette section n'ait que peu
+ d'int&eacute;r&ecirc;t pour vous. Il vous faudra aussi pas mal de
+ m&eacute;moire pour l'utiliser. Je conseille 8Mo en mode texte et
+ 16Mo sous X comme strict minimum pour avoir des temps de r&eacute;ponse
+ raisonnables.</para>
+ <para>Emacs est essentiellement un &eacute;diteur extr&ecirc;mement
+ configurable&nbsp;-&nbsp;il a de fait &eacute;t&eacute; configur&eacute;
+ au point de ressembler plus &agrave; un syst&egrave;me
+ d'exploitation qu'&agrave; un &eacute;diteur! De nombreux
+ d&eacute;veloppeurs et administrateurs syst&egrave;me passent le plus
+ clair de leur temps &agrave; travailler sous Emacs, le quittant
+ seulement pour se d&eacute;connecter.</para>
+ <para>Il est impossible de m&ecirc;me r&eacute;sumer ici tout ce qu'Emacs
+ est capable de faire, mais voici quelques fonctionnalit&eacute;s qui
+ int&eacute;ressent les d&eacute;veloppeurs:
+ <itemizedlist>
+ <listitem>
+ <para>Editeur tr&egrave;s puissant qui permet et de rechercher et
+ remplacer des cha&icirc;nes de caract&egrave;res et d'utiliser pour
+ le faire des expressions r&eacute;guli&egrave;res (motifs), d'aller
+ au d&eacute;but ou &agrave; la fin de blocs syntaxiques, etc,
+ etc.</para>
+ </listitem>
+ <listitem>
+ <para>Menus d&eacute;roulants et aide en ligne.</para>
+ </listitem>
+ <listitem>
+ <para>Mise en valeur et indentation en fonction de la syntaxe du
+ langage utilis&eacute;.</para>
+ </listitem>
+ <listitem>
+ <para>Compl&egrave;tement configurable.</para>
+ </listitem>
+ <listitem>
+ <para>Vous pouvez compiler et d&eacute;boguer des programmes depuis
+ Emacs.</para>
+ </listitem>
+ <listitem>
+ <para>En cas d'erreur &agrave; la compilation, vous pouvez aller
+ directement &agrave; la ligne qui en est la cause.</para>
+ </listitem>
+ <listitem>
+ <para>Interface ergonomique au programme <command>info</command>
+ qui sert &agrave; lire la documentation hypertexte GNU, dont
+ celle d'Emacs lui-m&ecirc;me.</para>
+ </listitem>
+ <listitem>
+ <para>Interface conviviale pour <command>gdb</command>, qui vous
+ permet de visualiser le code source en m&ecirc;me temps que vous
+ ex&eacute;cutez pas &agrave; pas le programme.</para>
+ </listitem>
+ <listitem>
+ <para>Vous pouvez lire les &ldquo;news&rdquo; Usenet et votre
+ courrier &eacute;lectronique pendant que votre programme
+ compile.</para>
+ </listitem>
+ </itemizedlist>
+ Et sans aucun doute bien d'autres choses qui m'ont
+ &eacute;chapp&eacute;es.</para>
+ <para>Emacs peut &ecirc;tre install&eacute; sous FreeBSD sous forme de
+ <ulink URL="http://www.freebsd.org/ports/editors.html">logiciel
+ port&eacute;</ulink>.</para>
+ <para>Une fois qu'il est install&eacute;, lancez-le et tapez
+ <userinput>C-h t</userinput>&nbsp;-&nbsp;ce qui signifie maintenir
+ enfonc&eacute;e la touche <keycap>Ctrl</keycap>, taper
+ <keycap>h</keycap>, rel&acirc;cher la touche <keycap>Ctrl</keycap>, et
+ appuyer ensuite sur <keycap>t</keycap>&nbsp;-&nbsp; pour lire le guide
+ d'Emacs (Vous pouvez aussi utiliser la souris pour s&eacute;lectionner
+ <guimenuitem>Emacs
+ Tutorial</guimenuitem>&nbsp;-&nbsp;&ldquo;<foreignphrase>Guide
+ Emacs</foreignphrase>&rdquo;&nbsp;-&nbsp;depuis le menu
+ <guimenu>Help</guimenu>&nbsp;-&nbsp;&ldquo;<foreignphrase>Aide</foreignphrase>&rdquo;).</para>
+ <para>Bien qu'Emacs ait des menus, il vaut la peine d'apprendre &agrave;
+ utiliser les raccourcis claviers, parce qu'il est bien plus rapide
+ quand vous &eacute;ditez quelque chose d'appuyer sur deux ou trois
+ touches que de courir apr&egrave;s la souris et cliquer ensuite au bon
+ endroit. Si, par ailleurs, vous discutez avec des utilisateurs
+ exp&eacute;riment&eacute;s d'Emacs, vous vous aperceverez qu'ils
+ utilisent assez couramment des expressions comme
+ &ldquo;<literal>M-x replace-s RET foo RET bar RET</literal>&rdquo;,
+ il peut donc servir de comprendre ce qu'ils veulent dire. Et de toute
+ fa&ccedil;on, Emacs a bien plus de fonctions utiles qu'il ne peut en
+ tenir sur une barre de menus.</para>
+ <para>Il est heureusement assez facile de d&eacute;couvrir les raccourcis
+ claviers, ils sont affich&eacute;s dans les menus. Je vous conseille
+ d'utiliser les menus pour, par exemple, ouvrir un fichier
+ jusqu'&agrave; ce que vous compreniez comment cela marche et ayez
+ suffisamment confiance en vous, puis d'essayer C-x C-f. Une fois que
+ cela vous convient, passez &agrave; une autre des commandes des
+ menus.</para>
+ <para>Si vous ne vous rappelez pas ce que fait une combinaison
+ donn&eacute;e de touches, choisissez <guimenuitem>Describe
+ Key</guimenuitem>&nbsp;-&nbsp;&ldquo;<foreignphrase>Description d'une
+ touche</foreignphrase>&rdquo;&nbsp;-&nbsp;dans le menu
+ <guimenu>Help</guimenu>&nbsp;-&nbsp;&ldquo;<foreignphrase>Aide</foreignphrase>&rdquo;&nbsp;-&nbsp;et
+ tapez cette combinaison&nbsp;-&nbsp;Emacs vous dira ce qu'elle fait.
+ Vous pouvez aussi utiliser le choix <guimenuitem>Command
+ Apropos</guimenuitem>&nbsp;-&nbsp;&ldquo;<foreignphrase>A propos d'une
+ commande</foreignphrase>&rdquo;&nbsp;-&nbsp;pour conna&icirc;tre
+ toutes les commandes comportant un mot donn&eacute; et les touches qui
+ leur correspondent.</para>
+ <para>Au fait, l'expression plus haut signifie: enfoncer la touche
+ <keysym>M&eacute;ta</keysym>, appuyer sur <keysym>x</keysym>,
+ rel&acirc;cher la touche <keysym>M&eacute;ta</keysym>, taper
+ <userinput>replace-s</userinput> (abr&eacute;viation de
+ <literal>replace-string</literal>&nbsp;-&nbsp;&ldquo;<foreignphrase>remplacer
+ une cha&icirc;ne de caract&egrave;res</foreignphrase>&rdquo;&nbsp;-&nbsp;une autre
+ caract&eacute;ristique d'Emacs est de vous permettre d'abr&eacute;ger
+ les commandes), appuyer sur <keysym>Entr&eacute;e</keysym>, taper
+ <userinput>foo</userinput> (la cha&icirc;ne que vous voulez remplacer),
+ appuyer sur <keysym>Entr&eacute;e</keysym>, taper
+ <userinput>bar</userinput> (la cha&icirc;ne avec laquelle vous voulez
+ remplacer <literal>foo</literal>) et appuyer encore sur
+ <keysym>Entr&eacute;e</keysym>. Emacs effectuera alors
+ l'op&eacute;ration de recherche et remplacement que vous venez de
+ demander.</para>
+ <para>Si vous vous demandez ce qu'est la touche
+ <keysym>M&eacute;ta</keysym>, c'est une touche sp&eacute;ciale qu'ont
+ beaucoup de stations Unix. Malheureusement, les PCs n'en ont pas, c'est
+ habituellement la touche <keysym>Alt</keysym> qui est utilis&eacute;e
+ (ou si vous n'avez pas de chance, la touche
+ <keysym>Echap</keysym>).</para>
+ <para>Oh, et pour sortir d'Emacs, tapez <command>C-x C-c</command>
+ (Ce qui signifie: enfoncer la touche <keysym>Ctrl</keysym>, appuyer sur
+ <keysym>c</keysym>, appuyer sur <keysym>x</keysym> et rel&acirc;cher la
+ touche <keysym>Ctrl</keysym>). S'il y a des fichiers ouverts que vous
+ n'avez pas sauvegard&eacute;s, Emacs vous demandera si vous voulez les
+ sauvegarder. (Oubliez que la documentation dit que la m&eacute;thode
+ habituelle pour quitter Emacs est d'utiliser
+ <command>C-z</command>&nbsp;-&nbsp;cela laisse Emacs actif en
+ t&acirc;che de fond et n'est r&eacute;ellement utile que si vous
+ &ecirc;tes sur un syst&egrave;me qui ne g&egrave;re pas de terminaux
+ virtuels).</para>
+ </sect2>
+ <sect2>
+ <title>Configurer Emacs</title>
+ <para>Emacs fait des choses admirables; certaines fonctionnalit&eacute;s
+ sont incorpor&eacute;es, d'autres doivent &ecirc;tre
+ configur&eacute;es.</para>
+ <para>Au lieu d'utiliser un langage de macros-instructions
+ propri&eacute;taires, Emacs se sert d'une version de Lisp
+ sp&eacute;cialement adapt&eacute;e aux &eacute;diteurs, connue sous le
+ nom de Emacs Lisp. Ce peut &ecirc;tre tr&egrave;s utile si vous voulez
+ aller plus loin et apprendre ensuite par exemple Common Lisp, parce
+ qu'il est consid&eacute;rablement plus l&eacute;ger que Common Lisp
+ (quoique qu'encore assez imposant!).</para>
+ <para>La meilleure fa&ccedil;on d'apprendre Emacs Lisp est de
+ t&eacute;l&eacute;charger
+ <ulink URL="ftp://prep.ai.mit.edu/pub/gnu/elisp-manual-19-2.4.tar.gz">le
+ Guide Emacs Lisp</ulink>.</para>
+
+ <para>Il n'y a cependant pas besoin de conna&icirc;tre quoique ce soit
+ &agrave; Lisp pour commencer &agrave; configurer Emacs, parce que j'ai
+ inclu un fichier <filename>.emacs</filename> d'exemple, qui devrait
+ suffire au d&eacute;but. Copiez-le simplement dans votre
+ r&eacute;pertoire utilisateur et relancez Emacs, s'il s'ex&eacute;cute
+ d&eacute;j&agrave;; il lira les commandes du fichier et (je
+ l'esp&egrave;re) vous fournira une configuration de base utile.</para>
+ </sect2>
+ <sect2>
+ <title>Un exemple de fichier <filename>.emacs</filename></title>
+ <para>Il contient malheureusement beaucoup trop de choses pour tout
+ expliquer en d&eacute;tails; il y a cependant un ou deux points
+ int&eacute;ressants &agrave; mentionner.</para>
+ <para>
+ <itemizedlist>
+ <listitem>
+ <para>Tout ce qui commence par un <literal>;</literal> est en
+ commentaire et est ignor&eacute; par Emacs.</para>
+ </listitem>
+ <listitem>
+ <para>La premi&egrave;re ligne,
+ <literal>-*-&nbsp;Emacs-Lisp&nbsp;-*-</literal> permet
+ d'&eacute;diter le fichier <filename>.emacs</filename>
+ lui-m&ecirc;me sous Emacs et de profiter de toutes les
+ fonctionnalit&eacute;es li&eacute;es &agrave; l'&eacute;dition de
+ code Emacs Lisp. Emacs tente habituellement de deviner le type de
+ fichier en fonction de son nom, mais risque de ne pas y arriver
+ pour le fichier <filename>.emacs</filename>.</para>
+ </listitem>
+ <listitem>
+ <para>La touche <keysym>Tab</keysym> est utilis&eacute;e pour
+ l'indentation dans certains modes, de sorte que si vous appuyez
+ sur cette touche cela indente la ligne de code courante. Si vous
+ voulez mettre un caract&egrave;re <token>tabulation</token> dans
+ votre texte, enfoncer la touche <keysym>Ctrl</keysym> en
+ m&ecirc;me temps que vous appuyez sur
+ <keysym>Tab</keysym>.</para>
+ </listitem>
+ <listitem>
+ <para>Ce fichier permet le mise en valeur syntaxique de code C,
+ C++, Perl, Lisp et Scheme, en d&eacute;terminant le langage
+ d'apr&egrave;s le nom du fichier &eacute;dit&eacute;.</para>
+ </listitem>
+ <listitem>
+ <para>Emacs a d&eacute;j&agrave; une fonction
+ pr&eacute;d&eacute;finie appel&eacute;e
+ <function>next-error</function>&nbsp;-&nbsp;&ldquo;<foreignphrase>erreur
+ suivante</foreignphrase>&rdquo;. Dans la fen&ecirc;tre de
+ r&eacute;sultats d'une compilation, cela vous permet d'aller
+ d'une erreur &agrave; la suivante avec <command>M-n</command>;
+ nous d&eacute;finissons la fonction compl&eacute;mentaire
+ <function>previous-error</function>&nbsp;-&nbsp;&ldquo;<foreignphrase>erreur
+ pr&eacute;c&eacute;dente</foreignphrase>&rdquo;, qui vous permet
+ de retourner &agrave; l'erreur pr&eacute;c&eacute;dente avec
+ <command>M-p</command>. Le plus sympathique est que
+ <command>C-c C-c</command> ouvrira le fichier source o&ugrave;
+ l'erreur s'est produite et ira &agrave; la ligne
+ concern&eacute;e.</para>
+ </listitem>
+ <listitem>
+ <para>Nous activons la possibilit&eacute; qu'a Emacs d'agir comme
+ serveur, de fa&ccedil;on &agrave; ce que si vous travaillez hors
+ d'Emacs et voulez &eacute;diter un fichier, il vous suffise de
+ taper:
+<screen>&prompt.user; <userinput>emacsclient <replaceable>nom_du_fichier</replaceable></userinput></screen>
+ pour pouvoir ensuite le modifier avec Emacs!<footnote><para>De
+ nombreux utilisateurs d'Emacs affectent &agrave; leur variable
+ d'environnement <systemitem class=environvar>EDITOR</systemitem>
+ la valeur <literal>emacsclient</literal> de fa&ccedil;on &agrave;
+ ce que ce soit ce qui se produise chaque fois qu'ils ont besoin
+ d'&eacute;diter un fichier.</para></footnote>.</para>
+ </listitem>
+ </itemizedlist>
+ </para>
+ <example>
+ <title>Un exemple de fichier <filename>.emacs</filename></title>
+<screen>
+;; -*-Emacs-Lisp-*-
+
+;; Ce fichier est con&ccedil;u pour &ecirc;tre relu; la variable
+;; first-time est utilis&eacute;e pour &eacute;viter les probl&egrave;mes
+;; que cela pourra poser.
+(defvar first-time t
+ "Indicateur signifiant que le fichier .emacs est lu pour la premi&egrave;re fois")
+
+;; M&eacute;ta
+(global-set-key "\M- " 'set-mark-command)
+(global-set-key "\M-\C-h" 'backward-kill-word)
+(global-set-key "\M-\C-r" 'query-replace)
+(global-set-key "\M-r" 'replace-string)
+(global-set-key "\M-g" 'goto-line)
+(global-set-key "\M-h" 'help-command)
+
+;; Touches fonction
+(global-set-key [f1] 'manual-entry)
+(global-set-key [f2] 'info)
+(global-set-key [f3] 'repeat-complex-command)
+(global-set-key [f4] 'advertised-undo)
+(global-set-key [f5] 'eval-current-buffer)
+(global-set-key [f6] 'buffer-menu)
+(global-set-key [f7] 'other-window)
+(global-set-key [f8] 'find-file)
+(global-set-key [f9] 'save-buffer)
+(global-set-key [f10] 'next-error)
+(global-set-key [f11] 'compile)
+(global-set-key [f12] 'grep)
+(global-set-key [C-f1] 'compile)
+(global-set-key [C-f2] 'grep)
+(global-set-key [C-f3] 'next-error)
+(global-set-key [C-f4] 'previous-error)
+(global-set-key [C-f5] 'display-faces)
+(global-set-key [C-f8] 'dired)
+(global-set-key [C-f10] 'kill-compilation)
+
+;; Touches curseur
+(global-set-key [up] "\C-p")
+(global-set-key [down] "\C-n")
+(global-set-key [left] "\C-b")
+(global-set-key [right] "\C-f")
+(global-set-key [home] "\C-a")
+(global-set-key [end] "\C-e")
+(global-set-key [prior] "\M-v")
+(global-set-key [next] "\C-v")
+(global-set-key [C-up] "\M-\C-b")
+(global-set-key [C-down] "\M-\C-f")
+(global-set-key [C-left] "\M-b")
+(global-set-key [C-right] "\M-f")
+(global-set-key [C-home] "\M-&lt;")
+(global-set-key [C-end] "\M-&gt;")
+(global-set-key [C-prior] "\M-&lt;")
+(global-set-key [C-next] "\M-&gt;")
+
+;; Souris
+(global-set-key [mouse-3] 'imenu)
+
+;; Divers
+(global-set-key [C-tab] "\C-q\t") ; Ctrl tab = caract&egrave;re tabulation.
+(setq backup-by-copying-when-mismatch t)
+
+;; 'y' ou &lt;CR&gt; &eacute;quivaut &agrave; yes, 'n' &agrave; no.
+(fset 'yes-or-no-p 'y-or-n-p)
+ (define-key query-replace-map [return] 'act)
+ (define-key query-replace-map [?\C-m] 'act)
+
+;; Paquetages &agrave; charger
+(require 'desktop)
+(require 'tar-mode)
+
+;; Mode diff &eacute;volu&eacute;
+(autoload 'ediff-buffers "ediff" "Interface Emacs intelligente pour diff" t)
+(autoload 'ediff-files "ediff" "Interface Emacs intelligente pour diff" t)
+(autoload 'ediff-files-remote "ediff"
+ "Interface Emacs intelligente pour diff")
+</screen>
+
+<screen>
+(if first-time
+&nbsp;&nbsp;&nbsp;&nbsp;(setq auto-mode-alist
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(append '(("\\.cpp$" . c++-mode)
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;("\\.hpp$" . c++-mode)
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;("\\.lsp$" . lisp-mode)
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;("\\.scm$" . scheme-mode)
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;("\\.pl$" . perl-mode)
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;) auto-mode-alist)))
+
+;; Mise en valeur syntaxique automatique
+(defvar font-lock-auto-mode-list
+ (list 'c-mode 'c++-mode 'c++-c-mode 'emacs-lisp-mode 'lisp-mode 'perl-mode 'scheme-mode)
+ "Listes des modes &agrave; d&eacute;marrer toujours avec mise en valeur")
+
+(defvar font-lock-mode-keyword-alist
+ '((c++-c-mode . c-font-lock-keywords)
+ (perl-mode . perl-font-lock-keywords))
+ "Associations entre modes et mots-cl&eacute;s")
+
+(defun font-lock-auto-mode-select ()
+ "S&eacute;lectionne automatiquement type de mise en valeur si le major mode courant est dans font-lock-auto-mode-list"
+ (if (memq major-mode font-lock-auto-mode-list)
+ (progn
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(font-lock-mode t))
+ )
+ )
+
+(global-set-key [M-f1] 'font-lock-fontify-buffer)
+
+;; Nouveau dabbrev
+;(require 'new-dabbrev)
+(setq dabbrev-always-check-other-buffers t)
+(setq dabbrev-abbrev-char-regexp "\\sw\\|\\s_")
+(add-hook 'emacs-lisp-mode-hook
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'(lambda ()
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(set (make-local-variable 'dabbrev-case-fold-search) nil)
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(set (make-local-variable 'dabbrev-case-replace) nil)))
+(add-hook 'c-mode-hook
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'(lambda ()
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(set (make-local-variable 'dabbrev-case-fold-search) nil)
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(set (make-local-variable 'dabbrev-case-replace) nil)))
+(add-hook 'text-mode-hook
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'(lambda ()
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(set (make-local-variable 'dabbrev-case-fold-search) t)
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(set (make-local-variable 'dabbrev-case-replace) t)))
+
+;; Mode C++ et C...
+(defun my-c++-mode-hook ()
+ (setq tab-width 4)
+ (define-key c++-mode-map "\C-m" 'reindent-then-newline-and-indent)
+ (define-key c++-mode-map "\C-ce" 'c-comment-edit)
+ (setq c++-auto-hungry-initial-state 'none)
+ (setq c++-delete-function 'backward-delete-char)
+ (setq c++-tab-always-indent t)
+ (setq c-indent-level 4)
+ (setq c-continued-statement-offset 4)
+ (setq c++-empty-arglist-indent 4))
+
+(defun my-c-mode-hook ()
+ (setq tab-width 4)
+ (define-key c-mode-map "\C-m" 'reindent-then-newline-and-indent)
+ (define-key c-mode-map "\C-ce" 'c-comment-edit)
+ (setq c-auto-hungry-initial-state 'none)
+ (setq c-delete-function 'backward-delete-char)
+ (setq c-tab-always-indent t)
+;; indentation style BSD
+ (setq c-indent-level 4)
+ (setq c-continued-statement-offset 4)
+ (setq c-brace-offset -4)
+ (setq c-argdecl-indent 0)
+ (setq c-label-offset -4))
+
+;; Mode Perl...
+(defun my-perl-mode-hook ()
+ (setq tab-width 4)
+ (define-key c++-mode-map "\C-m" 'reindent-then-newline-and-indent)
+ (setq perl-indent-level 4)
+ (setq perl-continued-statement-offset 4))
+
+;; Mode Scheme...
+(defun my-scheme-mode-hook ()
+ (define-key scheme-mode-map "\C-m" 'reindent-then-newline-and-indent))
+
+;; Mode Emacs-Lisp...
+(defun my-lisp-mode-hook ()
+ (define-key lisp-mode-map "\C-m" 'reindent-then-newline-and-indent)
+ (define-key lisp-mode-map "\C-i" 'lisp-indent-line)
+ (define-key lisp-mode-map "\C-j" 'eval-print-last-sexp))
+
+;; Ajouts des pr&eacute;c&eacute;dents
+(add-hook 'c++-mode-hook 'my-c++-mode-hook)
+(add-hook 'c-mode-hook 'my-c-mode-hook)
+(add-hook 'scheme-mode-hook 'my-scheme-mode-hook)
+(add-hook 'emacs-lisp-mode-hook 'my-lisp-mode-hook)
+(add-hook 'lisp-mode-hook 'my-lisp-mode-hook)
+(add-hook 'perl-mode-hook 'my-perl-mode-hook)
+
+;; L'inverse de next-error
+(defun previous-error (n)
+ "Aller &agrave; l'erreur de compilation pr&eacute;c&eacute;dente et au code correspondant."
+ (interactive "p")
+ (next-error (- n)))
+</screen>
+
+<screen>;; Divers...
+(transient-mark-mode 1)
+(setq mark-even-if-inactive t)
+(setq visible-bell nil)
+(setq next-line-add-newlines nil)
+(setq compile-command "make")
+(setq suggest-key-bindings nil)
+(put 'eval-expression 'disabled nil)
+(put 'narrow-to-region 'disabled nil)
+(put 'set-goal-column 'disabled nil)
+
+;; Recherche dans les archives Elisp
+(autoload 'format-lisp-code-directory "lispdir" nil t)
+(autoload 'lisp-dir-apropos "lispdir" nil t)
+(autoload 'lisp-dir-retrieve "lispdir" nil t)
+(autoload 'lisp-dir-verify "lispdir" nil t)
+
+;; Mise en valeur syntaxique
+(defun my-make-face (face colour &amp;optional bold)
+ "Cr&eacute;er une apparence pour une couleur, &eacute;ventuellement en gras"
+ (make-face face)
+ (copy-face 'default face)
+ (set-face-foreground face colour)
+ (if bold (make-face-bold face))
+ )
+
+(if (eq window-system 'x)
+ (progn
+ (my-make-face 'blue "blue")
+ (my-make-face 'red "red")
+ (my-make-face 'green "dark green")
+ (setq font-lock-comment-face 'blue)
+ (setq font-lock-string-face 'bold)
+ (setq font-lock-type-face 'bold)
+ (setq font-lock-keyword-face 'bold)
+ (setq font-lock-function-name-face 'red)
+ (setq font-lock-doc-string-face 'green)
+ (add-hook 'find-file-hooks 'font-lock-auto-mode-select)
+
+ (setq baud-rate 1000000)
+ (global-set-key "\C-cmm" 'menu-bar-mode)
+ (global-set-key "\C-cms" 'scroll-bar-mode)
+ (global-set-key [backspace] 'backward-delete-char)
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;; (global-set-key [delete] 'delete-char)
+ (standard-display-european t)
+ (load-library "iso-transl")))
+
+;; X11 ou PC &eacute;crivant directement &agrave; l'&eacute;cran
+(if window-system
+ (progn
+ ;; (global-set-key [M-f1] 'hilit-repaint-command)
+ ;; (global-set-key [M-f2] [?\C-u M-f1])
+ (setq hilit-mode-enable-list
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'(not text-mode c-mode c++-mode emacs-lisp-mode lisp-mode
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;scheme-mode)
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;hilit-auto-highlight nil
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;hilit-auto-rehighlight 'visible
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;hilit-inhibit-hooks nil
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;hilit-inhibit-rebinding t)
+ (require 'hilit19)
+ (require 'paren))
+ (setq baud-rate 2400) ; Pour les connections s&eacute;rie lentes
+ )
+
+;; Terminal type TTY
+(if (and (not window-system)
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(not (equal system-type 'ms-dos)))
+&nbsp;&nbsp;&nbsp;&nbsp;(progn
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(if first-time
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(progn
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(keyboard-translate ?\C-h ?\C-?)
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(keyboard-translate ?\C-? ?\C-h)))))
+
+;; Sous UNIX
+(if (not (equal system-type 'ms-dos))
+&nbsp;&nbsp;&nbsp;&nbsp;(progn
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(if first-time
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(server-start))))
+
+;; Ajouter ici toute modification d'apparence des caract&egrave;res
+(add-hook 'term-setup-hook 'my-term-setup-hook)
+(defun my-term-setup-hook ()
+ (if (eq window-system 'pc)
+ (progn
+;; (set-face-background 'default "red")
+ )))
+
+;; Restaurer le "bureau" - le faire le plus tard possible
+(if first-time
+ (progn
+ (desktop-load-default)
+ (desktop-read)))
+
+;; Indique que le fichier a &eacute;t&eacute; lu au moins une fois
+(setq first-time nil)
+
+;; Plus besoin de d&eacute;boguer quoi que ce soit maintenant.
+(setq debug-on-error nil)
+
+;; C'est tout
+(message "OK, %s%s" (user-login-name) ".")
+</screen>
+ </example>
+ </sect2>
+ <sect2>
+ <title>Permettre &agrave; Emacs de comprendre de nouveaux
+ langages</title>
+ <para>Bon, tout cela est tr&egrave;s bien si vous ne voulez programmer
+ qu'avec les langages d&eacute;j&agrave; introduits dans le fichier
+ <filename>.emacs</filename> (C, C++, Perl, Lisp et Scheme), mais que se
+ passe-t-il quand un nouveau langage appel&eacute;
+ &ldquo;whizbang&rdquo; fait son apparition, avec plein de nouvelles
+ fonctionnalit&eacute;s attrayantes?</para>
+ <para>La premi&egrave;re chose &agrave; faire est de regarder si whizbang
+ s'accompagne de fichiers de configuration d'Emacs pour ce langage.
+ Ces fichiers ont g&eacute;n&eacute;ralement comme extension
+ <filename>.el</filename>, raccourci pour &ldquo;Emacs Lisp&rdquo;.
+ Par exemple, si whizbang est un logiciel port&eacute; pour FreeBSD,
+ ces fichiers peuvent &ecirc;tre rep&eacute;r&eacute;s par:
+<screen>&prompt.user; <userinput>find /usr/ports/lang/whizbang -name "*.el" -print</userinput></screen>
+ et il faut les installer en le copiant dans le r&eacute;pertoire du
+ &ldquo;site Lisp&rdquo; d'Emacs. Sous FreeBSD 2.1.0-RELEASE, c'est le
+ r&eacute;pertoire
+ <filename>/usr/local/share/emacs/site-lisp</filename>.</para>
+ <para>Ainsi par exemple, si la commande pr&eacute;c&eacute;dente nous
+ donnait:
+<screen>/usr/ports/lang/whizbang/work/misc/whizbang.el</screen>
+ nous le copierions alors comme suit:
+<screen>&prompt.user; <userinput>cp /usr/ports/lang/whizbang/work/misc/whizbang.el /usr/local/share/emacs/site-lisp</userinput></screen>
+ </para>
+ <para>D&eacute;cidons ensuite de l'extension que doivent avoir les
+ fichiers source whizbang. Supposons, pour les besoins de l'exemple,
+ qu'ils se terminent tous par <filename>.wiz</filename>. Il faut ajouter
+ une entr&eacute;e &agrave; notre fichier <filename>.emacs</filename>,
+ pour &ecirc;tre s&ucirc;r qu'Emacs puisse utiliser les informations du
+ fichier <filename>whizbang.el</filename>.</para>
+ <para>Recherchons l'entr&eacute;e <symbol>auto-mode-alist</symbol> dans
+ <filename>.emacs</filename> et ajoutons une ligne pour whizbang, par
+ exemple:
+ <programlisting>
+<lineannotation>&hellip;</lineannotation>
+("\\.lsp$" . lisp-mode)
+("\\.wiz$" . whizbang-mode)
+("\\.scm$" . scheme-mode)
+<lineannotation>&hellip;</lineannotation>
+ </programlisting>
+ Cela signifie qu'Emacs passera automatiquement en
+ <function>whizbang-mode</function> &agrave; l'&eacute;dition d'un
+ fichier d'extension <filename>.wiz</filename>.</para>
+ <para>Juste apr&egrave;s, il y a une entr&eacute;e
+ <symbol>font-lock-auto-mode-list</symbol>. Ajoutez-y
+ <function>whizbang-mode</function> comme ceci:
+ <programlisting>
+;; Auto font-lock-mode
+(defvar font-lock-auto-mode-list
+ (list 'c-mode 'c++-mode 'c++-c-mode 'emacs-lisp-mode 'whizbang-mode 'lisp-mode 'perl-mode 'scheme-mode)
+ "Listes des modes &agrave; d&eacute;marrer toujours en font-lock-mode")
+ </programlisting>
+ Ce qui signifie qu'Emacs activera toujours le
+ <function>font-lock-mode</function> (i.e., la mise en valeur
+ syntaxique) &agrave; l'&eacute;dition d'un fichier
+ <filename>.wiz</filename>.</para>
+ <para>Cela suffit. S'il y a autre chose que vous voulez automatiser
+ &agrave; l'ouverture d'un fichier <filename>.wiz</filename>, vous
+ pouvez ajouter un <function>whizbang-mode hook</function> (voyez mon
+ <function>my-scheme-mode-hook</function> pour avoir un exemple simple
+ qui ajoute un <function>auto-indent</function>&nbsp;-&nbsp;indentation
+ automatique).</para>
+ </sect2>
+ </sect1>
+ <sect1>
+ <title>A lire pour aller plus loin</title>
+ <itemizedlist>
+ <listitem>
+ <para>Brian Harvey et Matthew Wright <emphasis>Simply
+ Scheme</emphasis> MIT 1994.<!-- <br> --> ISBN 0-262-08226-8</para>
+ </listitem>
+ <listitem>
+ <para>Randall Schwartz <emphasis>Learning Perl</emphasis> O'Reilly
+ 1993<!-- <br> --> ISBN 1-56592-042-2</para>
+ </listitem>
+ <listitem>
+ <para>Patrick Henry Winston et Berthold Klaus Paul Horn
+ <emphasis>Lisp (3rd Edition)</emphasis> Addison-Wesley
+ 1989<!-- <br> --> ISBN 0-201-08319-1</para>
+ </listitem>
+ <listitem>
+ <para>Brian W. Kernighan et Rob Pike <emphasis>The Unix Programming
+ Environment</emphasis> Prentice-Hall 1984<!-- <br> --> ISBN
+ 0-13-937681-X</para>
+ </listitem>
+ <listitem>
+ <para>Brian W. Kernighan et Dennis M. Ritchie <emphasis>The C
+ Programming Language (2nd Edition)</emphasis> Prentice-Hall
+ 1988<!-- <br> --> ISBN 0-13-110362-8</para>
+ </listitem>
+ <listitem>
+ <para>Bjarne Stroustrup <emphasis>The C++ Programming
+ Language</emphasis> Addison-Wesley 1991<!-- <br> --> ISBN
+ 0-201-53992-6</para>
+ </listitem>
+ <listitem>
+ <para>W. Richard Stevens <emphasis>Advanced Programming in the Unix
+ Environment</emphasis> Addison-Wesley 1992<!-- <br> --> ISBN
+ 0-201-56317-7</para>
+ </listitem>
+ <listitem>
+ <para>W. Richard Stevens <emphasis>Unix Network Programming</emphasis>
+ Prentice-Hall 1990<!-- <br> --> ISBN 0-13-949876-1</para>
+ </listitem>
+ </itemizedlist>
+ </sect1>
+</article>
diff --git a/fr_FR.ISO8859-1/books/Makefile b/fr_FR.ISO8859-1/books/Makefile
new file mode 100644
index 0000000000..1ee88cd418
--- /dev/null
+++ b/fr_FR.ISO8859-1/books/Makefile
@@ -0,0 +1,15 @@
+#
+# The FreeBSD Documentation Project
+# The FreeBSD French Documentation Project
+#
+# $FreeBSD$
+# Original revision: 1.4
+#
+
+SUBDIR = faq
+SUBDIR+= handbook
+
+ROOT_SYMLINKS= faq handbook
+
+DOC_PREFIX?= ${.CURDIR}/../..
+.include "${DOC_PREFIX}/share/mk/doc.project.mk"
diff --git a/fr_FR.ISO8859-1/books/Makefile.inc b/fr_FR.ISO8859-1/books/Makefile.inc
new file mode 100644
index 0000000000..3e2eea4dc7
--- /dev/null
+++ b/fr_FR.ISO8859-1/books/Makefile.inc
@@ -0,0 +1,9 @@
+#
+# The FreeBSD Documentation Project
+# The FreeBSD French Documentation Project
+#
+# $FreeBSD$
+# Original revision: 1.2
+#
+
+DESTDIR?= ${DOCDIR}/fr_FR.ISO_8859-1/books/${.CURDIR:T}
diff --git a/fr_FR.ISO8859-1/books/faq/Makefile b/fr_FR.ISO8859-1/books/faq/Makefile
new file mode 100644
index 0000000000..f8035e4ce4
--- /dev/null
+++ b/fr_FR.ISO8859-1/books/faq/Makefile
@@ -0,0 +1,45 @@
+#
+# The FreeBSD Documentation Project
+# The FreeBSD French Documentation Project
+#
+# Compilation de la FAQ FreeBSD
+#
+# $FreeBSD$
+# Original revision: 1.5
+#
+
+MAINTAINER=nik@FreeBSD.ORG
+
+DOC?= book
+
+FORMATS?= html-split html
+
+INSTALL_COMPRESSED?= gz
+INSTALL_ONLY_COMPRESSED?=
+
+#
+# SRCS lists the individual SGML files that make up the document. Changes
+# to any of these files will force a rebuild
+#
+
+# SGML content
+SRCS= book.sgml
+SRCS+= acknowledgments.sgml
+SRCS+= admin.sgml
+SRCS+= applications.sgml
+SRCS+= commercial.sgml
+SRCS+= hackers.sgml
+SRCS+= hardware.sgml
+SRCS+= includes.sgml
+SRCS+= install.sgml
+SRCS+= kernelconfig.sgml
+SRCS+= misc.sgml
+SRCS+= network.sgml
+SRCS+= preface.sgml
+SRCS+= serial.sgml
+SRCS+= troubleshoot.sgml
+SRCS+= x.sgml
+
+DOC_PREFIX?= ${.CURDIR}/../../..
+
+.include "${DOC_PREFIX}/share/mk/doc.project.mk"
diff --git a/fr_FR.ISO8859-1/books/faq/acknowledgments.sgml b/fr_FR.ISO8859-1/books/faq/acknowledgments.sgml
new file mode 100644
index 0000000000..12c721893e
--- /dev/null
+++ b/fr_FR.ISO8859-1/books/faq/acknowledgments.sgml
@@ -0,0 +1,92 @@
+<!--
+ The FreeBSD Documentation Project
+ The FreeBSD French Documentation Project
+
+ $FreeBSD$
+ Original revision: 1.1
+-->
+
+
+
+ <chapter id="acknowledgments">
+ <title> REMERCIEMENTS </title>
+<programlisting>
+
+
+
+</programlisting>
+ <para><emphasis remap="tt">
+ Si vous voyez un probl&egrave;me avec cette FAQ, ou que vous voulez rajouter
+une entr&eacute;e, mailez nous &agrave; &lt;FAQ@FreeBSD.ORG&gt;
+Nous appr&eacute;cions tout commentaire, et seul votre aide nous permettra
+d'am&eacute;liorer cette FAQ !</emphasis>
+ </para>
+ <programlisting>
+
+ FreeBSD Core Team
+
+
+</programlisting>
+
+ <!-- Faudrait trouver l'equivalent de descript/tag en docbook) -->
+<programlisting>
+ Version originale
+
+</programlisting>
+<itemizedlist>
+ <listitem>
+ <para>Jordan Hubbard :
+Ocasionnellement des mises &agrave; jour et des corrections de la FAQ
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>Doug White :
+Les services ci-dessus et plus qu'il n'en faut sur freebsd-questions
+ </para></listitem>
+
+ <listitem>
+ <para>Joerg Wunsch :
+Les services ci-dessus et plus qu'il n'en faut sur Usenet
+ </para></listitem>
+
+ <listitem>
+ <para>Garrett Wollman :
+R&eacute;seaux et format
+ </para></listitem>
+
+ <listitem>
+ <para>Jim Lowe :
+Informations Multicast
+ </para></listitem>
+
+ <listitem>
+ <para>Peter da Silva :
+Tapage de la FAQ FreeBSD.
+ </para></listitem>
+
+ <listitem>
+ <para>The FreeBSD Team :
+Soumission d'information...
+ </para></listitem>
+</itemizedlist>
+<programlisting>
+
+ L'&eacute;quipe de traduction Francaise:
+</programlisting>
+<itemizedlist>
+ <listitem><para><ulink url="mailto:renaudbreard@telegroupe.fr">Renaud BREARD </ulink></para></listitem>
+ <listitem><para><ulink url="mailto:brive@mail.dotcom.fr">Robert Brive</ulink> </para></listitem>
+ <listitem><para><ulink url="mailto:gioria@francenet.fr">S&eacute;bastien GIORIA</ulink> </para></listitem>
+ <listitem><para><ulink url="mailto:fhaby@club-internet.fr">Fr&eacute;d&eacute;ric Haby</ulink></para></listitem>
+ <listitem><para><ulink url="mailto:Stephane.Legrand@bigfoot.com">St&eacute;phane LEGRAND </ulink></para></listitem>
+ <listitem><para><ulink url="mailto:nolin@mail.dotcom.fr">Philippe Nolin</ulink> </para></listitem>
+ <listitem><para><ulink url="mailto:regnauld@deepo.prosa.dk">Philippe REGNAULD </ulink></para></listitem>
+ <listitem><para><ulink url="mailto:ritsch_p@epita.fr">Pierre Yves RITSCHARD</ulink></para></listitem>
+ <listitem><para><ulink url="mailto:dntt@prism.uvsq.fr">Tuy&ecirc;t Tr&acirc;m DANG NGOC</ulink> </para></listitem>
+
+</itemizedlist>
+ <para>
+Et pour tous les autres que nous avons oubli&eacute;s, mille excuses, et merci de tout coeur !
+ </para>
+ </chapter>
diff --git a/fr_FR.ISO8859-1/books/faq/admin.sgml b/fr_FR.ISO8859-1/books/faq/admin.sgml
new file mode 100644
index 0000000000..b9afc7c57f
--- /dev/null
+++ b/fr_FR.ISO8859-1/books/faq/admin.sgml
@@ -0,0 +1,893 @@
+<!--
+ The FreeBSD Documentation Project
+ The FreeBSD French Documentation Project
+ $FreeBSD$
+ Original revision: 1.20
+-->
+
+<chapter id="admin">
+ <title>Administration syst&egrave;me</title>
+
+ <sect1>
+ <title>O&ugrave; sont les fichiers de d&eacute;marrage du syst&egrave;me&nbsp;?</title>
+
+ <para>De la version 2.0.5R &agrave; la version 2.2.1R, le fichier de
+configuration principal &eacute;tait <filename> /etc/sysconfig </filename>.
+Toutes les options sont sp&eacute;cifi&eacute;es dans ce fichier et les autres
+fichiers comme <ulink url="http://www.freebsd.org/cgi/man.cgi?rc">
+/etc/rc </ulink> et <filename> /etc/netstart </filename> ne font
+que l'inclure.</para>
+
+ <para>Regardez dans le fichier <filename> /etc/sysconfig
+</filename> et changez les valeurs n&eacute;cessaires pour configurer votre
+syst&egrave;me. Ce fichier inclut des commentaires indiquant les valeurs &agrave;
+mettre.</para>
+
+ <para>Pour les versions 2.2.1 et suivantes, le fichier <filename>
+/etc/sysconfig </filename> a &eacute;t&eacute; renomm&eacute; en <ulink
+url="http://www.freebsd.org/cgi/man.cgi?rc.conf(5)"> <filename>
+rc.conf </filename> </ulink> et a &eacute;t&eacute; &eacute;pur&eacute; au passage. Le fichier
+<filename> /etc/netstart </filename> a aussi &eacute;t&eacute; renomm&eacute; en <filename>
+rc/network </filename> comme cela tous les fichiers peuvent &ecirc;tre
+copi&eacute;s gr&acirc;ce &agrave; une seule commande&nbsp;: <ulink
+url="http://www.freebsd.org/cgi/man.cgi?cp"> cp </ulink>
+<filename>/usr/src/etc/rc* /etc</filename>. </para>
+
+ <para>Le fichier <filename>/etc/rc.local</filename> existe
+toujours et peut &ecirc;tre utilis&eacute; pour d&eacute;marrer des services additionnels
+comme <ulink
+url="http://www.freebsd.org/cgi/ports.cgi?^inn">INN</ulink> ou pour
+positionner certaines valeurs.</para>
+
+ <para>Le fichier <filename>/etc/rc.serial </filename> permet
+d'initialiser les ports s&eacute;rie (par exemple mettre en place les
+caract&eacute;ristiques du port, etc..).</para>
+
+ <para>Le fichier <filename>/etc/rc.i386 </filename> est
+sp&eacute;cifique aux param&egrave;tres des plateformes Intel, comme l'&eacute;mulation
+iBCS2 ou la configuration de la console syst&egrave;me d'un PC.</para>
+
+ <para>Avec la version 2.1.0R, vous pouvez d&eacute;finir des fichiers de
+d&eacute;marrage "locaux" se trouvant dans un r&eacute;pertoire sp&eacute;cifi&eacute; dans le
+fichier <filename>/etc/sysconfig</filename> (ou le fichier <filename>
+/etc/rc.conf </filename>):
+<programlisting>
+# Emplacement des fichiers de d&eacute;marrage locaux
+local_startup=/usr/local/etc/rc.local.d
+</programlisting></para>
+
+ <para>Chaque fichier se terminant par <filename> .sh </filename>
+sera &eacute;x&eacute;cut&eacute; dans l'ordre alphab&eacute;tique.</para>
+
+ <para>Si vous voulez vous assurez d'un certain ordre de
+d&eacute;marrage sans changer le nom des fichiers, vous pouvez utiliser un
+sch&eacute;ma similaire &agrave; celui qui suit, en faisant pr&eacute;c&eacute;der chaque fichier
+de chiffres pour assurer l'ordre de d&eacute;marrage:
+<programlisting>
+10news.sh
+15httpd.sh
+20ssh.sh
+ </programlisting></para>
+
+ <para>Cela peut vous sembler un peu laid (ou SysV :-)) mais cela
+fournit une fa&ccedil;on simple pour les packages locaux ajout&eacute;s sans &ecirc;tre
+oblig&eacute; d'&eacute;diter <filename> /etc/rc.local </filename>. La plupart des
+ports ou des packages assument que le r&eacute;pertoire <filename>
+/usr/local/etc/rc.d </filename> permet le d&eacute;marrage des programmes
+locaux.</para>
+
+ </sect1>
+
+ <sect1>
+ <title>Comment ajouter simplement un utilisateur&nbsp;?</title>
+ <para>Utilisez la commande <ulink
+url="http://www.freebsd.org/cgi/man.cgi?adduser"> adduser
+</ulink></para>
+
+ <para>Il existe aussi un autre outil nomm&eacute;
+<filename>``new-account''</filename> &eacute;crit en Perl par <ulink
+url="mailto:roberto@FreeBSD.ORG">Ollivier Robert</ulink>. Demandez le
+lui. Cet outil est actuellement en cours de d&eacute;veloppements suppl&eacute;mentaires</para>
+
+ <para>Pour retirer un utilisateur, utilisez la commande <ulink
+url="http://www.freebsd.org/cgi/man.cgi?rmuser">rmuser</ulink>.</para>
+
+ </sect1>
+
+ <sect1>
+ <title>Comment ajouter un nouveau disque dur &agrave; mon syst&egrave;me FreeBSD&nbsp;?</title>
+
+ <para> Voyez le <ulink
+url="&url.tutorials;diskformat/index.html">tutoriel</ulink> sur le formatage des
+disques dur.</para>
+
+ </sect1>
+
+ <sect1>
+ <title>Comment utiliser mon nouveau disque amovible&nbsp;? </title>
+
+ <para>Que ce soit un disque amovible de type ZIP ou EZ (ou
+m&ecirc;me une disquette), ou un disque dur, une fois install&eacute; et
+reconnu par le syst&egrave;me et que vous avez ins&eacute;r&eacute; une cartouche/disquette, la
+manipulation est la m&ecirc;me pour tous les p&eacute;riph&eacute;riques.</para>
+
+ <para><anchor id="disklabel">(Cette section est bas&eacute;e sur <ulink url="http://www.vmunix.com/mark/FreeBSD/ZIP-FAQ.html">la FAQ </ulink> des lecteurs ZIP de Mark Mayo)</para>
+
+ <para>Si c'est un disque ZIP ou une disquette DOS, il y a d&eacute;j&agrave; un syst&egrave;me de fichier DOS install&eacute;, vous pouvez utilisez les commandes suivantes:
+<programlisting>
+mount -t msdos /dev/fd0c /floppy
+</programlisting>s'il s'agit d'une disquette; ou:
+<programlisting>
+mount -r msdos /dev/sd2s4 /zip
+</programlisting>s'il s'agit d'un lecteur ZIP dans sa configuration d'origine.
+</para>
+
+ <para>Pour les autres types de disques, voyez leur partitionnement en utilisant <filename> fdisk </filename> ou <filename> /stand/sysinstall </filename>.</para>
+
+ <para>Les exemples qui suivent supposent que vous disposez d'un disque ZIP sur sd2, le troisi&egrave;me disque SCSI.</para>
+
+ <para>Si votre disque amovible n'est pas une disquette, ou tout autre disque amovible que vous ne d&eacute;sirez par partager avec d'autres personnes, il vaut mieux mettre un syst&egrave;me de fichiers BSD dessus. Vous pourrez avoir des noms longs, une am&eacute;lioration de performances et une meilleur stabilit&eacute;. Pour commencer, vous devez effacer la partition ou le syst&egrave;me de fichiers DOS. Vous pouvez utiliser l'utilitaire <ulink url="http://www.freebsd.org/cgi/man.cgi?fdisk"> fdisk </ulink> ou <filename> /stand/sysinstall </filename>, ou pour un disque d'une petite capacit&eacute;, d&eacute;truire la table des partitions FAT et utiliser le partitionnement BSD standard&nbsp;:
+<programlisting>
+dd if=/dev/zero of=/dev/rsd2 count=2
+disklabel -Brw sd2 auto
+</programlisting></para>
+
+ <para>Vous pouvez utiliser disklabel ou <filename> /stand/sysinstall </filename> pour cr&eacute;er plusieurs partitions BSD. Vous effectuerez probablement ces op&eacute;rations si vous ajoutez de l'espace de "swap" sur un disque fixe, mais il est inconcevable de le faire sur un disque amovible ZIP.</para>
+
+ <para>Pour finir construisez un nouveau syst&egrave;me de fichier, utilisant tout l'espace disponible sur votre lecteur ZIP&nbsp;:
+<programlisting>
+newfs /dev/rsd2c
+</programlisting> et montez le&nbsp;:
+<programlisting>
+mount /dev/sd2c /zip
+</programlisting></para>
+
+ <para>C'est surement une bonne id&eacute;e d'ajouter la ligne suivante au fichier <ulink url="http://www.freebsd.org/cgi/man.cgi?fstab"> /etc/fstab </ulink>, cela vous permettra de ne taper que "mount /zip" par la suite&nbsp;:
+<programlisting>
+/dev/sd2c /zip ffs rw,noauto 0 0
+</programlisting></para>
+
+ </sect1>
+ <sect1>
+ <title>Comment monter une partition DOS &eacute;tendue&nbsp;?</title>
+ <para>Les partitions DOS &eacute;tendues se trouvent apr&egrave;s la fin de toutes les partitions primaires. Par exemple, si vous avez une partition "E" en tant que partition DOS &eacute;tendue sur le deuxi&egrave;me disque SCSI, vous devez cr&eacute;er le fichier sp&eacute;cial pour la partition 5 dans /dev et monter /dev/sd1s5&nbsp;:
+<programlisting>
+# cd /dev
+# ./MAKEDEV sd1s5
+# mount -t msdos /dev/sd1s5 /dos/e
+</programlisting></para>
+ </sect1>
+
+ <sect1>
+ <title>Puis-je monter d'autres syst&egrave;mes de fichiers sous FreeBSD&nbsp;?</title>
+
+ <para>Les CDROM <emphasis remap="bf"> Digital UNIX </emphasis>
+au format UFS peuvent &ecirc;tre mont&eacute;s directements sous FreeBSD. Il peut
+&ecirc;tre tr&egrave;s difficile, par contre, de monter des partitions disques de
+Digital UNIX, ou d'autres syst&egrave;mes supportant l'UFS. Cela d&eacute;pend des
+partitionnements effectu&eacute;s sur le syst&egrave;me en question.</para>
+
+ <para><emphasis remap="bf">Linux:</emphasis> Les version 2.2 et
+sup&eacute;rieures incluent le support des partitions <emphasis remap="bf">
+ext2fs </emphasis>. Pour plus d'informations voyez la page de manuel
+de <ulink url="http://www.freebsd.org/cgi/man.cgi?mount_ext2fs">
+mount_ext2fs </ulink>.</para>
+
+ <para>Toute autre information sur le sujet est appr&eacute;ci&eacute;e.</para>
+
+ </sect1>
+
+ <sect1>
+ <title>Comment utiliser le programme de d&eacute;marrage de NT pour d&eacute;marrer FreeBSD&nbsp;?</title>
+ <para>Il faut pour cela copier le premier secteur de votre
+partition FreeBSD dans un fichier sur une partition DOS/NT. Nous
+supposerons qu'il s'appelle <filename> c:&bsol;bootsect.bsd
+</filename> (&eacute;quivalent de <filename> c:&bsol;bootsect.dos
+</filename>). Il suffit d'&eacute;diter le fichier <filename>
+c:&bsol;boot.ini </filename> pour qu'il ressemble &agrave; ceci:</para>
+
+ <para><programlisting>
+[boot loader]
+timeout=30
+default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS
+[operating systems]
+multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Windows NT"
+C:\BOOTSECT.BSD="FreeBSD"
+C:\="DOS" </programlisting> Cette
+proc&eacute;dure implique que DOS, NT ou FreeBSD soient install&eacute;s sur le
+m&ecirc;me disque. Dans mon cas DOS et NT sont install&eacute;s
+respectivement sur la premi&egrave;re partition du disque et FreeBSD sur la
+seconde. FreeBSD est aussi configur&eacute; pour d&eacute;marrer depuis sa partition
+et <emphasis remap="bf"> non </emphasis> depuis le MBR du
+disque.</para>
+
+ <para>Monter une disquette pr&eacute;format&eacute;e DOS (si vous cette
+partition n'est pas en FAT, mais en NTFS) sous <filename> /mnt
+</filename>.</para>
+
+ <para><programlisting>
+dd if=/dev/rsd0a of=/mnt/bootsect.bsd bs=512 count=1
+
+</programlisting> Red&eacute;marrez en mode DOS ou NT. Si vous
+avez une partition NTFS copiez le fichier <filename> bootsect.bsd
+</filename> de la disquette dans le r&eacute;pertoire C:&bsol;. Modifiez les
+attributs (permissions) du fichier boot.ini.</para>
+
+ <para><programlisting>
+attrib -s -r c:\boot.ini
+</programlisting>Ajoutez la ligne correcte au fichier boot.ini et
+restaurez les anciens attributs.</para>
+
+ <para><programlisting>
+attrib -s -r c:\boot.ini
+</programlisting>Si FreeBSD d&eacute;marre depuis le MBR, restaurez-le avec
+la commande DOS <filename> fdisk /MBR </filename> apr&egrave;s avoir
+reconfigur&eacute; FreeBSD pour d&eacute;marrer depuis sa partition native.</para>
+
+ </sect1>
+
+ <sect1>
+ <title>Comment d&eacute;marrer FreeBSD et Linux grace &agrave; LILO&nbsp;?</title>
+ <para>Si vous avez install&eacute; FreeBSD et Linux sur le m&egrave;me disque,
+suivez les instructions du manuel de LILO pour d&eacute;marrer sur d'autres
+syst&egrave;mes que Linux. En r&eacute;sum&eacute; il faut&nbsp;:</para>
+
+ <para>D&eacute;marrer sous Linux et ajouter les lignes suivantes au
+fichier <filename> /etc/lilo.conf </filename>:
+<programlisting>
+other=/dev/hda2
+table=/deb/hda
+label=FreeBSD
+</programlisting>(l'exemple pr&eacute;c&eacute;dant suppose que la partition FreeBSD
+est connue par linux sous le nom <filename> /dev/hda2 </filename>.
+Ensuite lancez <filename> lilo </filename> sous root, et c'est
+fini.</para>
+
+ <para>Si FreeBSD se trouve sur un autre disque vous devez
+ajouter <filename> loader=/boot/chain.b </filename> au fichier de
+configuration de lilo&nbsp;:
+<programlisting>
+other=/dev/sdb4
+table=/dev/sdb
+loader=/boot/chain.b
+label=FreeBSD </programlisting>
+Dans certains cas, vous devez sp&eacute;cifier le num&eacute;ro du disque connu par
+le BIOS au programme de d&eacute;marrage de FreeBSD pour d&eacute;marrer sur le
+deuxi&egrave;me disque. Par exemple, si votre disque SCSI contenant FreeBSD
+est trouv&eacute; par le BIOS comme disque num&eacute;ro 1, vous devez taper la ligne
+suivante au prompt du programme de d&eacute;marrage:
+<programlisting>
+Boot: 1:sd(0,a)/kernel
+</programlisting> Vous pouvez configurer le <ulink
+url="http://www.freebsd.org/cgi/man.cgi?boot(8)"> programme de
+d&eacute;marrage </ulink> de FreeBSD version 2.2.5 ou sup&eacute;rieure pour prendre
+cette chaine par d&eacute;faut.</para>
+
+ <para>Le document <ulink
+url="http://sunsite.unc.edu/LDP/HOWTO/mini/Linux+FreeBSD.html">Linux+FreeBSD
+mini-HOWTO</ulink> est une tr&egrave;s bonne r&eacute;f&eacute;rence sur
+l'interop&eacute;rabilit&eacute; entre FreeBSD et Linux.</para>
+
+ </sect1>
+
+ <sect1>
+ <title>Comment d&eacute;marrer FreeBSD et Linux depuis BootEasy&nbsp;?</title>
+
+ <para>Il faut installer LILO au d&eacute;but de votre partition de
+d&eacute;marrage de Linux au lieu du MBR. Vous pouvez alors d&eacute;marrer LILO
+depuis BootEasy.</para>
+
+ <para>Si vous utilisez Linux et Windows-95, c'est la meilleur
+fa&ccedil;on d'installer LILO si vous voulez continuer &agrave; d&eacute;marrer Linux apr&egrave;s
+avoir r&eacute;install&eacute; Windows-95 (qui lui ne tient pas contre des autres
+syst&egrave;mes et se croit seul sur le MBR).</para>
+
+ </sect1>
+ <sect1>
+ <title>Est-ce dangereux d'utiliser un disque d&eacute;di&eacute;&nbsp;?</title>
+
+ <para>La proc&eacute;dure d'installation vous permet de choisir deux
+fa&ccedil;ons diff&eacute;rentes pour partitionner vos disques. Par d&eacute;faut, elle
+permet de les rendre compatibles avec d'autres syst&egrave;mes d'exploitation
+se trouvant sur votre ordinateur en utilisant les entr&eacute;es des tables
+de fdisk (appel&eacute;s "slices" sous FreeBSD), en faisant en sorte qu'une
+"slice" FreeBSD corresponde &agrave; une partition. Vous pouvez aussi
+installer un selecteur de d&eacute;marrage pour choisir de d&eacute;marrer sous un
+autre syst&egrave;me d'exploitation.</para>
+
+ <para>Comme ceci correspond &agrave; la plupart des cas de personnes
+venant des PC, les personnes venant d'Unix et qui d&eacute;sirent mettre en
+place une machine pour y faire tourner FreeBSD et juste FreeBSD,
+utilisent la proc&eacute;dure classique d'installation d'Unix, ou Unix
+utilise le disque au complet, du premier secteur au dernier. Une
+v&eacute;ritable table pour fdisk n'est d'aucune utilit&eacute; dans le vas d'une
+machine utilisant FreeBSD 24h/24, 7jours sur 7, car aucun autre
+syst&egrave;me d'exploitation ne sera d&eacute;marr&eacute;. Donc si vous s&eacute;lectionnez
+``A)ll FreeBSD '' dans l'&eacute;diteur de partition du programme
+d'installation et r&eacute;pondez ``No'' &agrave; la question qui suit, vous serez
+dans ce cas. Notez que cela implique que le programme de
+d&eacute;marrage BSD correspond au MBR de ce disque. N'essayez pas d'en
+r&eacute;installer un sous peine de d&eacute;truire le pr&eacute;c&eacute;dent.</para>
+
+ <para>Donc pourquoi est-ce donc ``dangereux''&nbsp;? Un disque
+configur&eacute; de la sorte ne contient pas de table fdisk valides, pour la
+plupart des utilitaires PC. Suivant la fa&ccedil;on dont ils ont &eacute;t&eacute; con&ccedil;us,
+ils vous avertissent ou tout simplement ne disent rien et d&eacute;truisent
+le programme de d&eacute;marrage BSD sans avertissement. Certains syst&egrave;mes
+d'exploitation tr&egrave;s utilis&eacute;s sur PC, sont connus pour agir de la
+sorte (bien s&ucirc;r, ils agissent de la sorte sous le couvert de syst&egrave;me
+"orient&eacute;-utilisateur"). Au moins un BIOS de chez Award, qui est par
+exemple utilis&eacute; sur les HP Netserver (mais sur d'autre syst&egrave;mes
+aussi), est connu pour ignorer tout disque dur n'ayant pas de table
+fdisk valide. Lorsque votre machine d&eacute;marre il ignore tout simplement
+de tels disques, tente de d&eacute;marrer sur une disquette, et vous affiche
+un ``Read error''. Tr&egrave;s impressionnant, non&nbsp;?. C'est ce que certains
+appellent un syst&egrave;me "orient&eacute;-utilisateur".</para>
+
+ <para>Les avantages de ce partitionnement sont&nbsp;: FreeBSD utilise
+le disque au complet, il n'y a donc pas de besoin de garder quelques
+'pistes' au d&eacute;but du disque qui ne servaient &agrave; rien sauf pour un
+mod&egrave;le de partitionnement vieux et simpliste qui n'a maintenant plus
+aucun sens. Ces contraintes &eacute;tant ce que l'on peut appeler la plus
+grosse prise de t&ecirc;te lors de l'installation des syst&egrave;mes
+d'exploitations sur PS, et qui menaient le plus souvent &agrave; deux fa&ccedil;on
+compl&egrave;tement redondantes de stockage des informations dans les tables
+fdisk. Voyez le chapitre sur <ulink url="missingos"> ``Missing
+Operating System''</ulink>. Dans le cas d'un disque ``dangereusement d&eacute;di&eacute;'',
+le programme de d&eacute;marrage BSD commence au secteur 0, qui est le seul
+secteur ne changeant de valeur C/H/S, pour les valeurs du disque du
+BIOS. Vous pouvez donc, dans ce cas, interchanger des disques entre
+plusieurs controleurs ou syst&egrave;mes utilisant des sch&eacute;mas de translation
+diff&eacute;rents sans vous poser de questions.</para>
+
+ <para>Pour passer d'un disque ``dangereusement d&eacute;di&eacute;'' &agrave; un
+disque normal de PC, il y a deux solutions simples. La premi&egrave;re est de
+recouvrir le MBR d'octets vides, pour permettre de faire croire que le
+disque est vierge. Pour pouvez le faire de la fa&ccedil;on suivante:
+<programlisting>dd if=/dev/zero of=/dev/rds0 count=15</programlisting>
+Ou en utilisant une fonctionnnalit&eacute; non-document&eacute;e de DOS&nbsp;:
+<programlisting> fdisk /mbr </programlisting> qui installe aussi un
+nouveau MBR, en recouvrant le programme de d&eacute;marrage BSD.</para>
+
+ </sect1>
+
+ <sect1>
+ <title>Comme faire pour ajouter plus de "swap"&nbsp;?</title>
+
+ <para>La meilleur fa&ccedil;on de faire, est d'augmenter la taille de
+votre partition de swap, ou de prendre cette excuse pour ajouter un
+autre disque.</para>
+
+ <para>Ajouter du "swap" sur un autre disque permet plus d'augmenter
+la rapidit&eacute; que d'en ajouter sur le m&ecirc;me disque. Par exemple, si
+vous compilez des fichiers qui se trouvent sur un disque et que le "swap"
+se trouve sur un autre disque, cela va beaucoup plus vite d'avoir
+le "swap" et les sources sur le m&ecirc;me disque. Ceci est
+sp&eacute;cialement vrai pour les disques SCSI.</para>
+
+ <para>Les disques IDE ne permettent pas l'acc&egrave;s &agrave; deux disques
+sur le m&ecirc;me canal au m&ecirc;me moment (FreeBSD ne supporte pas
+le mode 4, donc toutes les entr&eacute;es/sorties disques sont
+``programm&eacute;es''). Je vous sugg&egrave;re de mettre le "swap" sur un autre
+disque aussi. Les disques durs sont si peu couteux, que cela ne vaut
+pas le coup de tout mettre sur un.</para>
+
+ <para>C'est une tr&egrave;s mauvaise id&eacute;e de mettre le fichier de
+"swap" sur une partition NFS, sauf si vous disposez d'un environnement
+r&eacute;seau extr&egrave;mement rapide, et d'un tr&egrave;s bon serveur NFS.</para>
+
+ <para>Voici un exemple pour ajouter 64Mo de swap en utilisant un
+fichier se nommant <filename> /usr/swap0 </filename>.</para>
+ <para>Assurez vous que votre noyau est compil&eacute; avec la ligne
+<programlisting>
+pseudo-device vn 1 # #Vnode driver (turns a file into a device)
+ </programlisting>Le noyau GENERIC la contient par
+d&eacute;faut.
+
+<itemizedlist>
+ <listitem>
+ <para>Cr&eacute;ez un vn-device :
+<programlisting>
+cd /dev
+sh./MAKEDEV vn0
+ </programlisting></para>
+ </listitem>
+ <listitem>
+ <para>Cr&eacute;ez le fichier de "swap" (<filename>/usr/swap0</filename>).
+<programlisting> dd if=/dev/zero of=/usr/swap0 bs=1024k count=64 </programlisting></para>
+ </listitem>
+ <listitem>
+ <para>Activez le fichier de "swap" dans le fichier
+<filename> /etc/rc.conf </filename> <programlisting>
+swapfile="/usr/swap0" # Set to name of swapfile if aux swapfile desired.
+</programlisting></para>
+ </listitem>
+ <listitem> <para>Rebootez la machine</para> </listitem>
+ </itemizedlist></para>
+
+ <para>Pour activer le fichier de "swap" imm&eacute;diatement, tapez
+<programlisting>
+vnconfig -ce /dev/vn0c /usr/swap0 swap
+</programlisting></para>
+ </sect1>
+
+ <sect1>
+ <title>J'ai des probl&egrave;mes pour installer mon imprimante.</title>
+ <para>R&eacute;f&eacute;rez-vous &agrave; la section sur les <ulink
+url="../handbook/printing.html">imprimantes du Handbook</ulink>. Elle
+couvre l'essentiel des probl&egrave;mes que l'on peut rencontrer.</para>
+
+ </sect1>
+
+ <sect1>
+ <title>Le clavier est mal configur&eacute; sur mon ordinateur.</title>
+ <para>Le programme <filename>kbdcontrol</filename> comporte une
+option permettant de charger une configuration clavier diff&eacute;rente.
+Vous trouverez dans <filename>/usr/share/syscons/keymaps</filename>
+diff&eacute;rents fichiers de configuration. Choisissez celle voulue et
+chargez la&nbsp;: <programlisting> kbdcontrol -l fr.iso
+</programlisting></para>
+
+ <para>Dans tous les cas le programme <ulink
+url="http://www.freebsd.org/cgi/man.cgi?kbdcontrol">kbdcontrol</ulink>
+recherche dans <filename>/usr/share/syscons/keymaps</filename> un
+fichier se terminant par <filename>.kbd</filename>.</para>
+
+ <para>Vous pouvez le configurer dans le fichier
+<filename>/etc/sysconfig</filename> (ou <ulink
+url="http://www.freebsd.org/cgi/man.cgi?rc.conf(5)">rc.conf</ulink>).
+Regardez les commentaires apropri&eacute;s dans ce fichier.</para>
+
+ <para>Pour les versions 2.0.5 et suivantes, tout ce qui est
+relatif aux fontes du texte, &agrave; la configuration du clavier se trouve dans
+<filename>/usr/share/syscons</filename>.</para>
+
+ <para>Actuellement les configurations de claviers suivantes sont support&eacute;es&nbsp;:
+<itemizedlist>
+ <listitem><para>Belgian ISO-8859-1 </para></listitem>
+ <listitem><para>Brazilian 275 keyboard Codepage 850 </para></listitem>
+ <listitem><para>Brazilian 275 keyboard ISO-8859-1 </para></listitem>
+ <listitem><para>Danish Codepage 865 </para></listitem>
+ <listitem><para>Danish ISO-8859-1 </para></listitem>
+ <listitem><para>French ISO-8859-1 </para></listitem>
+ <listitem><para>German Codepage 850 </para></listitem>
+ <listitem><para>German ISO-8859-1 </para></listitem>
+ <listitem><para>Italian ISO-8859-1 </para></listitem>
+ <listitem><para>Japanese 106 </para></listitem>
+ <listitem><para>Japanese 106x </para></listitem>
+ <listitem><para>Latin American </para></listitem>
+ <listitem><para>Norwegian ISO-8859-1 </para></listitem>
+ <listitem><para>Polish ISO-8859-2 (programmer's) </para></listitem>
+ <listitem><para>Russian Codepage 866 (alternative) </para></listitem>
+ <listitem><para>Russian koi8-r (shift) </para></listitem>
+ <listitem><para>Russian koi8-r </para></listitem>
+ <listitem><para>Spanish ISO-8859-1 </para></listitem>
+ <listitem><para>Swedish Codepage 850 </para></listitem>
+ <listitem><para>Swedish ISO-8859-1 </para></listitem>
+ <listitem><para>Swiss-German ISO-8859-1 </para></listitem>
+ <listitem><para>United Kingdom Codepage 850 </para></listitem>
+ <listitem><para>United Kingdom ISO-8859-1 </para></listitem>
+ <listitem><para>United States of America ISO-8859-1 </para></listitem>
+ <listitem><para>United States of America dvorak </para></listitem>
+ <listitem><para>United States of America dvorakx </para></listitem>
+ </itemizedlist>
+</para>
+ </sect1>
+
+ <sect1>
+ <title>Comment faire en sorte que les quotas utilisateurs fonctionnent correctement&nbsp;?</title>
+ <para>
+<itemizedlist>
+ <listitem><para>Ne mettez pas de quotas sur '/',</para></listitem>
+ <listitem><para>Mettez le fichier des quotas sur le syst&egrave;me de fichiers
+qui en dispose, par ex&nbsp;:
+<programlisting>
+Syst&egrave;me de fichier Emplacement du fichier des quotas
+/usr /usr/admin/quotas
+/home /home/admin/quotas
+...
+</programlisting></para></listitem></itemizedlist></para>
+
+ </sect1>
+
+ <sect1>
+ <title>Qu'est-ce qui ne va pas avec ma configuration de ccd&nbsp;?</title>
+
+ <para>Le symptome est le suivant :
+<programlisting>
+# ccdconfig -C
+ccdconfig: ioctl (CCDIOCSET): /dev/ccd0c: Inappropriate file type or format
+#
+</programlisting></para>
+ <para>Ceci apparait la plupart du temps lorsque vous essayez de
+concat&eacute;ner les partitions ``c'', qui par d&eacute;faut ont comme type
+``unused''. Le gestionnaire de disque ccd n&eacute;cessite que le type de la
+partition soit de type FS_BSDFFS. Dans ce cas, &eacute;ditez le label des
+disques &agrave; concat&eacute;ner et changez le type des partitions en type
+``4.2BSD''.</para>
+
+ </sect1>
+
+ <sect1>
+ <title>Pourquoi je ne peux pas &eacute;diter le label de mes disques concat&eacute;n&eacute;s&nbsp;? </title>
+
+ <para>Le symptome est le suivant&nbsp;:
+<programlisting>
+# disklabel ccd0
+(&ccedil;a affiche quelque chose de particulier ici, donc essayons de l'&eacute;diter)
+# disklabel -e ccd0
+(&eacute;dition, sauvegarde, sortie)
+disklabel: ioctl DIOCWDINFO: No disk label on disk;
+use "disklabel -r" to install initial label
+#
+</programlisting></para>
+
+ <para>Cela apparait souvent lorsque le label retourn&eacute; par le
+gestionnaire de disques concat&eacute;n&eacute; est un faux, un qui n'est pas
+v&eacute;ritablement sur le disque. Pour r&eacute;soudre ce probl&egrave;me il faut &eacute;crire
+explicitement sur le disque, comme ceci&nbsp;:
+<programlisting>
+# disklabel ccd0 > /tmp/disklabel.tmp
+# disklabel -Rr ccd0 /tmp/disklabel.tmp
+# disklabel -e ccd0
+(maintenant cela doit fonctionner correctement)
+</programlisting></para>
+
+ </sect1>
+
+ <sect1>
+ <title>Est-ce que FreeBSD supporte les communications inter-processus de type Syst&egrave;me V (IPC)&nbsp;?</title>
+ <para>Oui, FreeBSD supporte les communications inter-processus
+de type Syst&egrave;me V, IPC. Cela inclue la m&eacute;moire partag&eacute;e, les files de
+messages et les s&eacute;maphores. Vous devez ajouter les lignes suivantes &agrave;
+votre fichier de configuration du noyau pour les activer&nbsp;:</para>
+<para><programlisting>
+options SYSVSHM
+options "SHMMAXPGS=64" # 256Ko de m&eacute;moire partag&eacute;e
+options SYSVSEM # activation des s&eacute;maphores
+options SYSVMSG # activation des files de messages
+</programlisting>Recompilez le noyau et installez le.</para>
+
+ <para><emphasis remap="bf">Note&nbsp;:</emphasis> Vous aurez s&ucirc;rement
+besoin d'augmenter SHMMAXPGS &agrave; un nombre plus &eacute;lev&eacute;, comme 4096 (16M!)
+si vous avez besoin d'utiliser GIMP. 256Ko est largement suffisant
+pour la m&eacute;moire partag&eacute;e dont &agrave; besoin X11R6.</para>
+ </sect1>
+
+ <sect1>
+ <title>Comment configurer sendmail pour fonctionner avec UUCP&nbsp;?</title>
+
+ <para>La configuration de sendmail fournie avec FreeBSD,
+correspond &agrave; un site directement connect&eacute; &agrave; l'Internet. Les sites qui
+utilisent UUCP pour &eacute;changer du courrier &eacute;lectronique doivent
+installer un autre fichier de configuration pour sendmail. </para>
+
+ <para>Modifier directement le fichier <filename>
+/etc/sendmail.cf </filename> est r&eacute;serv&eacute; la plupart du temps aux
+gourous. La version 8 de sendmail dispose d'une interface <ulink
+url="http://www.freebsd.org/cgi/man.cgi?m4">m4</ulink> de g&eacute;n&eacute;ration
+du fichier de configuration, qui encapsule le fichier de configuration
+dans un format abstrait de haut niveau. Vous devez trouvez les
+diff&eacute;rents fichiers de configuration dans le r&eacute;pertoire <filename>
+/usr/src/usr.sbin/sendmail/cf </filename>.</para>
+
+ <para>Si vous n'avez pas install&eacute; tous les sources du syst&egrave;me,
+vous pouvez trouver les diff&eacute;rents fichiers de configuration de
+sendmail dans un fichier s&eacute;par&eacute; des autres sources sur le CD-ROM. Si
+vous avez mont&eacute; le CD-ROM ex&eacute;cutez les commandes suivantes&nbsp;:</para>
+<para><programlisting>
+cd /usr/src
+tar -xvzf /cdrom/dists/src/ssmailcf.aa
+</programlisting></para>
+
+ <para>Cela correspond juste &agrave; une centaine de kilo-octets. Le
+fichier <filename>README</filename> dans le r&eacute;pertoire
+<filename>cf</filename> vous explique rapidement comment fonctionnne
+m4.</para>
+
+ <para>Pour utiliser UUCP, vous devez utiliser la fonctionnnalit&eacute;
+<emphasis>mailertable</emphasis>. Elle permet &agrave; sendmail de constituer
+une base de donn&eacute;es pour lui permettre de router le courrier
+correctement.</para>
+
+ <para>Pour commencer, vous devez cr&eacute;er une fichier de
+configuration <filename>.mc</filename>. Tous ces types de fichiers se
+trouvent dans le r&eacute;pertoire
+<filename>/usr/src/usr.sbin/sendmail/cf/cf</filename>. Il y a quelques
+fichiers d'exemples dans ce r&eacute;pertoire pouvant vous aider. En
+supposant que vous avez appel&eacute; ce fichier <filename>foo.mc</filename>,
+tout ce que vous devez faire pour le convertir en un
+fichier valide de configuration de sendmail,
+<filename>sendmail.cf</filename> est&nbsp;:</para>
+
+<para><programlisting>
+cd /usr/src/usr.sbin/sendmail/cf/cf
+make foo.cf
+cp foo.cf /etc/sendmail.cf
+</programlisting></para>
+
+ <para>Un fichier classique ressemble &agrave; ceci:</para>
+<para><programlisting>
+include(`../m4/cf.m4')
+VERSIONID(`Votre num&eacute;ro de version)
+OSTYPE(bsd4.4)
+FEATURE(nodns)
+FEATURE(nocanonify)
+FEATURE(mailertable)
+
+define(`UUCP_RELAY', nom.du.relai.uucp)
+define(`UUCP_MAX_SIZE', 200000)
+
+MAILER(local)
+MAILER(smtp)
+MAILER(uucp)
+
+Cw alias.de.votre.nom.de.machine
+Cw votrenomdenoeuduucp.UUCP
+</programlisting></para>
+
+ <para>Les directives <emphasis>nodns</emphasis>et
+<emphasis>nocanonify</emphasis> forcent sendmail &agrave; ne pas utiliser le
+DNS lors de l'envoi du courrier. La directive
+<emphasis>UUCP_RELAY</emphasis> est utilis&eacute;e pour des raisons assez
+bizarres; ne posez pas de questions et utilisez-la. Mettez juste un nom
+de machine capable de recevoir du courrier en UUCP. La plupart du
+temps il faut mettre le nom du serveur de messagerie de votre
+fournisseur d'acc&egrave;s.</para>
+
+ <para>Apr&egrave;s avoir d&eacute;fini tout ceci, vous avez besoin d'un
+fichier <filename>/etc/mailertable</filename>. Voici un exemple de ce
+type de fichier&nbsp;:</para>
+<para><programlisting>
+#
+# makemap hash /etc/mailertable.db < /etc/mailertable
+#
+horus.interface-business.de uucp-dom:horus
+.interface-business.de uucp-dom:if-bus
+interface-business.de uucp-dom:if-bus
+.heep.sax.de smtp8:%1
+horus.UUCP uucp-dom:horus
+if-bus.UUCP uucp-dom:if-bus
+. uucp-dom:sax
+</programlisting></para>
+
+<para>Les trois premi&egrave;res lignes font en sorte d'envoyer
+le courrier &agrave; des serveurs UUCP ``voisins'' et non pas au serveur par
+d&eacute;faut, pour permettre de racourcir le temps d'envoi des messages. La
+ligne suivante permet d'envoyer le courrier sur le domaine local en
+protocole SMTP. Et pour finir, les ``voisins'' UUCP sont mentionner
+dans la la notation de domaine .UUCP, permettant au format de mail
+``voisin-uucp!destinataire'' d'&eacute;craser les r&egrave;gles par d&eacute;faut. La
+derni&egrave;re ligne doit toujours &ecirc;tre un ``.'', qui repr&eacute;sente toutes les
+destinations, qui doit correspondre &agrave; un serveur de messagerie UUCP
+voisin, et qui sert de passerelle de courrier &eacute;l&eacute;ctronique vers le
+reste du monde. Tous les noms de noeuds se trouvant apr&egrave;s le mot cl&eacute;
+<filename>uucp-dom:</filename>doivent &ecirc;tre des noms valides de voisins
+UUCP, que vous pouvez v&eacute;rifier en utilisant la commande
+<filename>uuname</filename></para>
+
+<para>Pour vous rappeler que ce fichier doit &ecirc;tre converti en
+fichier DBM pour pouvoir &ecirc;tre utilis&eacute;, la ligne de commande
+n&eacute;cessaire &agrave; sa cr&eacute;ation est rappel&eacute;e dans les commentaires du fichier
+mailertable. Vous devez lancer cette commande &agrave; chaque fois que vous
+changez quelque chose dans ce fichier.</para>
+
+ <para>Pour finir&nbsp;: si vous n'etes pas certain de votre
+configuration d'envoi de messages &eacute;lectroniques, rappellez-vous
+l'option <filename>-bt</filename> de sendmail. Cela lance sendmail en
+<emphasis>mode test</emphasis>&nbsp;; entrez simplement ``0 '' suivi de
+l'adresse que vous voulez tester. La derni&egrave;re ligne vous indiquera
+alors le type d'agent utilis&eacute; pour l'envoi, la machine auquelle
+l'agent enverra le courrier, et l'adresse &agrave; laquelle il l'enverra. Pour
+quitter ce mode tapez Control-D.</para>
+<para><programlisting>
+j@uriah 191% sendmail -bt
+ADDRESS TEST MODE (ruleset 3 NOT automatically invoked)
+Enter &lt;ruleset&gt; &lt;address&gt;
+> 0 foo@interface-business.de
+rewrite: ruleset 0 input: foo @ interface-business . de
+...
+rewrite: ruleset 0 returns: $# uucp-dom $@ if-bus $: foo \
+< @ interface-business . de >
+> ^D
+j@uriah 192%
+</programlisting></para>
+ </sect1>
+
+ <sect1>
+ <title>Comment mettre en oeuvre le courrier &eacute;lectronique avec une connexion temporaire &agrave; un r&eacute;seau&nbsp;?</title>
+
+ <para>Si vous disposez d'un adresse IP statique, vous ne devez rien changer. Definissez juste votre nom de machine pour qu'il corresponde &agrave; votre nom de machine internet et sendmail s'occupera du reste.</para>
+
+ <para>Dans le cas ou vous disposez d'une adresse IP
+dynamiquement assign&eacute;e et que vous utilisez une connection ppp pour
+acc&egrave;der &agrave; l'internet, vous diposez probablement d'une boite aux
+lettres chez votre fournisseur d'acc&egrave;s. Prenons comme exemple que le
+domaine de votre fournisseur soit <filename>monISP.com</filename>, que
+votre nom d'utilisateur soit <filename>monlogin</filename>, que votre nom
+de machine soit <filename>bsd.perso</filename> et que votre
+fournisseur vous aie indiqu&eacute; la machine
+<filename>relai.monISP.com</filename> comme serveur relai de
+messagerie &eacute;lectronique.</para>
+
+ <para>Pour pouvoir recevoir votre courrier depuis votre boite &agrave;
+lettres, vous devez installer un agent de rapatriement de
+mail.<emphasis remap="bf">Fetchmail</emphasis> est un bon choix, car
+il supporte la plupart des protocoles de messagerie. La plupart du
+temps, votre fournisseur offre l'acc&egrave;s &agrave; travers le protocole POP3. Si
+vous avez d&eacute;cid&eacute; d'utiliser la partie utilisateur de ppp, vous pouvez
+automatiquement rapatrier votre courrier lorsque la connexion vers le
+r&eacute;seau est &eacute;tablie en ajoutant la ligne suivante au fichier
+<filename>/etc/ppp/ppp.linkup</filename>&nbsp;:</para>
+<para><programlisting>
+MYADDR:
+!bg su monlogin -c fetchmail
+</programlisting></para>
+
+ <para>Ici nous assumons que vous disposez d'un compte nomm&eacute;
+<filename>monlogin</filename> sur la machine
+<filename>bsd.perso</filename>. Vous devez alors cr&eacute;er un fichier
+<filename>.fetchmailrc</filename> dans votre r&eacute;pertoire principal
+contenant&nbsp;:</para>
+<para><programlisting>
+poll monISP.com protocol pop3 fetchall pass monPasswd:
+</programlisting></para>
+
+ <para>Naturellement, ce fichier ne doit &ecirc;tre lisible que par
+l'utilisateur <filename>monlogin</filename> car il contient le mot de
+passe <filename>monPasswd</filename>.</para>
+
+ <para>Pour permettre d'envoyer du courrier avec l'ent&ecirc;te
+<emphasis remap="bf">from:</emphasis> correcte, vous devez configurer
+sendmail pour utiliser l'adresse
+<filename>monlogin@monISP.com</filename> plut&ocirc;t que
+<filename>monlogin@bsd.perso</filename>. Vous devez aussi dire &agrave; votre
+sendmail d'envoyer tout le courrier via le serveur
+<filename>relai.monISP.com</filename>, permettant au courrier
+d'&ecirc;tre envoy&eacute; plus rapidement.</para>
+
+<para>Le fichier de configuration <filename>.mc</filename> suivant doit convenir&nbsp;:</para>
+<para><programlisting>
+VERSIONID(`bsd.perso.mc version 1.0')
+OSTYPE(bsd4.4)dnl
+FEATURE(nouucp)dnl
+MAILER(local)dnl
+MAILER(smtp)dnl
+Cwlocalhost
+Cwbsd.perso
+MASQUERADE_AS(`monISP.com')dnl
+FEATURE(allmasquerade)dnl
+FEATURE(masquerade_envelope)dnl
+FEATURE(nocanonify)dnl
+FEATURE(nodns)dnl
+define(SMART_HOST, `relai.monISP.com')
+Dmbsd.perso
+define(`confDOMAIN_NAME',`bsd.perso')dnl
+define(`confDELIVERY_MODE',`deferred')dnl
+</programlisting></para>
+
+ <para>Ref&eacute;rez-vous &agrave; la section pr&eacute;c&eacute;dente pour l'explication
+d&eacute;taill&eacute;e de conversion du fichier <filename>.mc</filename>en fichier
+<filename>sendmail.cf</filename>. N'oubliez pas non plus de red&eacute;marrer
+sendmail apr&egrave;s avoir modifi&eacute; le fichier
+<filename>/etc/sendmail.cf</filename></para>
+
+ </sect1>
+
+ <sect1>
+ <title>Horreur&nbsp;!! J'ai perdu le mot de passe de root&nbsp;!! </title>
+
+ <para>Ne paniquez pas! Red&eacute;marrez tout simplement le syst&egrave;me en
+tapant -s au "prompt" Boot: pour passer en mode mono-utilisateur. A la
+question sur le shell &agrave; utiliser, appuyez sur ENTREE. Vous obtiendrez
+alors un prompt "#". Tapez la commande <filename>mount -u</filename>
+pour remonter votre partition primaire en lecture/&eacute;criture et lancez
+la commande <filename>mount -a</filename> pour remonter tous les
+syst&egrave;mes de fichiers. Tapez <filename>passwd root</filename> pour
+changer le mot de passe root puis tapez <filename>exit</filename> pour
+continuer le processus de d&eacute;marrage du syst&egrave;me.</para>
+
+ </sect1>
+
+ <sect1>
+ <title>Comment emp&egrave;cher le red&eacute;marrage du syst&egrave;me en appuyant sur les touches Control-Alt-Delete&nbsp;?</title>
+ <para>Editez le fichier de configuration du clavier que vous
+utilisez pour la console et remplacez le mot cl&eacute;
+<filename>boot</filename> par <filename>nop</filename>. Le fichier de
+configuration du clavier utilis&eacute; par d&eacute;faut est
+<filename>/usr/share/syscons/keymaps/us.iso.kbd</filename>. Vous
+pouvez changer la configuration en &eacute;ditant le fichier
+<filename>/etc/rc.conf</filename>. Bien sur si vous utilisez une autre
+configuration, il faut &eacute;diter le fichier de configuration la
+d&eacute;crivant.</para>
+ </sect1>
+
+ <sect1>
+ <title>Comment transformer les fichiers textes au format DOS en fichiers UNIX&nbsp;?</title>
+
+ <para>Utilisez tout simplement la commande perl suivante&nbsp;:</para>
+
+ <para><programlisting>
+perl -i.bak -pe 's/\r\n/\n/g' fichier.dos ...
+</programlisting></para>
+
+ <para>fichier.dos &eacute;tant le fichier &agrave; modifier. Cette commande
+remplace dans le fichier et sauvegarde l'ancien sous le nom
+<filename>fichier.dos.bak</filename>.</para>
+
+ </sect1>
+
+ <sect1>
+ <title>Comment tuer un processus par son nom&nbsp;?</title>
+ <para>Utilisez <ulink url="/cgi/cvsweb.cgi/man.cgi?killall">killall(1)</ulink></para>
+ </sect1>
+
+ <sect1>
+ <title>Pourquoi la commande <filename>su</filename> me dit sans arr&ecirc;t que je ne suis pas dans les ACL de root&nbsp;?</title>
+
+ <para>Cette erreur vient du syst&egrave;me d'authentification distribu&eacute;
+Kerberos. Ceci n'est pas un probl&egrave;me tr&egrave;s grave. Un palliatif consiste
+&agrave; utiliser l'option "-k" de su ou de d&eacute;sinstaller Kerberos comme
+expliqu&eacute; &agrave; la section suivante.</para>
+
+ </sect1>
+
+ <sect1>
+ <title>Comment d&eacute;sinstaller Kerberos&nbsp;?</title>
+ <para>Pour d&eacute;sinstaller Kerberos de votre syst&egrave;me, vous devez
+r&eacute;installer la distribution <filename>bin</filename> depuis votre
+version de FreeBSD. Si vous disposez d'un CDROM, vous devez monter le
+cd (la plupart du temps dans /cdrom) et lancer&nbsp;:</para>
+
+<para><programlisting>
+cd /cdrom/bin
+./install.sh
+</programlisting></para>
+ </sect1>
+ <sect1>
+ <title>Comment ajouter des pseudo-terminaux au syst&egrave;me&nbsp;?</title>
+
+ <para>Si vous avez un grand nombre de telnet, ssh, X, or screen users,
+ vous risquez probablement de manquer de pseudo-terminaux.
+ Voici comment en ajouter plusieurs&nbsp;:</para>
+
+ <orderedlist>
+ <listitem><para>Cr&eacute;er et installer un nouveau noyau avec la ligne</para>
+
+ <programlisting>
+ pseudo-device pty 256
+ </programlisting>
+
+ <para>dans le fichier de configuration.</para></listitem>
+
+ <listitem><para>Ex&eacute;cuter la commande&nbsp;:</para>
+
+ <programlisting>
+ # cd /dev
+ # ./MAKEDEV pty{1,2,3,4,5,6,7}
+ </programlisting>
+
+ <para>pour cr&eacute;er 256 device nodes pour les nouveaux terminaux.</para></listitem>
+
+ <listitem><para>Editer <filename>/etc/ttys</filename> et
+ jouter une ligne pour chacun des 256 terminaux.
+ Elles doivent correspondre &agrave; la forme des entr&eacute;es existantes.
+ c'est &agrave; dire ressembler &agrave; :</para>
+
+ <programlisting>
+ ttyqc none network
+ </programlisting>
+
+ <para>L'ordre des lettres de d&eacute;signation est
+ <filename>tty[pqrsPQRS][0-9a-v]</filename>,
+ en utilisant une expression r&eacute;guli&egrave;re. </para></listitem>
+
+ <listitem><para>D&eacute;marrez le syst&egrave;me avec le nouveau noyau
+ et vous &ecirc;tes pr&ecirc;ts &agrave; travailler.</para></listitem>
+ </orderedlist>
+
+
+ </sect1>
+
+</chapter>
+
diff --git a/fr_FR.ISO8859-1/books/faq/applications.sgml b/fr_FR.ISO8859-1/books/faq/applications.sgml
new file mode 100644
index 0000000000..ce9f6f1dcd
--- /dev/null
+++ b/fr_FR.ISO8859-1/books/faq/applications.sgml
@@ -0,0 +1,149 @@
+<!--
+ The FreeBSD Documentation Project
+ The FreeBSD French Documentation Project
+
+ $FreeBSD$
+ Original revision: n.nn
+-->
+
+<chapter id="applications">
+ <title>Applications</title>
+
+ <sect1>
+ <title>Ou puis-je trouver toutes les applications utilisateurs?</title>
+
+ <para>Allez voir sur la <ulink url="../handbook/ports.html"> page des
+ports</ulink> pour plus d'informations sur les packages port&eacute;s sur
+FreeBSD. La liste compl&egrave;te inclut plus de 1000 ports, et grossit chaque
+jours, donc v&eacute;rifiez souvent cette liste, ou souscrivez &agrave; la mailing
+liste <ulink url="freebsd-announce"> freebsd-announce </ulink> pour
+vous tenir au courant des mises &agrave; jour.</para>
+
+ <para>La plupart des ports sont disponibles pour la branche 2.2
+et 3.0, et la plupart d'entre eux sont susceptibles de fonctionner sur
+des syst&egrave;mes 2.1.x. A chaque fois qu'une version de FreeBSD est
+livr&eacute;e, une version des ports, au moment de la livraison de la
+version, est incluse dans le r&eacute;pertoire <filename> ports
+</filename>.</para>
+
+ <para>FreeBSD supporte aussi le concept de ``package'', qui
+n'est rien de plus qu'une distribution binaire compress&eacute;e avec
+quelques informations en plus, permettant de l'installer tr&egrave;s
+simplement. Un ``package'' peut &ecirc;tre install&eacute; et d&eacute;sinstall&eacute;
+facilement, sans avoir besoin de savoir les d&eacute;tails sur les fichiers
+qu'il inclut.</para>
+
+ <para>Il vous suffit d'utiliser le menu d'installation des
+``package'' du programme <filename> /stand/sysinstall </filename> ou
+servez vous de la commande <emphasis> pkg_add(1) </emphasis> pour
+installer les ``packages'' que vous d&eacute;sirez. Les fichiers des
+``packages'' sont tr&egrave;s simple &agrave; identifi&eacute;s de part leur suffixe
+<emphasis> .tgz </emphasis>. Les personnes disposant d'une
+distribution sur CDROM les trouveront dans le r&eacute;pertoire <filename>
+packages/All </filename>. Ils sont aussi disponibles sur ces
+diff&eacute;rents serveurs ftp:
+<itemizedlist>
+ <listitem>
+ <para>Pour les versions 2.1.x-release: <ulink
+url="ftp://ftp.FreeBSD.ORG/pub/FreeBSD/packages-2.1.7/">ftp://ftp.FreeBSD.ORG/pub/FreeBSD/packages-2.1.7/</ulink></para>
+ </listitem>
+ <listitem>
+ <para>Pour les versions 2.2.6-release/2.2.-stable: <ulink
+url="ftp://ftp.FreeBSD.ORG/pub/FreeBSD/packages-2.2.6/">ftp://ftp.FreeBSD.ORG/pub/FreeBSD/packages-2.2.6/</ulink></para>
+ </listitem>
+ <listitem>
+ <para>Pour la version 3.0-current: <ulink
+url="ftp://ftp.FreeBSD.ORG/pub/FreeBSD/packages-3.0/">ftp://ftp.FreeBSD.ORG/pub/FreeBSD/packages-3.0/</ulink></para>
+ </listitem>
+
+ </itemizedlist> ou sur un site mirroir.</para>
+
+ <para>Notez, que tous les ports ne sont pas obligatoirement
+disponibles sous forme de ``package''. C'est une bonne id&eacute;e de
+v&eacute;rifier r&eacute;guli&egrave;rement la disponibilit&eacute; des diff&eacute;rents packages sur le
+<ulink url="ftp://ftp.freebsd.org/pub/FreeBSD/">site principal de
+FreeBSD</ulink></para>
+
+ </sect1>
+
+ <sect1>
+ <title>Ou trouver la librairie libc.so.3.0?</title>
+ <para>Cela veut dire que vous essayez d'utiliser un ``package''
+compil&eacute; pour des versions 2.2/3.0 sur un syst&egrave;me 2.1.x. Voyez la
+section pr&eacute;cedente et retrouvez le port/package correct pour votre
+syst&egrave;me.</para>
+
+ </sect1>
+
+ <sect1>
+ <title> ghostscript m'affiche &eacute;norm&eacute;ment d'erreurs sur mon 386/486SX. <anchor id="emul"> </title>
+
+ <para> Vous n'avez pas de coprocesseur math&eacute;matique, n'est-ce pas ? Vous
+devez absolument compiler l'&eacute;mulateur math&eacute;matique fournit dans votre
+noyau; il vous suffit d'ajouter la ligne suivante dans votre fichier
+de configuration du noyau: <programlisting> options GPL_MATH_EMULATE
+</programlisting></para>
+
+ <para>NOTE: Vous devez retirer la ligne contenant l'option
+<filename> MATH&lowbar;EMULATE </filename> si vous activez la
+pr&eacute;c&eacute;dente.</para>
+
+ </sect1>
+
+ <sect1>
+ <title>Lorsque je lance des applications SCO/iBCS2, elles plantent sur <filename> socksys </filename> </title>
+
+ <para> Vous devez en tout premier &eacute;diter le fichier <filename>
+/etc/sysconfig </filename> (ou <ulink
+url="http://www.freebsd.org/cgi/man.cgi?rc.conf(5)"> /etc/rc.conf
+</ulink>) et positionner la variable suivante sur <emphasis
+remap="bf"> YES </emphasis>:
+<programlisting>
+# &agrave; positionner sur YES si vous voulez que l'&eacute;mulation ibcs2(SCO) soit charg&eacute;e au d&eacute;marrage
+ibcs2=NO
+</programlisting></para>
+
+ <para>Cela activera le module <ulink
+url="http://www.freebsd.org/cgi/man.cgi?ibcs2"> ibcs2 </ulink> au
+d&eacute;marrage.</para>
+
+ <para>Vous devrez aussi cr&eacute;er le r&eacute;pertoire <filename>
+/compat/ibcs2/dev </filename> et mettre en place ce qui suit :
+
+<programlisting>
+lrwxr-xr-x 1 root wheel 9 Oct 15 22:20 X0R@ -> /dev/null
+lrwxr-xr-x 1 root wheel 7 Oct 15 22:20 nfsd@ -> socksys
+-rw-rw-r-- 1 root wheel 0 Oct 28 12:02 null
+lrwxr-xr-x 1 root wheel 9 Oct 15 22:20 socksys@ -> /dev/null
+crw-rw-rw- 1 root wheel 41, 1 Oct 15 22:14 spx
+</programlisting></para>
+
+ <para>Il suffit de faire pointer socksys vers <ulink
+url="http://www.freebsd.org/cgi/man.cgi?null(4)"> /dev/null </ulink>
+pour tromper les open &amp; close. Le code, dans la version -current,
+fera le reste. Si vous avez besoin du driver <filename> spx
+</filename> pour la connection d'une socket X, d&eacute;finissez <filename>
+SPX&lowbar;HACK </filename> lors de la compilation de votre
+syst&egrave;me.</para>
+
+ </sect1>
+
+ <sect1>
+ <title>Comment dois-je configurer INN (Internet News) pour mon syst&egrave;me ?</title>
+
+ <para>Apr&egrave;s avoir install&eacute; le package ou le port de inn, la
+meilleur fa&ccedil;on de commencer est de voir la page de <ulink
+url="http://www.eerie.fr/~news/">Fabien TASSIN</ulink>
+sur INN, ou vous trouverez la FAQ de INN.</para>
+ </sect1>
+
+ <sect1>
+ <title>Quelle version de Microsoft FrontPage dois-je utiliser ?</title>
+
+ <para>Utilisez les ports ! Une pr&eacute;-version patch&eacute;e pour Apache est
+disponible dans les ports</para>
+ </sect1>
+
+</chapter>
+
+
diff --git a/fr_FR.ISO8859-1/books/faq/book.sgml b/fr_FR.ISO8859-1/books/faq/book.sgml
new file mode 100644
index 0000000000..df5c82ddf9
--- /dev/null
+++ b/fr_FR.ISO8859-1/books/faq/book.sgml
@@ -0,0 +1,93 @@
+<!--
+ The FreeBSD Documentation Project
+ The FreeBSD French Documentation Project
+
+ $FreeBSD$
+ Original revision: n.nn
+-->
+
+<!DOCTYPE book PUBLIC "-//FreeBSD//DTD DocBook V3.1-Based Extension//EN" [
+
+<!ENTITY % urls PUBLIC "-//FreeBSD//ENTITIES Common Document URL Entities//FR">
+%urls;
+
+<!ENTITY % includes SYSTEM "includes.sgml"> %includes;
+<!ENTITY preface SYSTEM "preface.sgml">
+<!ENTITY install SYSTEM "install.sgml">
+<!ENTITY hardware SYSTEM "hardware.sgml">
+<!ENTITY troubleshoot SYSTEM "troubleshoot.sgml">
+<!ENTITY commercial SYSTEM "commercial.sgml">
+<!ENTITY applications SYSTEM "applications.sgml">
+<!ENTITY kernelconfig SYSTEM "kernelconfig.sgml">
+<!ENTITY admin SYSTEM "admin.sgml">
+<!ENTITY x SYSTEM "x.sgml">
+<!ENTITY network SYSTEM "network.sgml">
+<!ENTITY serial SYSTEM "serial.sgml">
+<!ENTITY misc SYSTEM "misc.sgml">
+<!ENTITY hackers SYSTEM "hackers.sgml">
+<!ENTITY acknowledgments SYSTEM "acknowledgments.sgml">
+]>
+
+<book id="FAQ" lang="fr">
+ <title>Questions Fr&eacute;quemment Pos&eacute;es sur FreeBSD 2.X</title>
+ <bookinfo>
+ <bookbiblio>
+ <authorgroup>
+ <author >
+ <firstname>S&eacute;bastien</firstname>
+ <surname>GIORIA</surname>
+ <affiliation>
+ <address>
+ <email>gioria@francenet.fr</email>
+ </address>
+ </affiliation>
+ </author>
+ <author >
+ <firstname>Tuyet Tram</firstname>
+ <surname>DANG NGOC</surname>
+ <affiliation>
+ <address>
+ <email>dntt@prism.uvsq.fr</email>
+ </address>
+ </affiliation>
+ </author>
+ </authorgroup>
+ <date>Septembre - D&eacute;cembre 1998</date>
+
+ </bookbiblio>
+ <legalnotice>
+ <para>
+Ceci est la FAQ pour les versions de FreeBSD 2.X. Toutes les entr&eacute;es sont
+relatives &agrave; FreeBSD 2.05 et les versions ult&eacute;rieures.Toutes
+les entr&eacute;es finissant avec &lt;XXX&gt; sont en cours de
+construction. Si vous &ecirc;tes int&eacute;ress&eacute; par ce projet,
+envoyez un email sur la "mailing-list" : <ulink
+url="mailto:freebsd-france@freebsd.francenet.fr">freebsd-france@freebsd.francenet.fr</ulink>.
+La derni&egrave;re version de ce document est disponible en anglais &agrave;
+l'adresse suivante : <ulink url="http://www.fr.FreeBSD.ORG/"> FreeBSD
+World Wide Web server </ulink>. Ce document est &eacute;galement disponible
+en format <ulink url="FAQ.txt">texte</ulink> et en format
+<ulink url="FAQ.ps">postscript</ulink>
+
+ </para>
+<para><emphasis remap="bf">Nous recherchons des relecteurs pour la correction de cette FAQ</emphasis>.
+
+</para>
+ </legalnotice>
+ </bookinfo>
+ &preface;
+ &install;
+ &hardware;
+&troubleshoot;
+&commercial;
+&applications;
+&kernelconfig;
+&admin;
+&x;
+&network;
+&serial;
+&misc;
+&hackers;
+&acknowledgments;
+
+</book>
diff --git a/fr_FR.ISO8859-1/books/faq/commercial.sgml b/fr_FR.ISO8859-1/books/faq/commercial.sgml
new file mode 100644
index 0000000000..204779a5c5
--- /dev/null
+++ b/fr_FR.ISO8859-1/books/faq/commercial.sgml
@@ -0,0 +1,254 @@
+<!--
+ The FreeBSD Documentation Project
+ The FreeBSD French Documentation Project
+
+ $FreeBSD$
+ Original revision: 1.4
+-->
+
+ <chapter id="commercial">
+ <title> Applications commerciales</title>
+ <para>
+NOTE :
+Cette section est encore tr&egrave;s clairsem&eacute;e, car nous esp&eacute;rons
+naturellement, que les industries y contribueront :-)
+L'organisation FreeBSD n'a aucun int&eacute;r&ecirc;t financier dans aucune des
+soci&eacute;t&eacute;s &eacute;num&eacute;r&eacute;es ici, mais les liste simplement comme service public
+(et estime que l'int&eacute;r&ecirc;t commercial dans FreeBSD peut avoir des effets
+tr&egrave;s positifs sur la viabilit&eacute; &agrave; long terme de FreeBSD).
+Nous encourageons les constructeurs de logiciel commerciaux
+&agrave; envoyer leurs r&eacute;f&eacute;rences ici pour inclusion. Voir
+<ulink url="http://www.fr.freebsd.org/commercial/commercial.html"> les pages des constructeurs </ulink>
+pour une liste plus compl&egrave;te.
+ </para>
+
+ <sect1>
+ <title> O&ugrave; puis je obtenir Motif pour FreeBSD ? </title>
+ <para>
+Contactez <ulink url="http://www.apps2go.com">Apps2go</ulink> pour une distribution ELF
+Motif 2.1 pour FreeBSD.
+ </para>
+
+ <para>
+Cette distribution comprend :
+ <itemizedlist>
+ <listitem><para>
+OSF/Motif manager, xmbind, panner, wsm.
+ </para></listitem>
+
+ <listitem><para>
+Les librairies ELF statiques et dynamiques (utilisables avec FreeBSD
+3.0 et sup&eacute;rieur).
+
+ </para></listitem>
+
+ <listitem><para>
+Kit de d&eacute;veloppement avec les fichiers
+uil, mrm, xm, xmcxx, include et Imake.
+ </para></listitem>
+
+ <listitem><para>
+Des applications de d&eacute;monstration.
+ </para></listitem>
+
+ </itemizedlist>
+ </para>
+
+ <para>
+Soyez s&ucirc;r d'indiquer que vous voulez la version de FreeBSD de Motif
+lors de la commande ! Des versions pour NetBSD et OpenBSD sont &eacute;galement
+vendues par <emphasis remap="apps2go">Apps2go</emphasis>. Vous avez
+actuellement juste la possiblit&eacute; de t&eacute;l&eacute;charger en FTP.
+<programlisting>
+ Pour plus d'informations
+ <ulink url="http://www.apps2go.com/">Serveur WWW de Apps2go </ulink>
+
+ Ou les addresse de messageries du d&eacute;partement des <ulink
+ url="mailto:sales@apps2go.com">ventes </ulink> ou encore
+ du <ulink url="mailto:support@apps2go.com">support </ulink>
+
+ T&eacute;l: (817) 431 8775 ou +1 817 431-8775
+ </programlisting>
+
+ </para>
+
+ <para>
+Contactez <ulink url="http://www.metrox.com">Metro Link</ulink> pour
+une distribution a.out ou ELF Motif 2.1 pour FreeBSD.
+ </para>
+
+ <para>
+Cette distribution comprend :
+ <itemizedlist>
+ <listitem><para>
+OSF/Motif manager, xmbind, panner, wsm.
+ </para></listitem>
+
+ <listitem><para>
+Kit de d&eacute;veloppement avec les fichiers
+uil, mrm, xm, xmcxx, include et Imake.
+ </para></listitem>
+
+ <listitem><para>
+Les librairies a.out et ELF statiques et dynamiques (utilisables avec FreeBSD
+3.0 et sup&eacute;rieur pour les librairies ELF et 2.2.8 et sup&eacute;rieur pour
+les librairies a.out ).
+
+ </para></listitem>
+
+ <listitem><para>
+Des applications de d&eacute;monstration.
+ </para></listitem>
+
+ <listitem><para>
+Les pages de manuel pr&eacute;formatt&eacute;es
+ </para></listitem>
+
+ </itemizedlist>
+ </para>
+
+ <para>
+Soyez s&ucirc;r d'indiquer que vous voulez la version de FreeBSD de Motif
+lors de la commande ! Des versions pour Linux sont &eacute;galement
+vendues par <emphasis remap="metrox">Metro Link</emphasis>. La
+distribution est disponible par t&eacute;l&eacute;chargement FTP ou sur un CDROM.</para>
+
+ <para>
+Contactez <ulink url="http://www.xig.com">Xi Graphics</ulink> pour une distribution a.out
+Motif 2.0 pour FreeBSD.
+ </para>
+
+ <para>
+Cette distribution comprend :
+ <itemizedlist>
+ <listitem><para>
+OSF/Motif manager, xmbind, panner, wsm.
+ </para></listitem>
+
+ <listitem><para>
+Les librairies a.out statiques et dynamiques (utilisables avec FreeBSD
+2.2.8 et sup&eacute;rieur).
+
+ </para></listitem>
+
+ <listitem><para>
+Kit de d&eacute;veloppement avec les fichiers
+uil, mrm, xm, xmcxx, include et Imake.
+ </para></listitem>
+
+ <listitem><para>
+Des applications de d&eacute;monstration.
+ </para></listitem>
+
+ <listitem><para>
+Les pages de manuel pr&eacute;formatt&eacute;es
+ </para></listitem>
+
+ </itemizedlist>
+ </para>
+
+ <para>
+Soyez s&ucirc;r d'indiquer que vous voulez la version de FreeBSD de Motif
+lors de la commande ! Des versions pour BSDI et Linux sont &eacute;galement
+vendues par <emphasis remap="xig">Xi Graphics</emphasis>. La
+distribution comprend actuellement 4 disquettes. Dans le futur il y
+aura un CD comme pour CDE.</para>
+
+ </sect1>
+
+ <sect1>
+ <title> O&ugrave; puis-je avoir CDE pour FreeBSD? </title>
+ <para>
+Contactez <ulink url="http://www.xig.com">Xi Graphics</ulink> pour une distribution
+CDE 1.0.10 pour FreeBSD. Cela inclut Motif 1.2.5, et peut &ecirc;tre utilis&eacute;
+avec Motif 2.0.
+ </para>
+
+ <para>
+C'est une distribution CDROM uniforme pour FreeBSD et Linux.
+ </para>
+ </sect1>
+
+ <sect1>
+ <title> Y a-t-il des serveurs X commerciaux haute-performance ?<!-- <label id="xig"> --> </title>
+
+ <para>
+Oui,
+<ulink url="http://www.xig.com"> Xi Graphics </ulink> et <ulink
+url="http://www.metrolink.com">Metro Link</ulink>
+vendent leur produit Accelerated-X pour FreeBSD et autres syst&egrave;mes
+bas&eacute;s sur Intel.
+ </para>
+ <para>Le serveur X de Metro Link offre une configuration facile
+ grace a l'utilisation des outils de gestion des packages de FreeBSD,
+supporte de multiples cartes vid&eacute;os et est distribu&eacute;
+en forme binaire seulement, par FTP. N'oublions pas de mentionner que
+Metro Link offre se serveur a un prix raisonnable de 39$.
+ </para>
+
+ <para>Metro Link vend aussi une version ELF et a.out de Motif
+ (voir ci-dessus).</para>
+
+<para><programlisting>
+ Pour plus d'informations
+ <ulink url="http://www.metrolink.com/">Serveur WWW de Metro Link </ulink>
+
+ Ou les addresse de messageries du d&eacute;partement des <ulink
+ url="mailto:sales@metrolink.com">ventes </ulink> ou encore
+ du <ulink url="mailto:tech@metrolink.com">support </ulink>
+
+ T&eacute;l: (954) 938-0283 or +1 954 938-0283
+ </programlisting>
+</para>
+
+<para>
+<ulink url="http://www.xig.com"> Xi Graphics</ulink> offre un serveur X haute
+performances comportant une facilit&eacute; de configuration et supportant
+des cartes vid&eacute;os multiples. La distribution est sous forme binaire,
+et est au format disquette pour FreeBSD et Linux. Xi Graphics offre
+aussi un serveur haute performances pour les portables.</para>
+
+ <para>
+Il y a une "d&eacute;mo de compatibilit&eacute;" disponible et gratuite de la
+version 5.0.
+ </para>
+
+ <para>
+Xi Graphics vends aussi Motif et CDE pour FreeBSD (voir ci-dessus).
+ </para>
+
+ <para>
+<programlisting>
+Pour plus d'informations :
+<ulink url="http://www.xig.com/"> Xi Graphics WWW page </ulink>
+ou par courrier &eacute;lectronique aux adresses suivantes :
+<ulink url="mailto:sales@xig.com"> Ventes </ulink>
+ou
+<ulink url="mailto:support@xig.com"> Support </ulink>
+ou encore par t&eacute;l&eacute;phone au
+(800) 946 7433 ou +1 303 298-7478.
+</programlisting>
+ </para>
+ </sect1>
+
+ <sect1>
+ <title> Y a-t-il un syst&egrave;me de bases de donn&eacute;es pour FreeBSD? </title>
+ <para>
+Oui ! Conetic Software Systems a port&eacute; leur syst&egrave;me de
+bases de donn&eacute;es C/base and C/books pour FreeBSD 2.0.5 et plus,
+et Sleepycat Software vend une version commerciale support&eacute;e de leur
+librairie de base de donn&eacute;es DB.
+ </para>
+
+ <para>
+Pour plus d'informations :
+<ulink url="http://www.conetic.com/"> Conetic Software Systems </ulink>
+
+ou envoyez un courrier &eacute;lectronique &agrave;
+<ulink url="mailto:info@conetic.com"> Information E-mail address </ulink>
+et
+<ulink url="http://www.sleepycat.com/"> Sleepycat Software </ulink>
+ </para>
+ </sect1>
+ </chapter>
+
diff --git a/fr_FR.ISO8859-1/books/faq/hackers.sgml b/fr_FR.ISO8859-1/books/faq/hackers.sgml
new file mode 100644
index 0000000000..a783be2f81
--- /dev/null
+++ b/fr_FR.ISO8859-1/books/faq/hackers.sgml
@@ -0,0 +1,299 @@
+<!--
+ The FreeBSD Documentation Project
+ The FreeBSD French Documentation Project
+
+ $FreeBSD$
+ Original revision: n.nn
+-->
+
+ <chapter id="hackers">
+ <title>Pour les passionn&eacute;s</title>
+
+ <sect1>
+ <title>Que sont les SNAP et RELEASE</title>
+
+ <para>Il y a actuellement 3 branches actives/semi-actives dans
+<ulink url="http://www.freebsd.org/cgi/cvsweb.cgi">l'entrepot
+CVS</ulink> des sources de FreeBSD:
+<itemizedlist>
+ <listitem>
+ <para>RELENG_2_1_0 encore appel&eacute;e 2.1-stable ou branche 2.1</para>
+ </listitem>
+ <listitem>
+ <para>RELENG_2_2 encore appel&eacute;e 2.2-stable ou branche
+2.2</para>
+ </listitem>
+ <listitem>
+ <para>HEAD encore appel&eacute;e -current ou 3.0-current</para>
+ </listitem>
+ </itemizedlist></para>
+
+ <para>HEAD n'est pas vraiment une branche, compar&eacute;e aux deux
+autres, c'est juste une valeur symbolique constante pour d&eacute;signer
+le r&eacute;pertoire de la version courante(ou version de d&eacute;veloppement), auquel
+nous nous r&eacute;f&eacute;rerons sous le nom de -current.</para>
+
+ <para>Actuellement -current est la branche de d&eacute;veloppement de
+la version 3.0 r&eacute;sultant de la s&eacute;paration de la branche 2.2-stable(RELENG_2_2)
+en Novembre 1996.</para>
+
+ <para>La branche 2.1-stable, RELENG_2_1_0, s'&eacute;tant s&eacute;par&eacute;e de
+-current en Septembre 1994.</para>
+ </sect1>
+
+ <sect1>
+ <title>Comment cr&eacute;er ma propre version</title>
+
+ <para>Pour cr&eacute;er votre propre version, vous devez effectuer trois
+choses. Premi&egrave;rement, vous devez avoir un noyau contenant le
+gestionnaire <ulink
+url="http://www.freebsd.org/cgi/man.cgi?vn">vn</ulink>. Ajoutez la
+ligne suivante au fichier de configuration du noyau, puis reconstruisez le.</para>
+
+
+<programlisting>
+ pseudo-device vn #Vnode driver (turns a file into a device)
+</programlisting>
+
+ <para>Ensuite, vous devez disposer de l'arbre CVS au
+complet. Pour l'obtenir, vous pouvez utiliser <ulink
+url="../handbook/synching.html">CVSUP</ulink> et remplissez votre fichier
+de configuration de cvsup de la fa&ccedil;on suivante:</para>
+
+<programlisting>
+*default prefix=/home/ncvs
+*default base=/a
+*default host=cvsup.FreeBSD.org
+*default release=cvs
+*default delete compress use-rel-suffix
+
+## Main Source Tree
+src-all
+src-eBones
+src-secure
+
+# Other stuff
+ports-all
+www
+doc-all
+</programlisting>
+
+ <para>Ensuite lancez la commande <filename>cvsup -g
+fichier_de_configuration_de_cvsup</filename> pour rapatrier tous les
+sources sur votre machine</para>
+
+ <para>Pour finir, vous devez disposez de beaucoup de place sur
+vos disque pour compiler le tout. Disons que cela se trouve dans le
+r&eacute;pertoire <filename>/tres/gros/systeme/de/fichiers</filename> et que
+l'arbre CVS se trouve dans <filename>/home/ncvs</filename></para>
+
+
+<programlisting>
+setenv CVSROOT /home/ncvs # ou export CVSROOT=/hom/ncvs (pour du sh)
+cd /usr/src/release
+make release
+BUILDNAME=3.0-MY-SNAP CHROOTDIR=/tres/gros/systeme/de/fichiers
+</programlisting>
+
+ <para>Une distribution compl&egrave;te sera alors cr&eacute;e dans le
+r&eacute;pertoire <filename>/tres/gros/systeme/de/fichiers</filename> et vous
+disposerez d'un programme d'installation ftp utilisant ce r&eacute;pertoire
+par d&eacute;faut. Vous pouvez aussi d&eacute;cider de compiler autre chose que la version -current
+en donnant au param&egrave;tre <filename>RELEASETAG</filename> une autre
+valeur. Par exemple pour compiler une version 2.2, il suffit de passer
+la valeur <filename>RELEASETAG=RELENG_2_2</filename> &agrave; la ligne de
+commande de make.</para>
+
+ </sect1>
+
+ <sect1>
+ <title>Comment cr&eacute;er une disquette d'installation personnalis&eacute;e?</title>
+
+ <para>Le processus de cr&eacute;ation, des disquettes d'installation
+ainsi que des archives binaires, est automatis&eacute; par diff&eacute;rentes cibles
+dans le fichier <filename>/usr/src/release/Makefile</filename>. Ce
+fichier doit etre votre point de d&eacute;part pour plus d'informations. Bien sur,
+cela veut dire que vous devrez faire un <quote>make world</quote> et
+que cela demande beaucoup d'espace disque et de temps.</para>
+
+ </sect1>
+
+ <sect1>
+ <title><quote>make world</quote> remplace-t-il tous les binaires d&eacute;ja install&eacute;s?</title>
+
+ <para>Oui.Comme son nom le sugg&egrave;re,<quote>make world</quote>
+recompile tout le syst&egrave;me depuis les sources, donc vous pouvez etre
+sur d'avoir un syst&egrave;me sain et coh&eacute;rent &agrave; la fin (cela peut prendre
+&eacute;norm&eacute;ment de temps pour y arriver).</para>
+
+ <para>Si la variable <filename>DESTDIR</filename> est d&eacute;finie
+lorsque vous &eacute;xecutez <quote>make world</quote> ou <quote>make
+install</quote>, les binaires seront install&eacute;s dans la m&ecirc;me
+arborescence que votre syst&egrave;me sauf que la racine du nouveau syst&egrave;me
+sera <filename>&dollar;&lcub;DESTDIR&rcub;</filename>. Diff&eacute;rentes
+combinations dans la modification des librairies partag&eacute;es et dans les
+programmes, peut entrainer une erreur du <quote>make
+world</quote>.</para>
+
+ </sect1>
+ <sect1>
+ <title>Lorsque le syst&egrave;me d&eacute;marre, il affiche <quote>(bus speed defaulted)</quote></title>
+ <para>Les cartes SCSI Adaptec 1542 permettent d'acc&eacute;der &agrave; la
+configuration de la vitesse du bus par logiciel. Les anciennes
+versions du gestionnaire de p&eacute;riph&eacute;rique 1542 essayaient de d&eacute;terminer
+la vitesse maximale utiliable et de configurer la carte &agrave; cette
+valeur. Nous avons trouv&eacute; que cela pouvait casser certains syst&egrave;mes,
+donc vous devez d&eacute;finir l'option
+<filename>TUNE&lowbar;1542</filename> dans le fichier de configuration
+du noyau, pour que cela soit actif. En l'utilisant sur des syst&egrave;mes ou
+la carte le supporte, cela vous permettra d'avoir une meilleur vitesse
+pour vos disques, mais sur des syst&egrave;me ne le supportant pas vous
+obtiendrez des donn&eacute;es corrompues.</para>
+
+ </sect1>
+
+ <sect1>
+ <title>Puis-je me tenir &agrave; jour par rapport &agrave; -current si j'ai un acc&egrave;s limit&eacute; &agrave; l'Internet?</title>
+ <para>Oui, vous pouvez le faire sans t&eacute;l&eacute;charger l'arbre complet
+des sources en utilisant la fonctionnalit&eacute;e <ulink
+url="../handbook/synching.html">CTM</ulink></para>
+
+ </sect1>
+
+ <sect1>
+ <title>Comment faire pour couper la distribution en fichiers de 240Ko?</title>
+ <para>Les syst&egrave;mes BSD r&eacute;cents diposent d'une option
+<quote><filename>-b</filename></quote> pour vous permettre de d&eacute;couper
+les fichiers binaires en plusieurs parties</para>
+ <para>Voici un exemple, tir&eacute; de
+<filename>/usr/src/Makefile</filename>.</para>
+
+<programlisting>
+bin-tarball:
+ (cd $&lcub;DISTDIR&rcub;; \
+ tar cf - . \
+ gzip --no-name -9 -c | \
+ split -b 240640 - \
+ $&lcub;RELEASEDIR&rcub;/tarballs/bindist/bin_tgz.)
+</programlisting>
+ </sect1>
+ <sect1>
+ <title>J'ai &eacute;crit une extension pour le noyau, comment l'incorporer?</title>
+ <para>Regardez la partie du handbook sur la fa&ccedil;on de <ulink
+url="../handbook/contrib.html">soumettre du code</ulink></para>
+ <para>Et encore merci pour tout.</para>
+ </sect1>
+
+ <sect1>
+ <title>Comment sont d&eacute;tect&eacute;es les cartes plugs and play ISA?</title>
+
+ <para>Contribution de <ulink url="mailto:uhclem@nemesis.lonestar.org">Frank Durda IV</ulink></para>
+
+ <para>Il y a un certains nombres de ports d'entr&eacute;es/sorties sur
+lesquels la plupart des cartes PnP r&eacute;pondent lorsqu'une machine
+interroge le bus ISA. Donc, lorsque la routine de d&eacute;tection PnP
+s'execute, elle interroge les cartes PnP sur ces ports pour savoir
+lesquelles sont pr&eacute;sentes. Dans ce cas toutes les cartes r&eacute;pondent en
+indiquant leur mod&egrave;le et la routine de d&eacute;tection re&ccedil;oit alors une
+valeur qui est soit <quote>oui</quote> soit rien. Au minimum un bit
+est mis &agrave; 1 lors de la r&eacute;ponse. Alors le code de d&eacute;tection peut
+essayer de dialoguer avec les cartes, gra&ccedil;e aux num&eacute;ros de mod&egrave;le de
+cartes (d&eacute;finis par Microsoft/Intel), inf&eacute;rieurs &agrave; X pour leur dire de
+s'arr&eacute;ter. Il v&eacute;rifie alors qu'aucune autre carte ne r&eacute;pond &agrave; la
+question pr&eacute;cedente. Si la r&eacute;ponse est <emphasis>0</emphasis> alors il
+consid&egrave;re qu'aucune carte n'a d'ID au dessus de X. Ensuite il
+interroge le bus pour obtenir la liste des cartes sous
+<quote>X</quote>. S'il en trouve alors il interroge le bus pour avoir
+la liste des celles ayant un ID sup&eacute;rieur &agrave; X-(limit/4). Et r&eacute;p&egrave;te
+ainsi de suite l'algorithme, qui consiste &agrave; diviser l'intervalle de
+recherche par deux. Avec cet algorithme, les cartes seront d&eacute;couvertes
+avec un maximum d'it&eacute;ration de 2^64.</para>
+
+ <para>Les Identifiants de cartes sont cod&eacute;s sur 32 bits + 8 bit
+de checksum. Les 32 premiers bits repr&eacute;sentent le code de la carte
+pour le constructeur de cette carte. Il arrive de trouver plusieurs
+cartes du meme constructeur ayant diff&eacute;rents code de carte. L'id&eacute;e de
+coder sur 32 bits le nom du constructeur serait un peu
+excessif.</para>
+
+ <para>Les 32 bits de poids faibles sont le num&eacute;ro de s&eacute;rie de la
+carte; l'adresse ethernet , ou quelque chose rendant la carte unique
+par ce num&eacute;ro. Le constructeur ne doit jamais produire une deuxi&egrave;me
+carte ayant ce meme num&eacute;ro tout en ayant le meme nombre repr&eacute;sent&eacute; sur
+les 32 premiers bits. Vous pouvez dons avoir plusieurs cartes du meme
+type dans votre ordinateur , et l'ensemble des 64 bits permet de
+rendre chacune unique.</para>
+
+ <para>Les groupes de 32 bits ne peuvent en aucun cas etre tous
+&agrave; z&eacute;ro. Cela permet d'effectuer le <quote>OU</quote> pour afficher les
+bits non nuls lors de la premi&egrave;re recherche dicotomique.</para>
+
+ <para>Lorsque le syst&egrave;me &agrave; d&eacute;tecter toutes les cartes pr&eacute;sentes,
+ils les r&eacute;activent une &agrave; une, et recherche les ressources dont elles
+ont besoin, quels sont les choix possibles pour les interruptions,
+etc. Un <quote>scan</quote> de toutes les cartes est effectu&eacute; pour
+collecter toutes ces informations.</para>
+
+ <para>Cette information est combin&eacute;e avec l'information
+recueillie des fichiers ECU se trouvant sur le disque dur ou dans le
+BIOS. Le support ECU et BIOS du plug-and-play pour le mat&eacute;riel est
+tr&egrave;s simple, et les p&eacute;riph&eacute;rique n'ont pas besoin d'etre vraiment
+PnP. Mais en examinant les informations du BIOS et des fichiers ECU,
+les routines d'interrogations peuvent permettre aux p&eacute;riph&eacute;riques
+PnP <quote>to avoid those devices the probe code cannot
+relocate. </quote></para>
+
+ <para>Alors les p&eacute;riph&eacute;riques PnP sont encore interrog&eacute;s, et
+renvoient leur IRQ, adresse m&eacute;moire, ports d'entr&eacute;e/sorties et
+DMA. Les p&eacute;riph&eacute;riques sont alors activ&eacute;s, en prenant en compte ces
+valeurs, et le reste jusqu'au prochaine red&eacute;marrage du syst&egrave;me. Bien
+sur rien de vous empeche de les retirer, si le mat&eacute;riel le permet
+:-).</para>
+
+ <para>Ceci n'explique pas toute la complexit&eacute; de d&eacute;tection, mais
+c'est une explication simple du processus de d&eacute;tection.</para>
+
+<!-- <p>Microsoft took over some of the primary printer status ports to -->
+<!-- do PnP, on the logic that no boards decoded those addresses for -->
+<!-- the opposing I/O cycles. I found a genuine IBM printer board -->
+<!-- that did decode writes of the status port during the early PnP -->
+<!-- proposal review period, but MS said ``tough''. So they do a -->
+<!-- write to the printer status port for setting addresses, plus that -->
+<!-- use that address + <tt/0x800/, and a third I/O port for reading -->
+<!-- that can be located anywhere between <tt/0x200/ and <tt/0x3ff/. -->
+
+ </sect1>
+ <sect1>
+ <title>Est-ce que FreeBSD va supporter d'autres architectures mat&eacute;rielles?</title>
+
+ <para>Diff&eacute;rentes personnes sont interress&eacute;es sur un support
+multi-architecture pour FreeBSD, et certaines personnes sont en train
+de porter FreeBSD sur la plateforme ALPHA, en coop&eacute;ration avec
+DEC. Pour plus d'informations sur les nouvelles architectures utilisez
+la mailling liste <ulink
+url="mailto:&lt;freebsd-platforms@FreeBSD.ORG&gt;">&lt;freebsd-platforms@FreeBSD.ORG&gt;</ulink>
+</para>
+ </sect1>
+
+ <sect1>
+ <title>J'ai besoin d'un <quote>major number</quote> pour un gestionnaire de p&eacute;riph&eacute;rique que je viens d'&eacute;crire</title>
+ <para>Ceci d&eacute;pend du fait que vous vouliez ou non rendre public ce
+gestionnaire. Si vous le d&eacute;sirez, envoyez nous une copie code source
+du gestionnaire et les modifications n&eacute;cessaires &agrave; apporter au fichier
+<filename>files.i386</filename>, un fichier de configuration et le
+code du fichier <ulink
+url="http://www.freebsd.org/cgi/man.cgi?MAKEDEV">MAKEDEV</ulink>n&eacute;cessaire
+pour cr&eacute;er les fichiers sp&eacute;ciaux dont le gestionnaire &agrave; besoin. Si
+vous ne d&eacute;sirez pas rendre plublic le code, ou si vous ne pouvez pas &agrave;
+cause de certaines restrictions de votre license, alors utilisez le
+<quote>major number</quote> 32 (pour les gestionnaires de type
+caract&egrave;re) et le <quote>major number</quote> 8 (pour les gestionnaires
+de type blocs), qui sont r&eacute;serv&eacute;s &agrave; ce type de chose. Dans les deux
+cas nous sommes interess&eacute;s par votre gestionnaire, discutez &agrave; son
+propos sur la mailling liste <ulink
+url="mailto:&lt;freebsd-hackers@FreeBSD.ORG&gt;">&lt;freebsd-hackers@FreeBSD.ORG&gt;</ulink>.</para>
+
+ </sect1>
+
+ </chapter>
+
diff --git a/fr_FR.ISO8859-1/books/faq/hardware.sgml b/fr_FR.ISO8859-1/books/faq/hardware.sgml
new file mode 100644
index 0000000000..43deb6cabf
--- /dev/null
+++ b/fr_FR.ISO8859-1/books/faq/hardware.sgml
@@ -0,0 +1,478 @@
+<!--
+ The FreeBSD Documentation Project
+ The FreeBSD French Documentation Project
+
+ $FreeBSD$
+ Original revision: 1.15
+-->
+
+<chapter id="hardware">
+ <title>Compatibilit&eacute; mat&eacute;rielle</title>
+
+ <sect1>
+ <title>Quels sont les types de disques durs support&eacute;s par FreeBSD&nbsp;?</title>
+
+ <para>FreeBSD supporte les disques EIDE et SCSI (pour les contr&ocirc;leurs
+ compatibles, voir la section suivante), ainsi que tous les disques
+ utilisant l'interface originale "Western Digital" (MFM, RLL, ESDI
+ et bien s&ucirc;r IDE).
+ Quelques contr&ocirc;leurs ESDI utilisant des interfaces propri&eacute;taires
+ peuvent ne pas marcher: utilisez les interfaces WD1002/3/6/7 et leurs
+ clones.</para>
+ </sect1>
+
+ <sect1>
+ <title>Quels sont les contr&ocirc;leurs SCSI support&eacute;s&nbsp;?</title>
+
+ <para>Voir la liste compl&egrave;te dans le
+ <ulink url="&url.handbook;install.html#INSTALL-HW">Handbook</ulink>.</para>
+ </sect1>
+
+ <sect1>
+ <title>Quels sont les lecteurs CD-ROM support&eacute;s par FreeBSD&nbsp;?</title>
+
+ <para>N'importe quel lecteur SCSI connect&eacute; &agrave; un contr&ocirc;leur support&eacute;
+ est support&eacute;.</para>
+
+ <para>Les interfaces CD-ROM propri&eacute;taires suivantes sont aussi support&eacute;es:
+ <itemizedlist>
+ <listitem><para>Mitsumi LU002 (8bit), LU005 (16 bits) et FX001D
+ (16 bits double vitesse).</para></listitem>
+ <listitem><para>Sony CDU 31/33A</para></listitem>
+ <listitem><para>CD-ROM Sound Blaster Non-SCSI</para></listitem>
+ <listitem><para>CD-ROM Matsushita/Panasonic</para></listitem>
+ <listitem><para>CD-ROM ATAPI compatible IDE</para></listitem>
+ </itemizedlist>
+ </para>
+
+ <para>Toutes les cartes non-SCSI sont connues pour &ecirc;tre extr&ecirc;mement lentes
+ par rapport aux lecteurs SCSI, et certains CDROM ATAPI peuvent ne pas
+ &ecirc;tre pris en charge.</para>
+
+ <para>A partir de la version 2.2, le CD-ROM FreeBSD de Walnut Creek
+ permet de d&eacute;marrer directement FreeBSD depuis le CD.</para>
+ </sect1>
+
+ <sect1>
+ <title>Est-ce que FreeBSD supporte les lecteurs ZIP&nbsp;?</title>
+
+ <para>FreeBSD supporte bien s&ucirc;r les lecteurs ZIP SCSI de base
+ &nbsp;-&nbsp;<foreignphrase>out of the box</foreignphrase>.
+ Les lecteurs ZIP ne peuvent &ecirc;tre r&eacute;gl&eacute;s que pour marcher sur les cibles
+ SCSI d'adresse 5 ou 6, mais si le BIOS de votre adaptateur SCSI h&ocirc;te
+ le permet, vous pourrez m&ecirc;me d&eacute;marrer &agrave; partir du ZIP.
+ Je ne sais pas quel adaptateur SCSI h&ocirc;te vous permet de d&eacute;marrer
+ depuis des cibles autres que 0 ou 1... regardez votre documentation
+ (et dites moi si cela marche pour vous).</para>
+
+ <para>Les ZIP ATAPI (IDE) sont pris en charge par FreeBSD 2.2.6
+ ainsi que par les versions ult&eacute;rieures.</para>
+
+ <para>FreeBSD 3.0-STABLE contient le support pour lecteur ZIP
+ sur port parall&egrave;le, mais pour cela, vous aurez &agrave; construire
+ un nouveau noyau avec support pour ppbus (Parallel Port Bus)
+ afin d'utiliser le ZIP.
+ Prendre le fichier de configuration LINT comme exemple.</para>
+
+ <para>Regarder aussi cette note traitant <link linkend="jaz">des
+ disques amovibles</link>, ainsi que celle sur <link linkend="disklabel">
+ le 'formatage'</link>.</para>
+ </sect1>
+
+ <sect1>
+ <title>Est-ce que FreeBSD supporte JAZ, EZ et autres disques amovibles&nbsp;?</title>
+
+ <para>A part la version IDE du lecteur EZ, ce sont tous des
+ p&eacute;riph&eacute;riques SCSI, alors pour FreeBSD, ils sont consid&eacute;r&eacute;s comme des
+ disques SCSI, et le lecteur IDE EZ est consid&eacute;r&eacute; comme un lecteur IDE.
+ </para>
+
+ <para><anchor id="jaz">Je ne suis pas s&ucirc;r que FreeBSD supporte
+ correctemement un changement de media en cours de fonctionnement.
+ Vous devrez bien s&ucirc;r d&eacute;monter le lecteur avant l'&eacute;change, et vous
+ assurer que les unit&eacute;s externes soient allum&eacute;es pendant le d&eacute;marrage
+ du syst&egrave;me de sorte que FreeBSD puisse les voir.</para>
+ </sect1>
+
+ <sect1>
+ <title> Quelles sont les cartes s&eacute;ries multi-ports prises en charge par FreeBSD&nbsp;?</title>
+
+ <para>Une liste est disponible &agrave; la section
+ <ulink url="&url.handbook;install.html#INSTALL-HW">p&eacute;riph&eacute;riques divers
+ </ulink> du handbook.</para>
+
+ <para>A notre connaissance, certaines cartes clone sans marque
+ sont connues pour fonctionner, en particulier celles qui se disent
+ &ecirc;tre compatibles AST.</para>
+
+ <para>Regarder la page de manuel
+ <ulink url="http://www.freebsd.org/cgi/man.cgi?sio">sio</ulink> pour
+ plus d'informations sur la configuration de telles cartes.</para>
+ </sect1>
+
+ <sect1>
+ <title>J'ai une souris bus inhabituelle. Comment la configurer&nbsp;?</title>
+
+ <para>FreeBSD supporte les souris bus et les souris bus InPort de
+ constructeurs tels que Microsoft, Logitech et ATI. Le contr&ocirc;leur du bus
+ est compil&eacute; dans le noyau GENERIC par d&eacute;faut. Si vous construisez un noyau
+ personalis&eacute; avec le contr&ocirc;leur de souris bus, assurez-vous d'avoir bien
+ mis la ligne suivante dans le fichier de configuration du noyau&nbsp;:
+
+ <programlisting>
+device mse0 at isa? port 0x23c tty irq5 vector mseintr
+ </programlisting>
+ </para>
+
+ <para>La souris bus vient souvent avec une interface d&eacute;di&eacute;e.
+ Cela vous permet de mettre une adresse de port et un num&eacute;ro
+ d'IRQ autres que ceux donn&eacute;s ci-dessus.
+ Reportez-vous au manuel de votre souris et &agrave; la page de manuel
+ <ulink url="http://www.freebsd.org/cgi/man.cgi?mse">mse</ulink>
+ pour plus d'informations.</para>
+ </sect1>
+
+ <sect1>
+ <title id="ps2mouse">Comment utiliser ma souris PS/2 (``port souris'' ou ``clavier'')&nbsp;?</title>
+
+ <para>Si vous utilisez une version de FreeBSD post-2.2.5, le pilote
+ n&