Le Linux UUCP HOWTO

Vince Skahan, <vince@victrola.wa.com>, version française René Cougnenc.

v1.15, 29 Novembre 1995
Ce document décrit la configuration d'UUCP sous Linux. Vous devez lire ce texte si vous avez l'intention de vous connecter à des sites distants par UUCP, via un modem, une connexion directe ou l'Internet. Si vous n'avez pas besoin d'UUCP, oubliez ce document, il ne vous apportera rien.

1. Introduction

Le but de ce petit guide est de répondre à quelques questions revenant fréquemment à propos de l'utilisation d'UUCP sous Linux en général, et de certaines distributions de ce système en particulier.

Ce document, associé à ses équivalents "Mail-HOWTO" et "News-HOWTO" annule et remplace l'ancien fichier "UUCP-NEWS-MAIL-FAQ" qui était auparavant posté dans le forum Usenet comp.os.linux.announce.

1.1 Mises à jour de ce document

Les nouvelles versions de ce "Linux Installation HOWTO" seront périodiquement postées dans comp.os.linux, comp.os.linux.announce, et news.answers. Elle seront aussi disponibles pour le téléchargement sur différents sites FTP, dont sunsite.unc.edu:/pub/Linux/docs/HOWTO.

En ce qui concerne cette version française, la politique de mise à jour et de distribution reste encore à définir. Vous devriez pouvoir trouver ce document sur ftp.ibp.fr:/pub/linux/french/docs/HOWTO/ ainsi que ftp.loria.fr, et les différents miroirs accessibles par modem. Une version HTML sera bientôt installée sur http://www.freenix.fr.

1.2 Vos réactions

Vos avis sur ce document, positifs ou négatifs, m'intéressent. Contactez-moi par courrier électronique si vous trouvez des erreurs ou omissions.

Le traducteur n'est pas responsable du contenu, de la forme et du style rédactionnel de ce document. Seules les éventuelles fautes de frappe ou d'orthographe, ainsi que les possibles erreurs de traduction, lui incombent.

Je lis, mais ne réponds pas systématiquement au courrier que je reçois. Les demandes d'amélioration seront considérées et effectuées en fonction de leur intérêt, du temps disponible et de l'humeur du jour :-)

Les insultes sont directement dirigées sur /dev/null, ne vous fatiguez donc pas.

En particulier, l'arborescence de fichiers standard sous Linux est en perpétuelle évolution. Dans ce document, tout ce qui s'y réfère tient compte de l'état actuel de ce "standard" au moment où il est rédigé, et des chemins d'accès ou noms de fichiers que nous avons rencontrés le plus fréquemment dans les distributions courantes de Linux. Consultez la documentation de la distribution que vous utilisez en cas de doute.

Tout ce qui concerne le format de ce document concerne le coordinateur de l'équipe : Greg Hankins, dont l'adresse électronique est gregh@sunsite.unc.edu.

1.3 Informations légales

Le "Linux UUCP-HOWTO" est copyright (c)1994 Vince Skahan.

Les copies conformes peuvent être reproduites ou distribuées sous quelque forme que ce soit sans autorisation de l'auteur. Les traductions sont également autorisées sans accord préalable si elles comprennent une note déclarant qui a réalisé l'adaptation.

De courts extraits peuvent être utilisés sans le consentement de l'auteur. Les travaux dérivés ou distributions partielles doivent être accompagnés soit d'une copie complète de ce document, soit d'une indication permettant de se le procurer.

La diffusion commerciale est autorisée, et même encouragée ; toutefois l'auteur aimerait être tenu au courant de tout ce qui se fait en la matière.

En résumé, nous désirons promouvoir la diffusion de ces informations par le plus de canaux possibles. Toutefois, nous voulons conserver un copyright sur ces documents, et aimerions être informés de tout projet de distribution.

De plus, nous désirons que TOUTES les informations fournies par les "HOWTO" soient largement diffusées. Si vous avez des questions à poser, contactez Matt Welsh, le coordinateur du projet, à l'adresse mdw@sunsite.unc.edu, ou au +1 607 256 7372.

1.4 Responsabilités

Bien sûr, je déclare n'être en aucun cas responsable des problèmes pouvant être posés par l'utilisation de ce document. Tout ce que vous faites à partir de ce guide est à vos risques et périls.

1.5 Autres sources d'information

Les documents "Linux HOWTO"

Vous trouverez beaucoup d'informations de valeur dans les autres documents "HOWTO" de Linux, ainsi que dans les livres du groupe de documentation Linux ("Linux Doc Project"). En particulier, vous devriez jeter un oeil à ceci:

