[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: intention de traduction



Le Sun, Aug 22, 1999 at 01:20:01AM +0200, Jerome Abela a ecrit:
> J'ai l'intention de traduire les pages suivantes:
> [...]

Suite à des problèmes de connectivité réseau, ce mail est resté bloqué
sur ma machine 24h. Donc ce n'est plus tout à fait une intention, c'est
en partie déjà fait, voici les premiers fichiers.


Jerome.

#use wml::debian::template title="Debian GNU/Hurd" NOHEADER="yes"

<!--translation 1.5-->

  <!--
  Translated by         : Jerome Abela <Jerome.Abela@solsoft.fr>
  -->

[ <a href="..">Ports</a> ]
[ <b>Debian GNU/Hurd</b> ]
[ <a href="hurd-news">News</a> ]
[ <a href="hurd-install">Installation</a> ]
[ <a href="hurd-doc">Documentation</a> ]
[ <a href="hurd-devel">Développement</a> ]
[ <a href="hurd-links">Liens</a> ]
[ <a href="hurd-contact">Contacts</a> ]<p>

<h1>Debian GNU/Hurd</h1>
<h2>Introduction</h2>
<P>
<A HREF="http://www.gnu.org/software/hurd/hurd.html";>Hurd</A> est un
ensemble de traducteurs s'appuyant sur le micronoyau GNU Mach.
Ensemble, ils forment la base du système d'exploitation 
<A HREF="http://www.gnu.org/";>GNU</A>.
</P>
<P>
Actuellement, Debian n'est disponible que pour Linux. Mais avec Debian
GNU/Hurd, nous avons aussi commencé à fournir Hurd en tant que plateforme de
développement. Debian GNU/Hurd n'est pas encore officiellement sorti,
et ne sortira pas avant quelques temps.
</P>
<H2>Developpement</H2>
<P>
Ce délai, c'est tout simplement parceque Hurd est en cours de développement,
et n'atteint pas les performances et la stabilité que vous pourriez
attendre d'un système en production. De plus, le nombre de paquets
Debian portés pour Hurd ne représente qu'une fraction d'une
distribution Debian complète (environ 10%). Il y a encore beaucoup de
travail à accomplir avant que nous puissions sortir une release.
</P>
<P>
D'ici là, vous pouvez participer au développement.
Suivant votre expérience et votre temps disponible, vous pouvez nous
aider de plein de façons différentes.
Par exemple, nous avons besoins de développeurs C expérimentés pour le
développement et l'écriture de nouvelles fonctionnalités, nous avons
aussi besoin de développeurs C pour corriger des bogues ou tracer des
problèmes. Si vous n'avez pas beaucoup d'expérience en programmation
C, vous pouvez quand même apporter votre aide: soit en testant les
logiciels existants et en remontant des bugs, soit en essayant de
compiler de nouveau logiciels que vous connaissez bien. L'écriture de
documentation est également importante, ainsi que la maintenance des pages
web.
</P>
<H2>Comment puis-je participer ?</H2>
<P>
Pour développer dans Hurd, vous devriez commencer par
<A HREF="hurd-install">installer Hurd</A>, et vous y habituer.
De plus, vous pouvez vous inscrire sur la
<A HREF="hurd-contact">liste de discussion</A> et vous faire une idée
de l'état du développement. Offrez votre aide, et nous vous dirons
ce qui manque. Il existe également de nombreuses
<A HREF="hurd-task">listes de tâches</A>.
</P>
#use wml::debian::template title="Debian GNU/Hurd --- News" NOHEADER="yes"

<!--translation 1.4-->

  <!--
  Translated by         : Jerome Abela <Jerome.Abela@solsoft.fr>
  -->

[ <a href="..">Ports</a> ]
[ <a href="index">Debian GNU/Hurd</a> ]
[ <b>News</b> ]
[ <a href="hurd-install">Installation</a> ]
[ <a href="hurd-doc">Documentation</a> ]
[ <a href="hurd-devel">Développement</a> ]
[ <a href="hurd-links">Liens</a> ]
[ <a href="hurd-contact">Contacts</a> ]<p>

<h1>Debian GNU/Hurd</h1>
<h2>News</h2>
<h3>5 Août 1999</h3>
<p>
Les NMU sources de <code>passwd</code> (<code>shadow</code>) devraient
corriger tous les problèmes restant dans ce paquet.  Avec ces modifications,
l'installation devrait se faire plus en douceur.</p>

<h3>27 Juillet 1999</h3>
<p>
Les nouveaux paquets du coeur du système sont maintenant terminés.
Hurd a une nouvelle méthode d'amorçage (pour la partie qui suit le
lancement de init, cf <code>/libexec/runsystem</code>).
Ce changement était nécessaire pour le paquet <code>sysvinit</code>, qui est
presque terminé. Une petite bogue corrigée dans GNU
Lib C et une autre dans GNU Mach. L'autodetection de toutes les cartes
réseau devrait maintenant fonctionner, mais peut-être qu'il faudra
encore ajuster un peu son ordonancement (3c5x9 avant 3c59x).</p>

<h3>22 Juillet 1999</h3>
<p>
<code>cpio 2.4.2-25</code> corrige les derniers problèmes de compatibilité
Hurd, et peut maintenant être compilé tel quel. Merci Brian!</p>

<h3>5 Juillet 1999</h3>
<P>
Les patchs pour Perl 5.005.03 ont été envoyés au responsable. Le code
original était déjà corrigé (merci, Mark!), mais les scripts du paquet
Debian étaient spécifiques à Linux.
</P>
#use wml::debian::template title="Debian GNU/Hurd --- Links" NOHEADER="yes"

<!--translation 1.7-->

  <!--
  Translated by         : Jerome Abela <Jerome.Abela@solsoft.fr>
  -->

[ <a href="..">Ports</a> ]
[ <a href="index">Debian GNU/Hurd</a> ]
[ <a href="hurd-news">News</a> ]
[ <a href="hurd-install">Installation</a> ]
[ <a href="hurd-doc">Documentation</a> ]
[ <a href="hurd-devel">Développement</a> ]
[ <b>Liens</b> ]
[ <a href="hurd-contact">Contacts</a> ]<p>

