<!doctype linuxdoc system>

<!-- LinuxDoc file was created by LyX 1.0 (C) 1995-1999 by <gaucher> Sun Oct 10 16:44:41 1999
 -->
 <article>
 <title>
News Leafsite mini-HOWTO
 </title>
 <author>
Florian Kuehnert, sutok@gmx.de
 </author>
 <date>
v0.3, 4 January 1998
 </date>
 <abstract>
Version française par Philippe Gaucher (gaucher@easynet.fr). Ce HOWTO vous
 aidera à mettre en place un petit site de news à l'aide du logiciel libre Leafnode.
 Pour toute question, suggestion ou tout commentaire, écrire à Florian Kuehnert (sutok@gmx.de).
 Vous pouvez aussi me signaler tous les problèmes que vous trouvez dans ce document.
 (C) 1998 by Florian Kuehnert.
 </abstract>
 <sect>
Pourquoi utiliser Leafnode ?
 <p>
Si vous voulez lire les news hors connexion sur votre ordinateur local,
 vous avez généralement à installer un logiciel de serveur de news comme INN
 ou CNews. Et vous avez également besoin d'une connexion nntp ou uucp pour alimenter
 ce serveur. Du fait que ces logiciels contiennent bien plus de fonctionnalités
 que nécessaire, les choses iront mieux en installant Leafnode.
 </p>
 <p>
Leafnode est vraiment plus simple à utiliser et est aussi très petit, mais
 il a quelques inconvénients&nbsp;: Leafnode est lent et il perd des messages dès
 qu'un problème se présente. C'est pourquoi vous ne devriez pas l'utiliser pour
 un gros serveur de news. Il est quand même approprié pour des utilisateurs
 privés qui ne veulent pas passer trop de temps à configurer INN.
 </p>
 <sect>
Où trouver Leafnode ?
 <p>
Leanode est disponible à <htmlurl url="ftp://ftp.troll.no/pub/freebies/" name="ftp://ftp.troll.no/pub/freebies/"> et a été développé par un employé de Troll Tech
 AS, Arnt Gulbrandsen. La version la plus récente est 1.4 et dans certaines
 distributions (comme par exemple la Debian), Leafnode est inclus. Quoi qu'il
 en soit, vérifiez que vous avez au moins la version 1.4 car des bugs assez
 graves avaient été corrigés.
 </p>
 <sect>
Comment l'installer ?
 <p>
Un fichier d'aide à l'installation est inclus dans le package. Mais faisons-la
 ensemble&nbsp;:-). Si une version supérieure ou égale à 1.4 de Leafnode est fournie
 avec votre distribution, il serait plus sage d'utiliser les binaires précompilés et
 de sauter les étapes 1 à 4.
 </p>
 <p>
1) Vérifiez qu'il n'y a pas d'autre serveur de news qui tourne sur votre
 machine. Quand vous tapez 
 </p>
 <p>
 <verb>
&dollar; telnet localhost nntp
 </verb>
</p> <p>
vous devez voir un message d'erreur. Si vous obtenez une connexion, retournez
 au prompt de votre shell, puis désinstallez INN, CNews ou tout logiciel du
 même type et commentez la ligne nntp dans /etc/inetd.conf.
 </p>
 <p>
2) Vérifiez qu'il y a un utilisateur appelé "news"&nbsp;: à regarder dans /etc/password.
 S'il n'existe pas, créez-en un ou bien tapez
 </p>
 <p>
 <verb>
&dollar; adduser news
 </verb>
</p> <p>
ou bien utilisez tout outil fourni avec votre distribution.
 </p>
 <p>
3) Décompressez la source&nbsp;: 
 </p>
 <p>
 <verb>
&dollar; tar xfz leafnode-1.4.tar.gz
 </verb>
</p> <p>
et placez-vous dans le répertoire source
 </p>
 <p>
 <verb>
&dollar; cd leafnode-1.4
 </verb>
</p> <p>
4) Compilez le programme et installez-le&nbsp;:
 </p>
 <p>
 <verb>
&dollar; make; make install
 </verb>
</p> <p>
5) Éditez /usr/lib/leafnode/config (il peut être à une autre place comme
 par exemple /etc/leafnode quand vous utilisez une version pré-compilée fournie
 avec votre distribution Linux). La ligne "server=" doit indiquer le serveur de
 news de votre FAI.
 </p>
 <p>