USENET

Vous trouverez la réponse à la plupart des questions que vous vous posez à propos de UUCP dans comp.mail.uucp.

Listes de diffusion

Il existe une liste de diffusion dédiée à Taylor UUCP.

Pour y souscrire (ou s'y désabonner), envoyez un courrier électronique à

              taylor-uucp-request@gnu.ai.mit.edu

Cette requête arrive à une personne physique, et non à un programme, aussi assurez-vous d'avoir bien précisé l'adresse à laquelle vous voulez recevoir la liste dans le corps de votre message.

Pour envoyer un message à la liste, envoyez-le à

             taylor-uucp@gnu.ai.mit.edu

Publications

Les versions V2 et HDB de UUCP sont documentées dans pratiquement toute documentation sur le sujet, ainsi que dans tout ouvrage traitant de la communication sous UNIX.

La configuration de type Taylor n'est pour l'instant décrite que dans les fichiers "Info" fournis avec les sources du programme. Vous pouvez les lire grâce à tout utilitaire prévu à cet effet, ou depuis l'éditeur de texte Emacs.

Voici une liste non exhaustive de quelques ouvrages pouvant vous aider:

1.6 Où NE PAS rechercher de l'aide

UUCP sous Linux n'a rien de particulier, et fonctionne exactement de la même manière que sur tout autre système UNIX. Par conséquent vous ne devez pas poser de questions générales sur UUCP dans les forums Usenet comp.os.linux.*.

Sauf si votre question est vraiment relative à Linux (par exemple, "quelles sont les options de compilation choisies dans le binaire fourni dans la distribution ZGRBGX de Linux"), vous devez la poser dans comp.mail.uucp ou dans la liste de diffusion citée plus haut.

Je répète et j'insiste :

Il n'y a aucune raison de poser des questions relatives à UUCP dans les groupes Usenet dédiés à Linux. Usenet comporte des forums dédiés à chaque sujet comme le courrier, les News, UUCP. Utilisez-les.

SI VOUS POSEZ DES QUESTIONS NON RELATIVES A LINUX DANS LES GROUPES LINUX, VOUS VOUS TROMPEZ D'ENDROIT. LES SPECIALISTES D'UUCP SE TROUVENT LA OU NOUS VENONS DE LE DIRE, ET N'UTILISENT GENERALEMENT PAS LINUX.

LES QUESTIONS N'AYANT RIEN A VOIR AVEC LINUX DANS LES HIERARCHIES DEDIEES A CE SYSTEME VOUS FERONT PERDRE VOTRE TEMPS, AINSI QUE CELUI DES AUTRES.

2. Matériel nécessaire

Il n'y a rien de vraiment spécifique à posséder pour utiliser UUCP sous Linux. Tout modem compatible HAYES donnera satistaction.

D'une façon générale, vous choisirez le modèle le plus rapide que vous puissiez vous payer. Il sera alors préférable de munir votre port série d'un UART 16550 pour dépasser les vitesses de 9600 bauds sans encombre.

Si vous ne comprenez pas ce que nous venons de dire, lisez le groupe Usenet comp.dcom.modems, les FAQ's sur les communications séries et autres documentations, pour vous renseigner.

3. Comment se procurer UUCP

Taylor UUCP (dont la version courante est 1.05) est disponible sur prep.ai.mit.edu sous sa forme originale, son code source, et diverses distributions de Linux en proposent des versions binaires toutes compilées.

L'archive newspak-2.4.tar.z contient des fichiers de configuration et de documentations relatifs à l'installation de UUCP, News, Mail sous Linux, à partir des nombreuses sources disponibles. On peut en général trouver ce fichier sur sunsite.unc.edu dans le répertoire /pub/Linux/system/Mail/news.

4. Installation des programmes

(L'essentiel de cette section est recopiée du fichier README des sources de Taylor UUCP v1.05, pour vous permettre de vraiment "lire la documentation" au lieu de nous contenter de vous le conseiller).

Le détail des instructions pour la compilation se trouve avec les sources, dans le fichier uucp.texi.

Vous pouvez récupérer des fichiers conf.h et policy.h "réputés corrects" pour Linux dans l'archive newspak citée plus haut. Dans ce cas, vous pouvez sans doute directement taper make.

4.1 Extraction des archives compressées

Pour extraire une archive tar compressée par gzip, je fais :

                gunzip -c fichier.tar.z | tar xvf -
Une version moderne de tar permet de faire :
               tar -zxvf fichier.tgz

4.2 Edition de Makefile.in pour spécifier les répertoires d'installation.

Ici, j'initialise prefix à /usr plutôt que la valeur par défaut de /usr/local

4.3 Lancer "configure"

Taper sh configure.

Le script configure va compiler un certain nombre de programmes tests pour voir ce qu'il est possible de faire sur votre système.

Il créera le fichier conf.h à partir de conf.h.in et le Makefile depuis Makefile.in. Il générera également config.status, qui est un shell-script qui permet de recréer la configuration.

4.4 Configuration des options du programme

Examinez conf.h et Makefile pour vérifier qu'ils sont corrects.

J'ai utilisé les valeurs par défaut.

Editez policy.h pour les besoins de votre système.

4.5 Compilation et installation des programmes

4.6 Les fichiers de configuration

Je vous recommande de commencer par prendre les bons vieux fichiers HDB fournis et de les installer.

4.7 Essayez la chose...

/usr/lib/uucp/uucico -r 1 -x 9 -s remote_system_name

Le paramètre -x 9 donne un maximum d'informations de déboguage, écrite en principe dans le fichier /usr/spool/uucp/.Admin/audit.local (ou dans /usr/lib/uucp/Log en configuration Taylor), qui aide beaucoup à la mise au point initiale.

J'utilise souvent -x 4 car ce niveau de déboguage détaille suffisament les choses pour verifier les problèmes de "login". Bien entendu, le fichier traçant tout cela doit être protégé de manière à ce que personne ne puisse le lire.

4.8 Ca ne marche pas. Que faire ?

En général, vous pouvez vous référer à la documentation mentionnée au début de ce guide pour trouver l'erreur. Vous pouvez aussi demander aux opérateurs des sites UUCP dont vous êtes voisins, mais souvent il ne s'agit que d'une simple faute de frappe dans un fichier de configuration.

5. Questions fréquemment posées à propos d'UUCP sous Linux

5.1 Pourquoi mon binaire de uucp est-il configuré en mode HDB plutôt qu'en Taylor ?

(Je sais que certains sont aussi intransigeants sur la facilité d'emploi, que je le suis sur le fait de rester standard. C'est pour cette raison que vous disposez du code source pour faire comme vous l'entendez :-) )

Parce que mon humble avis est que le standard "de fait" des implémentations d'UUCP, est le type HDB. Il y a des milliers de sites administrés par des opérateurs expérimentés et de nombreux endroits où vous pourrez trouver des informations incroyablement correctes à propos de la configuration HDB.

Les versions fournies avec certaines distributions de Linux sont compilées avec le support des trois modes possibles. Ca marche. Choisissez le vôtre.

L'ordre de recherche des fichiers de configuration est Taylor, puis V2 (L.sys) et enfin HDB. Vous pouvez utiliser l'utilitaire uuconv pour convertir les différents fichiers de configuration d'un type à l'autre.

Si vous ne pouvez pas attendre, prenez les sources d'UUCP et spécifiez HAVE_BNU_CONFIG, HAVE_V2_CONFIG et HAVE_TAYLOR_CONFIG, les trois à la fois, dans le fichier policy.h et tapez make.

Il faut également savoir que la distribution Slackware est configurée de telle sorte qu'elle sépare les fichiers nécessaires aux différentes configuration dans plusieurs répertoires. Par exemple, ceux pour HDB se trouveront dans /usr/lib/uucp/hdb_config.

5.2 D'où viennent ces timeout sur les connexions ?

5.3 Pourquoi l'UUCP Anonyme semble ne pas fonctionner en mode HDB ?

La version 1.04 incluse dans la distribution SLS de Linux ne fonctionne en anonyme qu'en mode Taylor, car elle est compilée avec HAVE_TAYLOR_CONFIG. Si vous voulez qu'elle marche en HDB, vous devrez la recompiler à partir des sources en définissant uniquement HDB. Ian Taylor est en train de réfléchir comment régler cette "caractéristique".

Par ailleurs, Taylor en mode HDB semble être très sensible aux espaces et lignes vides. Par sécurité, assurez-vous qu'il n'y a aucune ligne vide ou espace en fin de ligne dans le fichier Permissions.

Enfin, vérifiez que vous avez un fichier nommé remote.unknown dans /usr/lib/uucp et qu'il n'est PAS exécutable. Voyez le livre Managing UUCP and USENET de O'Reilly pour plus de détails à ce sujet.

5.4 Que signifie l'erreur no matching ports found ?

Vous êtes probablement en train d'essayer d'utiliser un périphérique qui n'existe pas (fichier /usr/lib/uucp/Devices), ou bien celui que vous avez spécifié dans /usr/lib/uucp/Systems ne correspond à aucun de ceux déclarés dans le fichier Devices.

Voici ci-dessous des versions saines de mes fichiers de configuration de Taylor UUCP 1.05 en mode HDB que vous pouvez en toute sécurité copier et utiliser.

Vous voyez le mot ACU dans Systems ? Cela détermine quel "port" utiliser dans Devices.

Vous notez le mot scout dans Systems ? Il indique quel composeur de numéro utiliser dans Dialers.

Si vous aviez un port ACU, mais qu'aucun ne correspondait au numéroteur précisé sur la même ligne dans Systems, vous avez eu ce message d'erreur.

5.5 Existe-t-il de "bons" fichiers de configuration pour le mode HDB ?

Ceux qui vont suivre sont "bons", pour Taylor-UUCP 1.05 sous Linux en mode HoneyDanBer. Tous ces fichiers doivent être dans /usr/lib/uucp sauf si vous avez bricolé les sources pour changer cette configuration de base.

Si vous avez déplacé les chemins d'accès standards, méfiez-vous car certains programmes comme sendmail peuvent être totalement perdus. Vous devez vous assurer que tous les programmes relatifs aux communications soient d'accord avec votre idée des répertoires "standard".

#------------- Devices -------------
# assurez-vous que le peripherique (ici cua1) est correct pour vous.
# cua1 = COM2
#
# Ici, "scout" est le modem Digicom Scout Plus 19.2 que j'utilise.
# tbfast, et la suite, correspondent a un modem Telebit Trailblazer Plus
# a differentes vitesses.
#
ACU cua1 - 19200 scout
ACU cua1 - 9600 tbfast
ACU cua1 - 1200 tbslow
ACU cua1 - 2400 tbmed

#------------- Dialers --------------
# Notez l'ajustement des registres du Trailblazer "au vol"
# "scout" est le modem Digicom Scout Plus 19.2 que j'utilise.
#
scout   =W-,    "" ATM0DT\T CONNECT
tbfast  =W-,    "" A\pA\pA\pT OK ATS50=255DT\T CONNECT\sFAST
tbslow  =W-,    "" A\pA\pA\pT OK ATS50=2DT\T CONNECT\s1200
tbmed   =W-,    "" A\pA\pA\pT OK ATS50=3DT\T CONNECT\s2400

#-------------- Systems -------------
# Voici une entree tres generale qui devrait fonctionner avec la plupart
# des systemes.
#
# Le Any;1 signifie que l'on peut appeler une fois par minute avec  -f (force)
# Le ACU,g force le protocole "g" au lieu du Taylor "i" par defaut.
#
fredsys Any;1 ACU,g 19200 scout5555555 "" \r ogin:--ogin: uanon word: uanon

#-------------------------------- Permissions -------------------------
#
# Taylor UUCP en mode HDB est sensible aux lignes vides.
# Verifiez bien que toutes les lignes sont valides ou bien commentees.
#       
# Voici une entree UUCP Anonyme
#
LOGNAME=nuucp MACHINE=OTHER \
READ=/usr/spool/uucp/nuucp \
WRITE=/usr/spool/uucp/nuucp \
SENDFILES=yes REQUEST=yes \
COMMANDS=/bin/rmail
#
#
# Voici une entree normale pour une machine distante connue qui nous
# appellera. Notez le chemin d'acces absolu a rnews, qui n'est pas
# du tout le chemin "standard".
#
LOGNAME=fredsys MACHINE=fredsys \
READ=/usr/spool/uucp/fredsys:/usr/spool/uucp/uucppublic:/files \
WRITE=/usr/spool/uucp/fredsys:/usr/spool/uucppublic \
SENDFILES=yes REQUEST=yes \
COMMANDS=/bin/rmail:/usr/local/lib/news/bin/rnews
#----------------------------------------------------------------------

5.6 Faire appeler différents numéros pour un même site par uucico

La version 1.05 implémente l'option -z dans uucico, pour lui permettre d'appeler alternativement différents numéros de téléphone pour un même site.

6. Remerciements

Les personnes suivantes ont aidé à rassembler les informations (et l'expérience) qui ont rendu ce document possible :

Ed Carp, Steve Robbins, Ian Taylor, Greg Naber, Matt Welsh, Pierre Beyssac.

Si j'ai oublié quelqu'un, je m'en excuse par avance.