<h1>Debian GNU/Hurd</h1>
<h2>Liens</h2>
<P>
Il existe de nombreuses ressources sur le web à propos de Debian GNU/Hurd
et des projets qui tournent autour. Si vous en trouvez d'autres ou si
certaines informations sur cette page sont incorrectes, faites-le moi savoir.
Notez que la plupart des liens de cette page pointent sur des domaines hors
de Debian, et ni Debian, ni SPI, ni l'auteur de cette page n'est responsable
de leurs contenus.
</P>
<P>
<UL>
<LI>Debian
	<UL>
	<LI><A HREF="http://www.debian.org";>Page de départ de Debian</A></LI>
	<LI><A HREF="http://www.debian.org/ports/";>Portages de Debian</A>
	vers d'autres architectures</LI>
	<LI><A HREF="http://www.debian.org/ports/hurd/";>Debian
	GNU/Hurd</A></LI>
	<LI><A HREF="http://www.debian.org/distrib/ftplist";>Serveurs FTP
	Debian</A> pour télécharger les logiciels Debian</LI>
	<LI><A HREF="http://www.debian.org/Lists-Archives";>Archives des
	listes Debian</A> où vous pouvez faire des recherches et naviguer
	dans les listes de discussion de Debian GNU/Hurd</LI>
	</UL>
<LI>GNU/Hurd
	<UL>
	<LI><A HREF="http://www.gnu.org";>Page de départ de GNU</A></LI>
	<LI><A HREF="http://www.gnu.org/software/hurd/hurd.html";>Site web
	officiel de Hurd</A> par GNU. Il y a aussi de nombreux liens sur
	ces pages qui ne sont pas reproduits ici. Vous pouvez aussi essayer
	les nouvelles
	<A HREF="http://www.gnu.org/software/hurdtest/navigation.html";>pages
	web expérimentales</A>, plus à jour.</LI>
	<LI><A HREF="http://www.gnu.org/software/devel.html";>Ressources
	de développement GNU</A> donne des informations sur les accès
	par CVS anonyme aux logiciels Hurd, sur les listes de discussion,
	le serveur FTP, etc.</LI>
	<li><a href="http://www.urbanophile.com/arenn/hacking/hurd/hurd-hardware.html";>Guide de compatibilité matérielle</a>
	</li>
	</UL>
<LI>GRUB
	<UL>
	<LI><A HREF="http://www.uruk.org/grub/";>GRUB</A>,
	qui est un chargeur d'amorçage écrit par Erich Boleyn.</LI>
	<LI>Gordon Matzigkeit et son équipe travaillent beaucoup sur GRUB:
	<a href="http://www.gnu.org/software/grub/grub.html";>GNU Grub web page</a>.
	Il y a aussi une <a href="hurd-contact#bug-grub">liste de
	discussion</a> dont le sujet est le développement de GNU Grub.</li>
	</UL>
<LI>Micronoyaux
	<UL>
	<LI><A HREF="http://www.cs.utah.edu/projects/flexmach/mach4/html/Mach4-proj.html";>Mach 4</A>,
	la version de Mach par l'universite de l'Utah, sur laquelle GNU Mach
	est basé.</LI>
        <LI><A HREF="http://www.cs.cmu.edu/afs/cs.cmu.edu/project/mach/public/www/mach.html";>Page
	du projet informatique Mach de CMU</A>, l'origine de Mach. Allez-y
	si vous êtes intéressé par GNU Mach, elle contient toute la
	documentation bas-niveau pour les bricoleurs de noyaux.</LI>
	<LI><A HREF="http://www.cs.utah.edu/projects/flexmach/";>Flex</A>,
	le successeur de Mach 4</LI>
	<LI><A HREF="http://os.inf.tu-dresden.de/L4/";>L4</A>, un micronoyau
	pour puristes</LI>
	<LI><A HREF="http://os.inf.tu-dresden.de/fiasco";>Fiasco</A>, un clone
	de L4</LI>
	</UL>
<LI>Pages web personnelles
	<UL>
	<LI><A HREF="http://duff.kuicr.kyoto-u.ac.jp/~okuji/";>OKUJI
	Yoshinori</A> travaille actuellement sur GRUB et GNU Mach, et a
	(entre autres) des liens intéressants sur les micronoyaux sur sa
	page.</LI>
	<LI><A HREF="http://f77.nop.or.jp/";>UCHIYAMA Yasushi</A> a fait
	fonctionner X Free 86 sur Hurd et a travaillé sur le support SMP
	de GNU Mach.</LI>
	<LI><A HREF="http://www.lares.dti.ne.jp/~jargon/";>YAMASHITA</A>
	travaille sur la documentation de Hurd en japonnais, aussi bien
	des traductions de documents existants que de nouveaux document.</LI>
	<LI><A HREF="http://www.cs.pdx.edu/~trent/";>Trent Fisher</A>. Ses
	pages sont incontournables si vous êtes intéressé par l'histoire
	de Hurd. Trent a quelques liens intéressants sur des annonces
	historiques sur Hurd, et d'anciens courriers de discussion. Bien
	que la plupart de ces informations sont disponibles directement
	depuis les pages web officielles, il y a quelques perles qui
	méritent d'être creusées.</LI>
	</UL>
</UL>
</P>
#use wml::debian::template title="Debian GNU/Hurd --- Installation" NOHEADER="yes"

<!--translation 1.10-->

  <!--
  Translated by         : Jerome Abela <Jerome.Abela@solsoft.fr>
  -->

[ <a href="..">Ports</a> ]
[ <a href="index">Debian GNU/Hurd</a> ]
[ <a href="hurd-news">News</a> ]
[ <b>Installation</b> ]
[ <a href="hurd-doc">Documentation</a> ]
[ <a href="hurd-devel">Développement</a> ]
[ <a href="hurd-links">Liens</a> ]
[ <a href="hurd-contact">Contacts</a> ]<p>

<h1>Debian GNU/Hurd</h1>
<h2>Matériel</h2>
<p>
Vérifiez le
<a href="http://www.urbanophile.com/arenn/hacking/hurd/hurd-hardware.html";>Guide
de compatibilité matérielle</a>
pour connaître quels équipements sont supportés par Hurd.
</p>
<H2>Installer Debian GNU/Hurd</H2>
<P>
Il existe un excellent document, le
<A HREF="http://www.pick.ucam.org/~mcv21/hurd.html";>Guide Facile</A>
par Matthew Vernon, que vous devez absolument lire. Sur cette page, vous
ne trouverez que des informations très succintes, juste de quoi commencer
si vous êtes un développeur ou un utilisateur expérimenté.
</P>
<P>
Il y a deux façons d'installer un système Debian GNU/Hurd. La première
rend possible l'installation directement depuis les paquets Debian, mais
vous aurez besoin de <TT>dpkg</TT>, le gestionnaire de paquets Debian,
pour y arriver. Cela peut être difficile si vous utilisez un autre
distribution Linux que la Debian, ou si vous n'avez pas de Linux du tout.
Il exite donc une deuxième méthode, qui utilise un fichier d'archive tar.
Après l'avoir installé, vous pouvez mettre à jour votre système avec les
dernières versions des paquets Debian en utilisant les fonctions natives.
Ces deux méthodes sont décrites plus bas.
</P>
<H3>Préparatifs communs</H3>
<P>
Pour démarrer l'installation, créez la partition Hurd avec <TT>mke2fs -o hurd
/dev/PARTITION</TT>, où <TT>PARTITION</TT> est la partition du disque dur
que vous allez consacrer à Hurd. Notez que cette partition ne doit pas
dépasser 1Go pour le moment, à cause d'une limitation connue dans Hurd.
</P>
<P>
Ensuite, montez votre partition à un endroit sûr. J'utilise <TT>/gnu</TT> comme
point de montage, principalement parceque c'est le chemin par défaut
pour la compilation croisée. Toute autre place fait aussi bien l'affaire,
de même qu'une installation sur une image disque sur un autre système
de fichiers. A partir de maintenant, je vais supposer que vous utilisez
<TT>/gnu</TT>. Si ce n'est pas le cas, pensez à modifier les commandes
en conséquence.
</P>