6) Éditez /etc/nntpserver. Il doit contenir le nom d'hôte local (localhost
 ou tout nom donné à votre ordinateur&nbsp;; la commande hostname devrait vous aider
 pour cela). Si dans un des fichiers de démarrage comme /etc/profile ou &tilde;/.bash_profile,
 la variable d'environnement correspondante est définie, vous devriez l'ajuster
 également au nom de votre ordinateur.
 </p>
 <p>
7) Éditez le fichier /etc/inetd.conf&nbsp;: soyez certain qu'il n'y a pas de
 ligne commençant par "nntp". S'il y avait une telle ligne, commentez-la en mettant
 un "&num;" au début. Puis ajoutez la ligne suivante&nbsp;:
 </p>
 <p>
 <verb>
nntp stream tcp nowait news /usr/sbin/tcpd /usr/local/sbin/leafnode
 </verb>
</p> <p>
Quand quelqu'un (par exemple vous&nbsp;:-)) se connecte à votre ordinateur par
 le port NNTP, Leafnode est lancé comme processus serveur.
 </p>
 <p>
8) Connectez-vous à votre FAI et lancez le programme "fetch" comme utilisateur root
 ou news. La première fois que fetch est lancé, il téléchargera une liste des groupes
 de nouvelles disponibles chez votre FAI. Cela peut prendre un certain temps&nbsp;; ça
 dépend de la vitesse de votre connexion et du nombre de groupes de nouvelles que
 votre FAI a dans son fichier "active" &lsqb;NdT&nbsp;: c'est le nom du fichier&rsqb;.
 </p>
 <p>
9) Démarrez votre lecteur de news préféré (slrn, (r)tin et knews ne sont pas de
 mauvais points de départ) et inscrivez-vous à tous les groupes de nouvelles que vous
 lisez. Veillez à ne pas seulement vous inscrire à ces groupes de
 nouvelles, mais aussi à entrer dedans, même s'ils sont vides.
 </p>
 <p>
10) Relancez "fetch" encore une fois pour télécharger tous les articles de tous
 les groupes de nouvelles qui vous intéressent.
 </p>
 <sect>
Comment maintenir leafnode ?
 <p>
Maintenant vous avez obtenu un serveur de news fonctionnel et qui tourne
 mais vous avez encore quelques petites choses à faire. Vous pouvez éditer le
 fichier /usr/lib/leafnode/config pour configurer les dates d'expiration de
 vos groupes de nouvelles. Ce nombre indique quand les vieux messages doivent être effacés.
 Le temps standard de 20 jours est bien souvent trop long si vous lisez des
 groupes avec un trafic conséquent&nbsp;; 4 jours ou une semaine sont dans la plupart
 des cas un bon réglage pour votre système. Vous pouvez changer la valeur pour
 tous les groupes ("expire=n" pour mettre tous les groupes à n jours), et vous
 pouvez dire à Leafnode de changer la date pour un groupe particulier en écrivant
 groupexpire foo.bar n pour régler le délai d'expiration du groupe foo.bar
 à n jours. 
 </p>
 <p>
Ce réglage seul ne fera pas supprimer les messages par Leafnode. Un programme
 séparé s'en charge&nbsp;: texpire. Il peut être lancé par cron ou en ligne de commande.
 Si votre ordinateur est allumé en permanence, vous avez la possibilité d'ajouter
 la ligne suivante au fichier crontab de news (pour l'éditer, en tant qu'utilisateur
 news tapez "crontab -e", ou bien tapez sous root "crontab -u news -e")&nbsp;: 
 </p>
 <p>
 <verb>
0 19 * * * /usr/local/sbin/texpire
 </verb>
</p> <p>
Cette ligne a pour conséquence que le daemon cron déclenchera texpire chaque
 jour à 19:00. Reportez-vous à la page man de crontab pour d'autres réglages.
 Si votre ordinateur n'est pas constamment allumé, vous avez la possibilité
 de démarrer texpire de temps en temps manuellement, quand vous remarquez que
 fetch devient plus lent. Cela fonctionne aussi bien que le lancement par cron.
 </p>
 <sect>
Comment ça marche ?
 <p>
