SCANNER EN TANT QU'UTILISATEUR AVEC UN SCANNER SUR PORT PARALLELE
par Christian Chartier
A  r  t  i  c  l  e  s 





Introduction
Partie 1
Partie 2
Conclusion
Retour Index

Passons à la pratique

Pour cet exemple de configuration, nous utiliserons le scanner Umax 2000P, mais la configuration décrite a été également testée avec succès avec un scanner Mustek sur port parallèle (avec le backend mustek_pp). Si vous avez un autre modèle de scanner supporté par sane, remplacez dans ce qui suit le backend umax_pp par celui correspondant à votre modèle de scanner.

Nous utiliserons la distribution Mandrake 8.2. Cette distribution étant basée sur une Red Hat, ces informations devraient pouvoir être transposées sur toute distribution basée sur la Red Hat.

Toutes les manipulations d'installation de packages et de modification des fichiers de configuration doivent être effectués en tant que superutilisateur (root).

Pour cela, ouvrir une console et taper :

su

puis le mot de passe de root.

Installer sane :

Le backend nécessaire au scanner umax 2000P livré avec la version 1.07 de sane figurant sur les CD de la Mandrake 8.2 comporte un bug (corrigé depuis, mais je ne crois pas qu'il existe un package à jour). Il ne faut donc pas installer cette version de sane. Si vous l'avez déjà installée, commencez par la désinstaller.
rpm -e sane-backends
rpm -e libsane1

Installer la version 1.05 (présente sur les CD de la mandrake 8.1 ou téléchargeable sur internet : faire une recherche sur www.rpmfind.net).

Vous pouvez par contre installer la version de xsane de la mandrake 8.2 (version 0.84).

1 – télécharger sane (ou le récupérer sur les CDs de la Mandrake 8.1) et xsane
Il vous faut les packages sane-backends, libsane1 et xsane.
Créez un répertoire de travail, et copiez-y les trois packages.

2 – installer sane
Placez vous dans le répertoire contenant les trois packages , puis installez-les en tapant les commandes :

rpm -ivh libsane*.rpm
rpm -ivh sane*.rpm
rpm -ivh xsane*.rpm

ou plus rapidement :
rpm -ivh *.rpm --nodeps

2 bis – vérifier si les packages nécessaires sont bien installés

rpm -qa | grep sane

Vous devez voir les trois packages ci-dessus.

3 – configurer le backend umax_pp

Configurer le port parallèle sur lequel est connecté votre scanner. Il vous faut pour cela modifier à l'aide d'un éditeur de texte (vi ou kedit ou autre) le fichier /etc/sane.d/dll.conf comme suit (si votre scanner est connecté au premier port parallèle) :

# DEVICES #

# specify the port your scanner is connected to. Possible are 0x378 (lp0)
# 0x278 (lp1)
port 0x378

Configurer le modèle de votre scanner

# model number
#
# valid values are 610, 1220, 1600 and 2000
#
option astra 2000

N'oubliez pas d'enregistrer vos modifications !

4 – configurer sane

Pour cela, éditez le fichier /etc/saned.d/dll.conf et décommentez les lignes net et umax_pp (toutes les autres lignes peuvent être commentées ou même supprimées)

Pour décommenter : enlever le # en début de ligne – pour commenter : mettre un # en début de ligne.

# enable the next line if you want to allow access through the network:
net
# abaton
# agfafocus
# sm3600
# snapscan
.....
# sp15c
# tamarack
# umax
umax_pp
# v4l

N'oubliez pas d'enregistrer vos modifications !

5 – tester le scanner en lançant un scan en tant que root (après avoir connecté et mis sous tension le scanner !) en tapant :

xsane

si le scanner est reconnu par sane, vous devriez voir apparaître l'écran principal de xsane. Sinon, vous aurez un message d'erreur : xsane : aucun périphérique disponible. Revoyez votre configuration depuis le point 2bis.

Si le scanner est bien trouvé, quittez xsane et passez aux points suivants :

6 - configurez le backend net

Pour cela, éditez le fichier /etc/sane.d/net.conf et décommentez la ligne localhost :

# This is the net config file.  Each line names a host to attach to.
# If you list "localhost" then your backends can be accessed either
# directly or through the net backend.  Going through the net backend
# may be necessary to access devices that need special privileges.
localhost

N'oubliez pas d'enregistrer vos modifications !

7 - configurez saned

Pour cela, éditez le fichier /etc/sane.d/saned.conf et décommentez la ligne localhost :

#
# saned.conf
#
# The contents of the saned.conf file is a list of host
# names that are permitted by saned to use local SANE
# devices in a networked configuration.  The hostname
# matching is NO LONGER case-sensitive.
#
#scan-client.somedomain.firm
localhost
#

N'oubliez pas d'enregistrer vos modifications !

8 – rajouter le service sane dans /etc/services

Pour cela, ouvrez le fichier /etc/services avec un éditeur de texte et rajoutez la ligne décrivant le service sane (vers la fin du fichier) :

.......
x11-ssh-offset    6010/tcp            # SSH X11 forwarding offset
sane        6566/tcp            # Network Scanner daemon
ircd        6667/tcp            # Internet Relay Chat
ircd        6667/udp            # Internet Relay Chat
.......

N'oubliez pas d'enregistrer vos modifications !

9 – créez un fichier /etc/xinetd.d/sane contenant les lignes suivantes :
# default: on
service sane
{
        port    = 6566
        socket_type     = stream
        wait    = no
        only_from = localhost
        user    = root
        server  = /usr/sbin/saned
        log_on_failure  += USERID
        disable = no
}

N'oubliez pas d'enregistrer le fichier !

Notez bien les lignes suivantes :
only_from = localhost précise à partir de quelle machine le service sane peut être lancé. Ici on n'autorise le lancement du service qu'à partir de la machine elle-même (localhost). Si vous vouliez scanner à partir d'un autre poste de votre réseau local, il vous faudrait mettre ici les noms ou adresses des machines autorisées, ou du réseau autorisé.
user = root précise que le programme (désigné à la ligne server = ) sera lancé en tant que root
disable = no précise que le service n'est pas désactivé (donc qu'il est activé !)

10 – vérifiez que xinetd est bien lancé au démarrage (avec drakxservices ou linuxconf ou tout autre utilitaire de configuration des services), ou plus simplement en tapant :

chkconfig –list xinetd

le service doit être actif dans les runlevels (niveaux d'exécution) 3, 4 et 5.

Si xinetd n'est pas actif, tapez :

chkconfig –add xinetd

11 – lancez ou relancez le service xinetd :

Si xinetd n'était pas actif, tapez :

service xinetd start

S'il était actif, tapez :

service xinetd restart

12 – repassez en mode utilisateur :

exit

13 – lancez xsane

xsane

si le scanner est reconnu par sane, vous devriez voir apparaître l'écran principal de xsane. Sinon, vous aurez un message d'erreur : xsane : aucun périphérique disponible. Revoyez votre configuration depuis le point 5.