<H3>Deux alternatives</H3>
<H4>Installation à partir des paquets Debian</H3>
<P>
Pour installer Debian GNU/Hurd, vous devez récupérer quelques paquets
Debian et mes scripts d'installation. Téléchargez d'abord les scripts
suivants:
<UL>
<LI><A HREF="extra-files/cross-install"><TT>cross-install</TT></A> -
Installation d'un stock de paquets pour Linux</LI>
<LI><A HREF="extra-files/native-install"><TT>native-install</TT></A> -
Configuration du nouveau système</LI>
<LI><A HREF="extra-files/dpkg-hurd"><TT>dpkg-hurd</TT></A> -
Utilisez dpkg sur la partition Hurd depuis Linux</LI>
</UL>
</P>
<P>
Si vous n'avez pas une distribution Debian, vous aurez également besoin
d'un version de <TT>dpkg</TT> pour votre système.
</P>
<P>
Enfin, le plus important, les paquets Debian. Ils se trouvent
sur tout <A HREF="../../distrib/ftplist">miroir FTP Debian</A>, dans le
répertoire <TT>debian/dists/unstable/main/binary-hurd-i386/</TT>. La liste
des paquets indispensables se trouve au début du script <TT>dpkg-hurd</TT>.
Vous pouvez sauver ces paquets dans un unique répertoire, ou dans les
mêmes sous-répertoire que ceux utilisés sur le site FTP.
</P>
<P>
Maintenant, <TT>cd</TT> vers le répertoire contenant vos scripts et
les paquets Debian. Si vous utilisez un unique répertoire, il doit
contenir tous les fichiers. Si vous utilisez l'organisation FTP des paquets,
assurez-vous que les scripts sont en haut de l'arborescence pour qu'ils
puissent trouver les paquets dans <TT>base/</TT> etc.
Lancez <TT>./cross-install /gnu</TT>. Répondez <TT>y</TT> à la question
à propos du lien symbolique sur <TT>/usr</TT>. Maintenant continuez avec
le <A HREF="#reboot">Réamorçage du système</A>.
</P>

<H4>Installation à partir du fichier d'archive tar</H4>
<P>
De temps en temps, je dépose une image à jour du système de base
sur <tt><a href="ftp://alpha.gnu.org/pub/gnu/hurd/contrib/marcus/";>ftp://alpha.gnu.org/pub/gnu/hurd/contrib/marcus/</a></tt>
Ces fichiers s'appellent <TT>gnu-YYYYMMDD.tar.gz</TT>, où <TT>YYYYMMDD</TT>
est la date de l'image. Ils vous permettent d'installer Hurd même si vous
n'avez jamais touché à un système Debian. La procédure décrite ici ne
fonctionne pas pour <TT>gnu-19990104.tar.gz</TT>, donc il vous faut une
version plus récente que celle-ci.
</P>
<P>
Téléchargez le fichier tar dont la date est la plus récente. C'est le seul
fichier dont vous aurez besoin pour avoir un système qui tourne (à part
GRUB). <TT>cd /gnu</TT> pour être en haut de la partition Hurd.
Maintenant, lancez l'extraction du fichier tar avec la commande
<TT>tar -xpzf /quelquepart/gnu-YYYYMMDD.tar.gz</TT> en utilisant le chemin
et la date corrects.
</P>
<p><B>IMPORTANT:</B>Si vous utilisez la version 19990505, remplacez
le script <tt>native-install</tt> du fichier tar avec sa version la plus
à jour.
</p>
<A NAME="reboot"><H3>Réamorçage du système</H4></A>
<P>
Maintenant, réamorcez le système et utilisez GRUB pour amorcer la partition
Hurd. Je ne vous donne pas plus d'information sur GRUB et le plan de
nommage des partitions, vous trouvez ces informations et bien d'autres
dans le <A HREF="http://www.pick.ucam.org/~mcv21/hurd.html";>Guide facile</A>
de M. C. Vernon.
</P>
<P>
Après le réamorçage, vous devez seulement lancer <TT>./native-install</TT>
pour terminer l'installation. Amusez-vous bien !
</P>

</BODY>
</HTML>
#use wml::debian::template title="Debian GNU/Hurd --- Documentation" NOHEADER="yes"

<!--translation 1.10-->

  <!--
  Translated by         : Jerome Abela <Jerome.Abela@solsoft.fr>
  -->

[ <a href="..">Ports</a> ]
[ <a href="index">Debian GNU/Hurd</a> ]
[ <a href="hurd-news">News</a> ]
[ <a href="hurd-install">Installation</a> ]
[ <a href="hurd-doc">Documentation</a> ]
[ <a href="hurd-devel">Développement</a> ]
[ <a href="hurd-links">Liens</a> ]
[ <a href="hurd-contact">Contacts</a> ]<p>

<h1>Debian GNU/Hurd</h1>
<h2>Foire Aux Questions (FAQ)</h2>

<p>
Notez que cette FAQ n'est pas destinée à ne contenir que des questions
fréquemment posées, mais plus généralement tout sujet intéressant abordé
dans les listes de discussion Hurd. Mon intention est d'utiliser ce
document comme fourre-tout en attendant que chaque information ait sa
propre place.

<h3>Général</h3>
<p>
<b>Question</b>:
Hurd est-il en cours de développement, ou bien est-ce un projet mort ?</p>
<p><b>Réponse</b>:
Hurd est en développement très actif ces derniers temps.
Nous corrigeons des bogues pour atteindre une meilleure stabilité, et
pour porter la plupart des paquets standards. Nous ajoutons également
de nouvelles fonctionnalités, mais rien de majeur.
Nous aimerions avoir plus de développeurs à bord. Il y a de nombreuses
fonctionnalités très intéressantes à implémenter, et vous aurez
rarement l'occasion de concevoir et d'implémenter des éléments
d'un système d'exploitation aussi exitant!</p>

<p><b>Question</b>:
Est-ce que ça tourne ?</p>
<p><b>Réponse:</b>
Oui.
</p>