Leafnode est un "vrai" serveur NNTP, ce qui signifie que vous pouvez également
 vous y connecter à partir d'un autre ordinateur (via Internet ou un réseau local,
 etc.). À chaque fois que vous entrez dans un groupe de nouvelles avec votre lecteur
 de news, votre lecteur envoie l'information à Leafnode et lui demande. Si le
 groupe n'existe pas, Leafnode crée un fichier vide nommé comme le groupe dans 
 /var/spool/news/interesting.groups. Quand vous actionnez fetch la fois suivante, les messages
 du groupe sont téléchargés. Si un groupe n'a pas été lu depuis un certain
 temps, Leafnode arrêtera de le télécharger et supprimera son nom dans /var/spool/news/interesting.groups.
 Si vous vous abonnez à un groupe à fort trafic par accident, vous avez aussi
 la possibilité de supprimer ce fichier manuellement pour que vous n'ayez pas
 à télécharger tous ses articles pour toute la semaine suivante. 
 </p>
 <p>
Une semaine n'est pas assez pour vous&nbsp;? Vous voulez partir en vacances et
 continuer à recevoir les news&nbsp;? Malheureusement il n'y a pas d'options dans
 Leafnode pour changer cela. Mais vous pouvez éditer le fichier leafnode.h et
 tout recompiler. Les constantes &num;defined sont TIMEOUT_LONG et TIMEOUT_SHORT&nbsp;:
 augmentez juste le temps d'une seconde. Une autre solution, plus simple, est
 de définir une tâche cron chaque nuit qui fait &dquot;touch /var/spool/news/interesting.groups/*&dquot;.
 
 </p>
 <p>
Si vous voulez obtenir une liste de tous les groupes de nouvelles disponibles sur
 le serveur de news qui vous alimente (par exemple quand vous voulez lire un
 nouveau groupe), il suffit de supprimer le fichier /var/spool/news/active.read.
 La commande fetch le recréera la fois suivante et téléchargera à nouveau la liste des
 groupes. Fetch relira également la liste des groupes de temps en temps donc
 a priori vous n'avez pas à le faire manuellement.
 </p>
 <sect>
Quel lecteur de news devrais-je utiliser ?
 <p>
Il n'y a pas "un" lecteur de news dédié à Linux, de la même façon qu'il n'y
 a pas "un" éditeur. Mon lecteur de news préféré est emacs en mode gnus qui est
 le lecteur le plus configurable de Linux. Beaucoup de gens utilisent slrn et
 tin en terminal, beaucoup de gens utilisent knews sous X. Il y a aussi trn,
 nn et encore beaucoup d'autres, si bien que vous pouvez essayer celui que vous
 voulez. Le seul lecteur que vous ne devriez pas utiliser est Netscape&nbsp;: il
 est gros, sans fonctionnalité, et de temps en temps, il crée des problèmes
 dans les news. Cela dit, c'est à vous de décider.
 </p>
 <p>
N'importe comment, knews n'est pas une mauvaise idée pour une première
 expérience car il est très agréable à utiliser et facile à comprendre.
 </p>
 <sect>
Où trouver plus d'informations&nbsp;?
 <p>
De la documentation est fournie dans le package Leafnode (lisez les fichiers
 INSTALL et README, les sources sont également très intéressantes). Si vous
 voulez en savoir plus sur les "gros" serveurs de news plus "professionnels", lisez
 la FAQ de INN (elle est fournie dans le package INN). Pour avoir plus d'informations
 sur votre lecteur de nouvelles, tapez "man le_nom_de_votre_lecteur" ou regardez ce
 que vous pouvez trouver dans /usr/doc.
 </p>
 <p>
Si vous avez des questions concernant le système de news, demandez dans
 un groupe de nouvelles approprié (regardez dans la hiérarchie news.software.ALL). &lsqb;NdT&nbsp;:
 en France, essayez le forum modéré fr.usenet.logiciels&rsqb;.  ## fr.* n'est en aucun cas une 
                                                                ## hiérarchie *_française_*, ni 
                                                                ## localisée sur le territoire
                                                                ## français.
 </p>
 <p>
Pour toute question, correction ou tout commentaire concernant ce HOWTO, écrivez-moi 
(sutok@gmx.de).
 </p>
 <sect>
Remerciements
 <p>
J'aimerais remercier Michael Schulz (michaels@home.on-luebeck.de) pour
 son aide concernant les problèmes de langage et Cornelius Krasel (krasel@wpxx02.toxi.uni-wuerzburg.de)
 pour ses remarques finales.
 </p>


 </article>
