Page suivante - Page précédente - Table des matières

2. Questions et réponses

2.1 Qu'est-ce qu'un serveur d'impression de fax

Un serveur d'impression de fax est une installation de quelques programmes: efax, et le serveur d'impression, de telle manière qu'envoyer un fax à partir de l'ordinateur est aussi simple qu'envoyer une impression à l'imprimante.

2.2 Comment l'installer ?

Installer efax comme serveur d'impression de fax comporte peu de problème. Comme j'ai travaillé dessus quelque fois, j'ai décidé de réunir ces connaissances dans ce petit mini-HOWTO, les commentaires sont les bienvenus à erez@newplaces.com.Je les décrits ici ainsi que les solutions, et toutes les instructions en quelques étapes:

Le logiciel efax

Assurez-vous que vous avez le progiciel efax.

Sur les systèmes qui reposent sur RPM utilisez la commande 'rpm -qv efax'.

Vous pouvez obtenir les sources d'efax en format tar.gz chez sunsite: ftp://sunsite.unc.edu/pub/Linux/apps/serialcomm/fax/efax08a.tar.gz ou le progiciel binaire en rpm: ftp://ftp.redhat.com/pub/redhat/redhat-4.2/i386/RedHat/RPMS/efax-0.8a-3.i386.rpm.

L'entrée printcap

Le documentation d'efax a oublié le : à la fin de l'entrée printcap.

Solution: ajouter ce qui suit à l'entrée /etc/printcap:

 fax:\
 :lp=/dev/null:\
 :sd=/var/spool/fax:\
 :if=/usr/bin/faxlpr:

La command fax

Uilisez des liens physique et non des liens symboliques à la commande fax.

Exécuter la commande:

 ln /usr/bin/fax /usr/bin/faxlpr

Le fichier /usr/bin/fax.

Editez /usr/bin/fax à votre convenance.

Choisir la bonne classe de votre modem:

 CLASS=2.0

Positionner le champ FROM="votre numéro de téléphone international"

 NAME="votre nom"

Ajouter la ligne de conversion du numéro de téléphone international en local, par exemple pour Israël vous pourriez utiliser:

 TELCVT='sed -e s/+972/0/ -e s/+/00/'  # Israel

Il y a un problème dans le fichier à la ligne 586, changer le cfile=... avec les deux lignes suivantes:

 cfile=`/usr/bin/tail -1 lock`
 cfile=`cat $cfile`

Aux lignes 586,587 il ne devriez pas y avoir le signe '-', les lignes sont

 0) echo "$l" | mail -s "fax to $num succeeded" $user@$host ;;
 *) echo "$l" | mail -s "fax to $num failed   " $user@$host ;;

Le répertoire /var/spool/fax

Créer le répertoire /var/spool/fax

 mkdir /var/spool/fax
 chmod 777 /var/spool/fax

Le fichier lock.

Le fichier lock (/var/spool/fax/lock) est créé avec des permissions incorrectes, utiliser les commandes suivantes pour les positionner correctement:

 touch /var/spool/fax/lock ; chmod 644 /var/spool/fax/lock

le fichier spécial /dev/modem

Le programme efax s'attend à un fichier device /dev/modem réél et ne fonctionnera pas avec des liens symobliques, donc créer un fichier device avec le même nombre majeur et le même mineur que /dev/cua? qui est connecté au modem. Le fichier devra avoir les permissions rw-rw-rw- pour autoriser n'importe quel utilisateur à utiliser le logiciel de fax.

 ls -lL /dev/modem
 rm /dev/modem
 mknod /dev/modem c Mj Mi
 chmod 666 /dev/modem

Mj est 5, et Mi est 64 pour cua0, 65 pour cua1 et ainsi de suite. Par exemple (pour cua1) :

 mknod /dev/modem c 5 65

Le répertoire /var/lock.

 chmod 1777 /var/lock

2.3 Comment l'utiliser, avec le serveur ?

Vous devez utiliser l'imprimante fax en utilisant l'option -P et l'option -J avec le numéro de fax.

Utiliser une des commandes lpr suivantes :

 lpr -Pfax -J <Numéro-De-Fax> [nom-de-fichiers]
 toute commande | lpr -Pfax -J <Numéro-De-Fax>

2.4 Où indique t on le numéro de fax destinataire ?

Après l'option -J.

2.5 Comment l'utiliser à partir d'autres unix ?

Ajouter les entrées suivantes dans le fichier /etc/printcap et le système client Linux, créer le répertoire de spool, et ainsi de suite...

 fax:\
 :sd=/var/spool/fax:\
 :mx#0:\
 :sh:\
 :rm=host.domain:\
 :rp=fax:

ajouter le nom de l'hôte client dans /etc/hosts.lpd sur la machine serveur de fax.

Utiliser comme précédemment.

Note:

La chaîne de caractère d'entête qu'efax ajoute aux pages des fax n'est pas effectué par l'utilisateur qui envoi le fax. (peut être mis à jour).

Utilisateurs de Caldera, LPRng

Le logiciel de contrôle d'impression LPRng utilise une méthode différente pour prendre en charge le fichier de contrôle.

Merci à Luca Montecchiani m.luca@usa.net, qui a trouvé le problème et la solution. Voici une mise à jour du fichier /usr/bin/fax. Les lignes suivantes remplacent les deux simples lignes de cfile=... aux lignes 586,587

 # Modified to work also with the LPRng package
 # Luca Montecchiani (08/11/97 m.luca@usa.net)
 if [ !-z "$CONTROL_FILE" ]
 then
 cfile=`cat tail -1 lock`
 cfile=`cat $cfile`
 else
 cfile=$CONTROL_FILE
 fi


Page suivante - Page précédente - Table des matières