<h3>L'installation</h3>
<P>
<B>Question</B>:
Quel type de partition dois-je utiliser pour ma partition GNU/Hurd ?</P>
<p><b>Réponse</b>:
Choisissez un système de fichier ext2. L'autre solution est d'utiliser
ufs, dans le style BSD. Le numéro de type de partition pour ext2fs
est 0x83 (le même que pour Linux), <em>et pas</em> 0x63 (GNU Hurd).
Thomas explique pourquoi 0x63 n'est pas le bon choix:
<blockquote>
Un jour, nous créerons peut-être un nouveau format de système de fichier,
qui s'appellera probablement le système de fichier GNU Hurd, et pourrait
bien utiliser ce code de partition. Mais de toute façon, il est toujours
erroné d'utiliser ce code pour une partition ext2fs, comme le fait
remarquer Roland.
</blockquote>

<p><b>Question</b>:
Quel est le nom et le numéro de ma partition ?</p>
<p><b>Réponse</b>:
Je savais que vous poseriez cette question. Si je devais réduire cette
FAQ à une seule question, je choisirais celle-ci. C'est plutôt simple,
mais vous devez savoir qu'il y a en réalité trois convention de nomage.</p>
<p>
Toutes les conventions de nommage utilisent <code>hd</code> pour IDE et
<code>sd</code> pour les disques SCSI. C'est tout pour les points
communs. Maintenant les différences.</p>
<p>
Pour commencer, le numéro du disque. Si c'est un disque SCSI, vous
devez trouver son numéro dans la chaîne SCSI. Si c'est un disque IDE,
vous devez trouver sur quel contrôleur il est, et s'il est maître ou
esclave. Avec Linux, le disque maître du contrôleur primaire a la
lettre "a", et le disque esclave la lettre "b". Le maître et l'esclave
du contrôleur secondaire ont respectivement les lettres "c" et "d".
Hurd utilise la notation BSD, et les nomme "0", "1", "2" et "3" au
lieu de "a", "b", "c" et "d". Vous avez donc <code>/dev/hdc</code> sous
Linux, mais <code>/dev/hd2</code> sous Hurd. C'est clair ? Bien. GRUB
fait encore différemment! GRUB fait comme le BIOS, il énumère tous les
disques installés sur lesquels il peut amorcer le système en commençant
à 0 et par incrément de 1. Donc "hd(0,?)" est une partition sur le premier
disque sur lequel il peut amorcer le système, indépendamment de sa
situation de maître ou esclave ou autre. Le deuxième disque qu'il trouve
est "hd(1,?)", etc. Heureusement, le BIOS fait sa recherche dans l'ordre
bien précis contrôleur primaire maître/esclave, contrôleur secondaire
maître/esclave.</p>
<p>
Maintenant, le numéro de partition. Le numéro de partition (pour les
partitions primaires, comme sous DOS) est le même sous Linux et sous Hurd,
excepté que Hurd utilise la notation BSD avec un séparateur "s" (NDT:
du mot anglais "slice", tranche).  On a donc <code>/dev/hdc3</code> sous
Linux, mais <code>/dev/hd2s3</code> sous Hurd. Si vous travaillez sous BSD,
vous connaissez donc déjà le nom Hurd de cette partition. GRUB, une fois de
plus, fait les choses différemment: il commence à compter à partir de "0",
donc <code>/dev/hd0s3</code> est <code>hd(0,2)</code> pour GRUB, <em>pas</em> <code>hd(0,3)</code>!</p>

<p><b>Question</b>:
Comment puis-je ajouter une partition de pagination ?</p>
<p><b>Réponse</b>:
Il suffit d'ajouter cette partition de pagination dans
<tt>/etc/fstab</tt>, comme vous le feriez sous Linux. Vous pouvez paginer
sur une partition de pagination Linux, et Hurd respectera sa signature
(dans ses deux versions). Mais Hurd sera ravi de paginer sur tout autre
espace disque et écrasera tout ce qu'il y trouvera, donc
faites attention !</p>
<p>Si vous préférez paginer sur un fichier, ou être certain qu'il vérifie
la signature de pagination Linux avant d'écraser les données qui s'y
trouvent, vous devez modifier <tt>/boot/servers.boot</tt>. La syntaxe est le
nom de fichier spécial de la partition, suivi éventuellement du nom du
fichier de pagination sur un ext2fs, suivi d'un espace et au choix
<tt>$(add-raw-paging-file)</tt>, <tt>$(add-linux-paging-file)</tt>, ou
<tt>$(add-paging-file)</tt>. Le premier fonctionne avec n'importe quel
fichier ou partition, et ne respecte aucune signature. Le deuxième fait
une vérification de sécurité, et ne fonctionne que si une signature de
pagination linux est trouvée. Le troisième recherche une signature de
pagination (et la respecte le cas échéant), mais passe en pagination
brute s'il n'en trouve pas. C'est le fonctionnement par défaut des
entrées de <tt>/etc/fstab</tt>.
</p>

<p><b>Question</b>:
J'obtiens l'erreur <code>Operation not permitted</code> à l'installation !</p>
<p><b>Réponse</b>:
Vous avez oublié d'indiquer que le propriétaire du système de fichiers de la
partition Hurd est <code>hurd</code>. Hurd utilise des informations
supplémentaires dans les inodes pour positionner les traducteurs,
donc la partition doit être marquée comme "appartenant à hurd".
Vous pouvez le faire à la création de la partition avec <code>mke2fs -o hurd
/dev/XXX</code> ou bien plus tard avec le script <code>e2os</code>.</p>

<p><b>Question</b>:
Quelle est la signification de cette erreur ?
<pre>
/hurd/ext2fs.static: cannot vm_map whole disk: (os/kern) no space available
</pre></p>
<p><b>Réponse</b>:
Cela signifie que votre partition fait plus de 1Go. De telles partitions
ne sont pas encore supportées, désolé.</p>

<p><b>Question</b>:
Après la fin de <code>native-install</code>, j'étais obligé d'écrire
ccoommmmee  cceeccii.  En particulier, j'ai dû taper
<code>rreebboooott</code> pour réamorcer le système.
<p><b>Réponse</b>:
C'est rigolo, hein ? Malencontreusement, deux serveurs <code>term</code>
sont lancés et se partagent les entrées clavier. Après un réamorçage,
le problème disparait. Il n'y a pas encore de solution connue, mais
nous gardons un oeil sur ce probleme. Si <code>tar</code> supportait
les traducteurs, nous n'aurions pas ce problème.</p>

<p><b>Question</b>:
Pourquoi <code>/usr</code> est-il un lien symbolique sur <code>.</code> ?</p>
<p><b>Réponse</b>:
La distinction entre <code>/</code> et <code>/usr</code> a une
justification historique, du temps où les systèmes Unix étaient amorcés
à partir de deux bandes, une petite bande root et un plus grosse bande
usr. Ajourd'hui, il est toujours pratique d'avoir des partitions séparées
pour ces deux espaces. Hurd se débarasse de ces rebus historiques, parceque
nous pensons avoir trouvé une solution plus souple, les systèmes de fichiers
cachés. Malheureusement <code>shadowfs</code> n'est pas encore implémenté.</p>

<p><b>Question</b>:
Comment puis-je configurer ma carte réseau ? Elle a été autodetectée par GNU
Mach.</p>
<p><b>Réponse</b>:
<code>settrans -fgc /servers/socket/2 /hurd/pfinet --interface=eth0
--address=AA.BB.CC.DD --netmask=EE.FF.GG.HH --gateway=II.JJ.KK.LL</code>
où les divers <code>WW.XX.YY.ZZ</code> sont respectivement votre adresse
IP, votre masque réseau et l'adresse de votre passerelle.
N'oubliez pas non plus de configurer <code>/etc/resolv.conf</code>,
<code>/etc/hosts</code>, etc.</p>

<p><b>Question</b>:
Les pipes ne marchent pas!</p>
<p><b>Réponse</b>:
<code>settrans -fgc /servers/socket/1 /hurd/pflocal</code> devrait améliorer
les choses.</p>

<p><b>Question</b>:
Lorsque l'APM du BIOS stoppe mes disques durs, Hurd n'arrive pas à les
relancer !</p>
<p><b>Réponse</b>:
L'APM n'est pas supporté dans la version actuelle de GNU Mach, désolé.
Désactivez l'APM dans la configuration de votre BIOS.</p>

<p><b>Question</b>:
Et X11 ?
<p><b>Réponse</b>:
Ne m'en parlez pas.</p>

<p><b>Question</b>:
Pourquoi ?
<p><b>Réponse</b>:
Le problème n'est pas X11, presque tout X11 est porté. La totalité de la
distribution X11 compile et les programmes fonctionnent. Même le serveur
semble tourner correctement. Cependant, nous devons porter les périphériques
caractères de Linux sous GNU Mach, pour avoir un serveur de clavier, le
support des souris PS/2, etc. D'ici là, les serveurs ne servent à rien.
Mais vous pouvez lancer les clients sur un écran distant.</p>

<p><b>Question</b>:
Mes clients X11 ne marchent pas !
<p><b>Réponse</b>:
Essayez <code>export LD_LIBRARY_PATH=/usr/X11R6</code>. C'est un problème de
résolution de liens. Hurd utilise <code>RPATH</code>, tandis que Debian
l'évite. Désolé, il n'y a pas encore de solution à ce problème à part mettre
une liste de tous les répertoires contenant des bibliothèques dans
<code>LD_LIBRARY_PATH</code>.</p>

<h3>Utilisation de Hurd</h3>

<p><b>Question</b>:
Qu'est-ce qu'un traducteur ?</p>
<p><b>Réponse</b>:
Il existe un <a href="hurd-doc-translator">texte sur les traducteurs</a>
disponible.
</p>

<p><b>Question</b>:
Comment puis-je passer des option à <code>serverboot</code> depuis la
ligne de commande de GRUB ?</p>
<p><b>Réponse</b>:
Il suffit de les passer au noyau, qui fera suivre à <code>serverboot</code>.
</p>

<p><b>Question</b>:
Puis-je utiliser la version Linux de <code>e2fsck</code> sur ma partition
Hurd ?</p>
<p><b>Réponse</b>:
Oui, depuis <code>e2fsprogs-1.05</code>. Vérifiez au préalable la version
avec <code>e2fsck -V</code>.</p>

<p><b>Question</b>:
<code>ps aux</code> ne me donne pas le résultat que j'attends.</p>
<p><b>Réponse</b>:
Essayez <code>ps Aux</code>.</p>

<p><b>Question</b>:
Lorsque je lance <code>ls -l /dev/</code>, ça affiche <code>fd: Gratuitous
error</code>. Que se passe-t-il ?</p>
<p><b>Réponse</b>:
Le serveur  <code>magic</code> n'offre pas de support pour ces opérations
de système de fichier. L'idéal serait qu'il réagisse comme un répertoire
(probablement un répertoire vide), mais il faut l'implémenter.
Pour le moment, vous pouvez simplement ignorer ce message d'erreur, il
n'est pas dangereux. Pour approfondir le sujet, vous pouvez lire les
informations sur le <a href="hurd-doc-server#magic">serveur
<code>magic</code></a>.</p>

<p><b>Question</b>:
Où se trouve ...</p>
<p><b>Réponse</b>:
<ul><li><code>fdisk</code>, <code>dmesg</code> ne sont pas encore portés.</li>
<li>A la place de <code>free</code>, utilisez <code>vmstat</code> et
<code>vminfo</code>.
</ul></p>

<p><b>Question</b>:
Y-a-t'il un système de fichiers <code>/proc</code> ?</p>
<p><b>Réponse</b>:
Non. Peut-être qu'il y aura une émulation un jour pour les programmes
qui en ont besoin. Pour ce qui est du <code>/proc</code> vide,
c'est juste un relicat d'un paquet Debian GNU/Linux (<tt>base-files</tt>).</p>

<h3>Lorque quelque chose casse</h3>

<p><b>Question</b>:
Qu'est-ce qu'un <tt>default pager</tt>, <tt>paging</tt>, ou une
<tt>pager request</tt> ?</p>
<p><b>Réponse</b>:
Le gestionnaire de pagination (default pager) gère l'allocation de mémoire
virtuelle. S'il ne peut pas allouer une nouvelle page par manque de
mémoire, des choses terribles peuvent arriver. Lorsque vous obtenez
ce type d'erreur, soit vous avez besoin de plus de mémoire, soit vous
avez découvert une fuite de mémoire. Ajoutez une partition de pagination.
</p>

<p><b>Question</b>:
Que signifie <tt>gratuitous error</tt> ?</p>
<p><b>Réponse</b>:
Cela vient de <tt>strerror(EGRATUITOUS)</tt>. D'après la documentation
de glibc, c'est un code d'erreur qui ne sert pas <tt>:)</tt>.
Ce n'est pas tout à fait vrai. En fait, cette erreur peut arriver losqu'une
anomalie grave s'est produite. Les explications de Thomas:
<blockquote>
Plus pécisément, EGRATUITOUS signifie officellement qu'un serveur a répondu
d'un façon impossible, ou qui ne respectait pas le protocole. Il y a des cas
dans Hurd où EGRATUITOUS est retourné alors qu'un autre code serait plus
approprié.
</blockquote>
Si vous pouvez reproduire ce message, faites un rapport de bug. Mais
<em>ne faites pas</em> de rapport de bug à propos de l'accès à
<tt>/dev/fd</tt>, nous connaissons ce cas.
</p>

<p><b>Question</b>:
Pourquoi <code>df</code> ne fonctionne-t-il pas ?</p>
<p><b>Réponse</b>:
<code>df</code> essaye d'obtenir une liste de tous les systèmes de fichiers
montés. Une telle liste centralisée n'existe pas sous Hurd. Vous pouvez
lancer <code>df /</code> pour obtenir l'espace disponible sur le système
de fichiers racine ou sur d'autres systèmes de fichiers, mais cela
ne marche pas avec certaines versions de <code>fileutils</code> (par exemple,
en ce moment, été 1999, ça ne marche pas).</p>

<p><b>Question</b>:
Lorsque le système plante, GNU Mach se réamorce automatiquement. Mais c'est
trop rapide, je n'ai pas le temps de recopier le message d'erreur.</p>
<p><b>Réponse</b>:
Donnez l'option <code>-H</code> à init (ajoutez-la sur la ligne de commande
d'amorçage), et init demandera à Mach d'entrer en déboguage noyau au lieu
de se réamorcer. A l'invite du débogueur, vous pouvez taper
<code>db> reboot</code> pour réamocer le système.</p>

<h3>Développement</h3>

<p><b>Question</b>:
Où puis-je récupérer les sources?</p>
<p><b>Réponse</b>:
Les sources de tous les paquets Debian sont disponible sur tous les
<a href="../../distrib/ftplist">miroir FTP Debian</a>. Pour GNU Mach 
et Hurd, il existe également un
<a href="http://www.gnu.org/software/devel";>accès CVS anonyme</a> disponible.
</p>

<p><b>Question</b>:
Par où dois-je commencer à lire les sources de Hurd ?</p>
<p><b>Réponse</b>:
Commencez par les sources du serveur <code>auth</code>.</p>

<p><b>Question</b>:
Existe-t-il des programmes d'exemple qui font usage des fonctionnalités
propres à Hurd ?</p>
<p><b>Réponse</b>:
Dans le répertoire <code>utils/</code> des sources de Hurd.</p>


#use wml::debian::template title="Debian GNU/Hurd --- Documentation" NOHEADER="yes"

<!--translation 1.8-->

  <!--
  Translated by         : Jerome Abela <Jerome.Abela@solsoft.fr>
  -->

[ <a href="..">Ports</a> ]
[ <a href="index">Debian GNU/Hurd</a> ]
[ <a href="hurd-news">News</a> ]
[ <a href="hurd-install">Installation</a> ]
[ <b>Documentation</b> ]
[ <a href="hurd-devel">Développement</a> ]
[ <a href="hurd-links">Liens</a> ]
[ <a href="hurd-contact">Contacts</a> ]<p>

<h1>Debian GNU/Hurd</h1>
<h2>Documentation</h2>
<P>
La documentation de Hurd est encore incomplète, et si vous êtes compétant
en programmation et en rédaction technique, vous êtes invité à améliorer
le manuel de référence de Hurd ou à écrire d'autres documentations sur Hurd.
</P>
<UL>
<LI><a href="hurd-faq">Foire Aux Questions</a> avec leurs réponses, bien sûr.</li>
<li>Introduction au <a href="hurd-doc-translator">concept de traducteur</a>.</li>
<LI>Le <a href="hurd-port">portage de paquets</a> exige souvent des
modifications dans le logiciel d'origine ou dans les scripts des
paquets Debian.
</li>
<LI>Le <A HREF="reference-manual/hurd_toc.html">manuel de référence Hurd</a>
au format HTML couvre à la fois les aspects utilisateur et
développeur de Hurd. Il est également disponible sous la forme d'un
<a href="reference-manual/hurd.html">fichier unique</a>.</LI>
<LI>La <A HREF="hurd-doc-server">description de l'interface utilisateur
preliminaire</A> contient une liste des serveurs Hurd disponibles et le
résultat de leur <tt>--help</tt>.</LI>
<LI>Quelques informations sur certains
<A HREF="hurd-doc-utils">utilitaires</A>.</LI>
</UL>
</P>
#use wml::debian::template title="Debian GNU/Hurd --- Documentation" NOHEADER="yes"

<!--translation 1.3-->

  <!--
  Translated by         : Jerome Abela <Jerome.Abela@solsoft.fr>
  -->

[ <a href="..">Ports</a> ]
[ <a href="index">Debian GNU/Hurd</a> ]
[ <a href="hurd-news">News</a> ]
[ <a href="hurd-install">Installation</a> ]
[ <a href="hurd-doc">Documentation</a> ]
[ <a href="hurd-devel">Développement</a> ]
[ <a href="hurd-links">Liens</a> ]
[ <a href="hurd-contact">Contacts</a> ]<p>

<h1>Debian GNU/Hurd</h1>
<h2>Traducteurs</h2>
<ul>
<li><a href="#concept" name="TOC_concept">Concept</a></li>
<li><a href="#examples" name="TOC_examples">Exemples</a></li>
<li><a href="#actpas" name="TOC_actpas">Traducteurs passifs, traducteurs actifs</a></li>
<li><a href="#manage" name="TOC_manage">Gestion des traducteurs</a></li>
</ul>


<a href="#TOC_concept" name="concept"><h3>Concept</h3></a>
<p>
Avant d'étudier en détail les traducteurs, voyons le fonctionnement d'un
système de fichiers traditionnel. Un système de fichiers est une zone
de données organisée en un arbre hiérarchique de répertoires
et de fichiers. Ces répertoires et fichiers sont désignés par une
chaîne de caractères spéciale, le <em>chemin</em>. D'autres données que
de simples fichiers ou répertoires peuvent être présents dans cet arbre:</p>
<ul><li>des liens symboliques, qui permettent de référencer un fichier depuis
d'autres endroits de l'arbre,</li>
<li>des liens physiques, qui désignent un même fichier unique depuis
plusieurs emplcements,</li>
<li>des fichiers spéciaux de périphériques, qui permettent de
communiquer avec les pilotes de périphériques du noyau,</li>
<li>des points de montage, qui permettent d'inclure d'autres systèmes
de fichiers dans l'arborescence,</li>
<li>ainsi que d'autres objets obscurs comme les fifos ou les sockets.</li></ul>
<p>
Malgré les grandes différences qui existent entre ces objets,
ils partagent certaines propriétés générales, par exemple,
ils ont tous un propriétaire et un groupe qui leur est
associé, ainsi que des droits d'accès (permissions).
Ces informations sont conservées dans des inodes. Voilà encore une
propriété partagée: chacun de ces objets a exactement un inode qui lui
est associé (à l'exception des liens physiques qui sont plusieurs à
partager le même inode). Quelques fois, l'inode contient un peu plus
d'informations. Par exemple, il peut contenir la destination d'un lien
symbolique.</p>
<p>
Cependant, ces ressemblances ne sont généralement pas exploitées dans
les implémentations, malgré une interface de programmation commune.
Tous les inodes peuvent être accédés pas des appels POSIX standards,
par exemple <code>read()</code> et <code>write()</code>. Mais pour
ajouter un nouveau type d'objet (par exemple un nouveau type de lien)
sur un noyau unix monolitique classique, il faut modifier le code
de chaque système de fichiers séparément.</p>
<p>
Avec Hurd, les choses sont différentes.
Bien sûr, lorsqu'un système de fichiers particulier (comme ext2fs)
ajoute à un object standard (comme le lien symbolique) une propriété
particulière (comme le lien rapide), Hurd l'implémente dans un serveur
de système de fichiers spécifique. Mais sa grande force est de posséder
une interface générique permettant d'ajouter de telles fonctionnalités
sans modifier le code existant.</p>
<p>
L'astuce consiste à permettre à un programme de s'insérer entre le contenu
effectif du fichier et l'utilisateur qui accède à ce fichier.
Un tel programme s'appelle un traducteur, parcequ'il est capable
de traiter et transformer des requêtes de plein de façons différentes.
En d'autres termes, un traducteur est un serveur Hurd qui implémente
l'interface de base des système de fichiers.</p>
<p>
Les traducteurs ont des propriétés très intéressantes. Vu du noyau, ce
ne sont que des processus comme les autres, qui
peuvent être lancés par n'importe quel utilisateur. Vous n'avez pas besoin
des privilèges de root pour installer ou modifier un traducteur, il
suffit des droits d'accès à l'inode auquel est rattaché ce traducteur.
De nombreux traducteurs n'ont pas besoin d'un fichier concret pour
fonctionner, il fournissent des informations par leurs propres moyens.
C'est pourquoi les informations sur les traducteurs sont associées
aux inode.</p>
<p>
Un traducteur a pour responsabilité de répondre à toutes les requêtes
de système de fichiers qui agissent sur l'inode auquel il est rattaché.
Comme il n'est pas limité aux objets habituels (lien, fichier spécial
de périphérique, etc), il est libre de retourner tout ce qui peut avoir
un sens. On pourrait immagine un traducteur qui se comporte comme un
répertoire lorsqu'on y accède par <code>cd</code> ou <code>ls</code> et
en même temps comme un fichier lorsqu'on y accède par <code>cat</code>.</p>

<a href="#TOC_examples" name="examples"><h3>Exemples</h3></a>
<h4>Point de montage</h4>
<p>
Un point de montage peut être vu comme un inode avec un traducteur
spécial qui lui est rattaché. Son utilité est de traduire les opérations
de système de fichiers sur le point de montage en opérations sur
d'autres données, par exemple une autre partition.</p>
<p>
C'est en effet ainsi que les systèmes de fichiers sont implémentés sur
Hurd. Un système de fichiers est un traducteur. Ce traducteur prend en
argument un périphérique de stockage, et effectue de façon transparente
toutes les opération de système de fichiers.</p>

<h4>Fichier spécial de périphérique</h4>
<p>
Il existe de très nombreuses sortes de fichiers de périphérique, et dans un
système avec un noyau monolithique, ils sont tous gérés par le noyau
lui-même. Dans Hurd, tous les fichiers de périphérique sont gérés par des
traducteurs. Un même traducteur peut gérer de nombreux fichiers de
périphériques similaires, par exemple toutes les partitions de disques durs.
Ainsi, le nombre réel de traducteurs nécessaires est réduit. En revanche,
chaque fois qu'un fichier de périphérique est utilisé, un nouveau
thread est lancé dans le traducteur. Comme Hurd est hautement multi-thread,
cette opération n'est pas coûteuse du tout.</p>
<p>
Lorsqu'il doit accéder à du matériel, un traducteur se met à communiquer avec
le noyau pour transférer des données. Mais si aucun accès au matériel n'est
nécessaire, le noyau n'est plus du tout concerné. Par exemple,
<code>/dev/zero</code> ne nécessite aucun accès matériel, donc il est
entièrement implémenté dans l'espace utilisateur.</p>

<h4>Lien symbolique</h4>
<p>
Un lien symbolique peut être vu comme un traducteur. L'accès à un lien
symbolique lancerait le traducteur, qui ferait suivre les requêtes vers
le système de fichiers contenant le fichier vers lequel le lien pointe.</p>
<p>
Cependant, pour de meilleures performances, les systèmes de fichiers qui
ont un support natif des liens symboliques peuvent en tirer avantage
et les implémenter différemment. En interne, l'accès à un lien symbolique
ne lance pas un nouveau thread de traducteur, mais pour l'utilisateur
tout se passe comme si un traducteur passif était présent (voyez plus bas
pour une explication sur les traducteurs passifs).</p>
<p>
Comme Hurd fournit un traducteur de lien symbolique, tout serveur de
système de fichiers qui supporte les traducteurs supporte automatiquement les
liens symboliques (et les firmlinks, et les fichiers de périphériques, etc) !
Cela signifie que vous pouvez faire tourner une nouveau type de système de
fichiers très rapidement, et ajouter le support natif des liens symbolique
et d'autres fonctionnalités plus tard.</p>

<a href="#TOC_actpas" name="actpas"><h3>Traducteur passif, traducteur actif</h3></a>
<p>
Il y a deux types de traducteurs, les traducteurs passifs, et les traducteurs
actifs. Ce sont réellement deux choses différentes, qu'il ne faut pas
mélanger, mais ces deux types des traducteurs sont en étroite relation.
</p>

<h4>Traducteur actif</h4>
<p>
Un traducteur actif est un processus de traducteur qui tourne, comme
expliqué plus haut. Vous pouvez ajouter ou retirer un traducteur actif
en utilisant la commande
<a href="reference-manual/hurd_7.html#SEC49"><code>settrans -a</code></a>.
L'option <code>-a</code> est nécessaire pour indiquer à
<code>settrans</code> que vous désirez agir sur un traducteur actif.</p>
<p>
La commande <code>settrans</code> prend trois catégories d'arguments.
Premièrement, les options propres à la commande
<code>settrans</code> elle-même, comme <code>-a</code> pour modifier
le traducteur actif. Ensuite, vous précisez l'inode à modifier.
Rappelez-vous qu'un traducteur est toujours rattaché à un inode dans
une hiérarchie de répertoires. Vous ne pouvez modifier qu'un seul inode
à la fois. Si vous n'indiquez pas plus d'arguments, <code>settrans</code>
essayera d'enlever le traducteur existant. L'énergie qu'il y mettra
dépend des options spécifiées (si le traducteur est en cours
d'utilisation, vous aurez un message d'erreur "device or resource busy"
à moins de forcer sa suppression).</p>
<p>
Mais si vous précisez d'autres arguments, ils seront interprétés comme
une ligne de commande de lancement du traducteur. Cela signifie que
l'argument qui suit est le nom de l'exécutable du traducteur et que
les suivants sont ses options, et non celles de la commande
<code>settrans</code>.</p>
<p>
Par exemple, pour monter une partition ext2fs, il suffit de lancer
<code>settrans -a -c /mnt /hurd/ext2fs /dev/hd2s5</code>. L'option
<code>-c</code> créera le point de montage s'il n'existe pas déjà.
Notez que ce point de montage n'est pas nécessairement un répertoire.
Pour démonter cette partition, il suffit de faire
<code>settrans -a /mnt</code>.</p>

<h4>Traducteur passif</h4>
<p>
Un traducteur passif est positionné ou modifié par la même syntaxe
que pour un traducteur actif (il suffit de retirer le <code>-a</code>),
donc tout ce qui a été dit précédemment est applicable aux traducteurs
passifs. Cependant, il y a une différence: les traducteurs passifs ne
sont pas lancés immédiatement.</p>
<p>
Cela correspond finalement au sens que vous voulez donner à un traducteur.
Vous ne voulez pas que la partition soit montée à moins d'accéder réellement
à cette partition. Vous ne voulez pas lancer le réseau tant qu'il n'y a
pas de trafic, etc.</p>
<p>
Au lieu de cela, au premier accès au traducteur passif, un traducteur
actif est lancé à partir de la ligne de commande stockée dans l'inode.
Ce mécanisme est un peu similaire à l'automounter de Linux. La différence,
c'est qu'il ne s'agit d'un petit plus à mettre en place manuellement,
mais d'une partie intégrante du système. La mise en place de traducteurs
passifs repousse donc le lancement de ces traducteurs au moment où
ils seront réellement nécessaires. Par ailleurs, si un traducteur
actif meurt pour une quelconque raison, il est relancé au premier
accès qui suit à l'inode.</p>
<p>
Il y a une autre différence: les traducteurs actifs peuvent mourir ou
se perdre. Dès qu'un traducteur est tué (par exemple, parceque la machine
est réamorcée), il est perdu pour toujours. Les traducteur passifs
sont conservés dans les inodes pendant les réamorçages jusqu'à ce que
vous les modifiez par le programme <code>settrans</code>, ou que
vous effaciez les inodes auxquels ils sont attachés. Cela signifie
que vous n'avez pas de fichier de configuration à tenir à jour pour
vos points de montage.</p>
<p>
Un dernier point: même si vous avez mis en place un traducteur passif,
vous pouvez toujours lancer un traducteur actif différent.
Ce n'est que dans le cas où aucun traducteur n'est actif au moment où
l'inode est utilisé qu'un traducteur est lancé automatiquement par le
traducteur passif.</p>

<a href="#TOC_manage" name="manage"><h3>Gestion des traducteurs</h3></a>
<p>
Comme indiqué plus haut, vous pouvez utiliser
<a href="reference-manual/hurd_7.html#SEC49"><code>settrans</code></a>
pour lancer ou modifier les traducteurs passifs et actifs. Il existe de
nombreuses options pour changer le comportement de <code>settrans</code>
en cas d'erreur, ou pour conditionner son action.
Voici quelques utilisations classiques:</p>
<ul><li><code>settrans -c /mnt /hurd/ext2fs /dev/hd2s5</code> monte une
partition, et le traducteur restera permanent.</li>
<li><code>settrans -a /mnt /hurd/ext2fs ~/dummy.fs</code> monte un
système de fichiers dans un fichier de données, et le montage
disparaîtra si le traducteur meurt.
<li><code>settrans -fg /nfs-data</code> force un traducteur à disparaître.</li>
</ul>
<p>
Vous pouvez utiliser la commande
<a href="hurd-doc-utils#showtrans"><code>showtrans</code></a>
pour voir si un traducteur est attaché à un inode. Cette commande n'affichera
cependant que le traducteur passif.</p>
<p>
Vous pouvez changer les options d'un traducteur actif (de système de
fichiers), avec la commande <code>fsysopts</code> sans le relancer.
C'est vraiment pratique. Par exemple, vous pouvez faire l'équivalent
d'un "remontage de partion en lecture seule" sous Linux en lançant
simplement <code>fsysopts /point_de_montage --readonly</code>.
Le traducteur actif changera son comportement dans la mesure du possible.
<code>fsysopts /point_de_montage</code> sans autre paramètre affiche
l'état courant du traducteur.</p>

<h4>Exemples</h4>
<p>
Je vous recommande de commencer par lire la commande <code>/bin/mount</code>,
c'est juste un petit script. Comme la mise en place de traducteurs
de systèmes de fichiers est similaire au montage de partitions, vous
pourrez ainsi facilement maitriser ce concept. Faites une image
d'un système de fichiers avec <code>dd if=/dev/zero of=dummy.fs bs=1024k
count=8; mke2fs dummy.fs</code> et montez-la avec <code>settrans -c dummy
/hurd/ext2fs `pwd`/dummy.fs</code>. Notez que le traducteur n'est pas
encore lancé, il n'y a pas de nouveau processus <code>ext2fs</code>
qui tourne (verifiez avec <code>ps Aux</code>). Vérifiez que tout est
correct en utilisant <code>showtrans</code>.</p>
<p>
Maintenant, tapez <code>ls dummy</code>, vous remarquerez un court
délai pendant que le traducteur démarre. Après cela, il n'y aura plus
de délais pour accéder à dummy. Sous Linux, on aurait dit que vous
avez automonté un système de fichiers <code>loop</code>. Vérifiez
avec <code>ps Aux</code> qu'il y a un processus <code>ext2fs dummy</code>
qui tourne. Maintenant, mettez quelques fichiers dans ce nouveau
répertoire. Essayez de passer ce système de fichier en lecture seule
avec <code>fsysopts</code>. Notez que de nouvelles tentatives d'écriture
échouent maintenant. Essayez de tuer le traducteur actif avec
<code>settrans -g</code>.</p>
<p>
Vous devriez commencer à comprendre ce qui se passe. Maintenant, rappelez-vous,
ce n'est qu'un seul serveur, le serveur Hurd ext2fs. Il existe de nombreux
autres serveurs dans le répertoire <code>/hurd</code>. Certains sont
pour des systèmes de fichiers. Certains sont nécessaires pour
des fonctionnalités des systèmes de fichiers, comme les liens.
Certains sont nécessaires pour les fichiers de périphériques. Certains
sont nécessaires pour le réseau. Imaginez que vous montez un serveur
FTP avec <code>settrans</code> et que vous téléchargez des fichiers
en utilisant simplement la commande <code>cp</code> standard. Ou bien
que vous éditez votre site web avec la commande 
<code>emacs /ftp/homepage.my.server.org/index.html</code> !</p>


Reply to: