<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE article PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
  "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">

<article lang="fr">

<!-- Header -->

<articleinfo>

<!-- title of HOWTO, include the word HOWTO -->

<title>Guide d'utilisation d'un scanner</title>
<author><firstname>Howard</firstname><surname>Shane</surname>
        <affiliation>

                <address><email>hshane[AT]austin.rr.com</email></address>
        </affiliation>
</author>

<!--revision history-->

<revhistory>

        <revision>
        <revnumber>1.05</revnumber>
        <date>15-01-2004</date>

        <authorinitials>jhs</authorinitials>
        <revremark>Quelques corrections et mises à jour</revremark>
        </revision>
        
        <revision>
        <revnumber>1.0</revnumber>
        <date>19-08-2003</date>
        <authorinitials>tm</authorinitials>

        <revremark>Version initiale, révisée par LDP</revremark>
        </revision>
   
        <revision>
        <revnumber>0.04</revnumber>
        <date>07-2003</date>
        <authorinitials>jhs</authorinitials>
        <revremark>Version clarifiée, révisée et éditée après demande de retour d'expérience auprès des participants à la mailing list SANE-devel</revremark>

        </revision>

        <revision>
         <revnumber>0.01</revnumber>
         <date>06-2003</date>
         <authorinitials>jhs</authorinitials>
          <revremark>Version brouillon</revremark>

      </revision>
</revhistory>
<!--toute révision supplémentaire des historiques précédents doit se situer ici-->

<!--abstract-->

<indexterm>
<primary>Le scanner</primary>
</indexterm>

<abstract><para>

Ce document a été conçu pour décrire les étapes nécessaires pour l'accès
à un scanner et son utilisation sur un système tournant sous Linux. 

</para></abstract>

</articleinfo>

<!--Section 1: Introduction -->

<sect1 id="intro">
<title>Introduction</title>
<indexterm><primary>>disk!introduction</primary></indexterm>

<para>
Ce document a été écrit pour aider l'utilisateur Linux dans le paramétrage de son scanner, y compris les scanner à plat, à main, caméras vidéo, appareils de photographie numérique, périphériques de capture de trames vidéo et cætera.


Il n'a pas pour objet de vous indiquer le bon programme pour atteindre un résultat d'image particulier, ni de vous aider à utiliser au mieux les paramètres de votre scanner. 

Pour cela, il vous suffira de consulter la documentation accompagnant votre application ainsi que le mode d'emploi de votre périphérique.
</para>

<para>

Enfin, ce document ne répond pas non plus à la question&nbsp;: <quote>Quel
scanner choisir&nbsp;?</quote>

La réponse est fonction de ce que vous attendez d'un scanner. 

Je vous suggère de jeter un oeil à la liste des matériels compatibles
Linux au chapitres suivants&nbsp;: <xref linkend="interfaces"/> et <ulink
url="http://www.xs4all.nl/~ljm/SANE-faq.html#buying">ici</ulink>, au
sein de la FAQ du projet SANE</para>

<!-- Section2: Politique de distribution -->

<sect2 id="copyright">
<title> Politique de distribution </title>
<para>
Copyright 2004 Howard Shane.

</para>
<para>

Il est permis de copier, distribuer, et de modifier ce document suivant
les termes de la licence de documentation libre GNU, version 1.2 ou tout
autre version suivante publiée par la Fondation du Logiciel Libre
(<foreignphrase>Free Software Foundation</foreignphrase>) exempte de
Invariant Sections, de texte de couverture, ou de
4<superscript>e</superscript> de couverture. 

Un exemplaire de la license en question peut être trouvée au chapitre
suivant&nbsp;: <xref linkend="gfdpl"/>.

</para>
</sect2>

<sect2 id="disclaimer">
<title>Avertissement</title>

<para>

L'auteur est dégagé de toute responsabilité par rapport au contenu de ce document. 

L'utilisation des concepts, exemples et autres éléments de ce document se fera sous votre entière responsabilité.

Ce document étant une nouvelle version, il se peut que certaines inexactitudes techniques ou autres provoquent une erreur système, l'endommagement de votre matériel ou la perte irréversible de vos données. 

Nous vous conseillons la plus grande prudence, et vous avisons que, même si des erreurs sont improbables, l'auteur n'en saurait être tenu responsable d'aucune manière.

</para>

<para>

Tout copyright réservé, sauf indication contraire. 

L'utilisation de certains mots dans ce document ne saurait être considérée comme portant atteinte à la validité d'aucune marque ou service.

</para>

<para>
Nommer certains produits ou marques ne saurait être considéré comme de la publicité.
</para>
</sect2>

<sect2 id="newversions">

<title>Nouvelles versions</title>
        <indexterm>
        <primary>(your index root)!news on</primary>
        </indexterm>

<para>
Cette version est la version initiale.
</para>

<para>
La dernière version de ce document est disponible <ulink url="http://www.hshanemd.net/docs/HOWTOS/Scanner/">ici</ulink>.</para>

</sect2>

<!-- Section2: Crédits -->

<sect2 id="credits">
<title>Crédits</title>
<para>
Je souhaite remercier Oliver Rauch, Henning Meier-Geinitz, Jonathan Buzzard, Laurent-jan, Jochen Eisinger et tant d'autres qui ont participé au développement du projet SANE et/ou ont contribué à la mailing list de ce projet, sans qui ce document aurait eu beaucoup de difficultés à voir le jour, voire n'aurait jamais été édité. J'aimerais aussi remercier les nombreuses personnes qui ont pris le temps de m'envoyer par mail de nouvelles informations et leurs corrections.</para> 

<para>
Je souhaite aussi remercier Marla pour avoir gentiment supporté que je passe tant de temps à la rédaction de ce projet. 

</para>
</sect2>

<sect2 id="feedback">
<title>Retour d'expérience</title>

<para>

Merci de m'indiquer vos corrections ou tout élément manquant à l'adresse
suivante&nbsp;:

<email>hshane CHEZ austin POINT rr POINT com</email>. 

Puisqu'il s'agit de la première version, je suis tout particulièrement
intéressé par toute correction. N'hésitez surtout pas à me contacter si
j'ai commis une erreur ou si certains éléments nécessitent une mise à
jour. 

Dites-moi aussi s'il existe certains raccourcis, outil ou élément
d'information qui pourrait aider les utilisateurs, et mériterait d'être
inclus à la présente documentation. 

Je vous prie de m'en excuser, mais je ne pourrai pas répondre aux
questions techniques ou demande d'aide du style <quote>aidez-moi,
SVP&nbsp;!</quote> concernant les scanners&nbsp;; tout envoi de mail à
ce sujet sera orienté vers <filename>/dev/null</filename>; pour toute
source d'aide, y compris les aides en ligne, veuillez consulter le
chapitre <xref linkend="lists"/>, mais seulement après avoir consulté
les pages de ce document dans leur entier. 

Je ne suis pas un expert en scanner, et je ne possède pas tous les
modèles disponibles pour les tester chez moi. 

Ma contribution au support technique pour les scanners sous Linux se
limite à la compilation de ma propre expérience avec les très nombreuses
données des autres, afin de donner naissance à un guide pratique
succinct mais je l'espère très utile.

</para>
</sect2>

<sect2 id="conventions">
<title>Conventions adoptées dans ce document</title>
<para>
Les conventions suivantes ont été adoptées dans ce document et sont détaillées ici pour tous ceux qui n'auraient pas une vision claire de la façon dont on doit utiliser le mode ligne de commande sous Linux, qui se fait presque toujours par console.</para>
<para>

Tout d'abord, les noms de fichiers sont indiqués de la façon
suivante&nbsp;: <filename>/chemin/fichier</filename>

</para>

<para>

Les commandes sous Linux sont exécutées (ou "appelées") sur console, par
ce que l'on appelle des "lignes de commande". 

Si vous êtes en mode non-graphique (mode texte), le prompt vous
apparaîtra avec un signe dollar&nbsp;: <screen>$</screen>..., ou un
dièse&nbsp;: <screen>#</screen>... si vous vous êtes connecté comme
super-utilisateur ou si vous disposez des droits correspondants. 

Vous pouvez aussi accéder à la console dans le système X window, connu
autrement sous le nom X ou X11, avec <ulink
url="http://invisible-island.net/xterm/">xterm</ulink> ou un terminal
d'émulation similaire. 

Les commandes à utiliser sur console, mais sitées dans un paragraphe de
ce document, se présentent ainsi&nbsp;: <command>faites ceci</command>.

</para>

<para>

Les commandes ainsi que leur résultat seront représentées par des
captures d'écran&nbsp;:</para>

<para>
<screen>$ date
Sun Jul 27 22:37:11 CDT 2003</screen></para>

<para>

Quand une commande apparaît avant un prompt, (par exemple&nbsp;:
<command>$ date</command> ci-dessus), il est supposé que la touche
[Return] ou [Enter] a été relâchée après la commande, éventuellement
suivi du résultat (par exemple une date).

</para>

</sect2>
</sect1>

<!-- Section1: introduction: END -->
<!-- Section1 begins-->

<sect1 id="interfaces">
<title>Prise en charge générale et type d'interface</title>
<para>
Ce document traite de quatre principaux types d'interface scanner: les interfaces SCSI, USB, port parallèle, et IEEE 1394. 

La plupart des scanners sont compatibles avec Linux, comme indiqué au lien&nbsp;<ulink url="http://www.sane-project.org/">SANE</ulink>. 

Mais ce n'est pas la même chose avec <ulink url="http://www.twain.org/index.html">TWAIN</ulink>, avec lequel vous devriez être plus familier si vous avez déjà utilisé un scanner sous un autre système d'exploitation comme <trademark>Microsoft Windows</trademark>. 

Le protocole le plus récent permet de marier le driver et l'interface utilisateur de façon à ce que sont utilisation soit impossible en dehors de son environnement graphique propriétaire. 

Ainsi, SANE, ou Utilisation Aisée d'un Scanner (<foreignphrase> Scanner Access Now Easy</foreignphrase>, a été conçu pour une utilisation sous l'environnement Unix, même s'il ne s'y limite absolument pas. 

Le standard SANE permet la modularité au moment où le driver rencontre l'application, et améliore grandement la flexibilité et la portabilité. 

Avec SANE , il vous est possible de scanner en ligne de commande, de concevoir votre propre interface  pour utiliser  les pilotes SANE, accéder à votre (vos) scanner(s) via un réseau, et même contrôler vos caméras et autres périphériques comme indiqué à <ulink url="http://www.thedirks.org/v4l2/">video4linux</ulink> pour faire des acquisitions photographiques.

Ainsi, SANE est Sain, là où TWAIN ne l'est pas.

</para>

<para><emphasis>NOTE: Avant de poursuivre votre lecture, visitez la page SANE à l'adresse <ulink url="http://www.sane-project.org/sane-mfgs.html">http://www.sane-project.org/sane-mfgs.html</ulink> pour vérifier la compatibilité de votre scanner. 

Autrement, vous pouvez consulter la page <ulink url="http://www.sane-project.org/cgi-bin/driver.pl">moteur de recherche des scanners compatibles SANE</ulink>.</emphasis>
</para>

<para>
Si vous possédez un périphérique intégré, i.e. qui permet de scanner, imprimer, et envoyer des fax, vous pouvez suivre les étapes suivantes pour le scanner en choisissant la bonne interface, comme si vous l'utilisiez comme un scanner standard. 

Ceux qui possèdent un HP officejet doivent se reporter au <ulink url="http://hpoj.sourceforge.net/"> Drivers du projet HP Officejet Linux,</ulink> qui décrit dans le détail la façon d'obtenir les diverses fonctions de ce périphérique intégré sous Linux.</para>

<sect2 id="scsi-type">
        <title>Scanners SCSI</title>
<para>
Ces scanner sont pilotés par un contrôleur SCSI. 

De façon générale, on peut partir du principe que tous les scanners SCSI sont compatibles avec Linux, à partir du moment où le SCSI est pris en charge. 

Vous pouvez consulter <ulink url="http://tldp.org/HOWTO/Hardware-HOWTO/scsi.html">Le guide des matériels équipés de contrôleurs SCSI</ulink> si vous n'êtes pas sûr de la compatibilité de votre matériel SCSI. 

Si votre contrôleur SCSI a été livré avec le scanner, il y a des chances pour que votre matériel ne soit pas compatible du tout, ou seulement partiellement, le contrôleur SCSI ne possédant pas toutes les fonctions habituelles.
</para>

<para>
Exécutez la commande <command>man sane-scsi</command> si vous rencontrez des problèmes lors de la configuration de votre scanner SCSI</para>

</sect2>

<sect2 id="usb-type">
        <title>Scanners USB</title>
<para>
Vous savez probablement déjà à quoi ressemble un connecteur USB et où il se branche.

Si vous possédez un scanner USB, il est très probablement compatible avec Linux. 

Vous trouverez des informations pour rendre actif le sous-système USB
ainsi que la prise en charge USB du scanner au chapitre <xref
linkend="ossupport"/>.

</para>
</sect2>

<sect2 id="parport-type">
        <title> Scanners Port Parallèle</title>

<para>Les scanner port parallèle en général peuvent être mis en service avec un pilote compatible. Cela dit, si votre périphérique possède aussi un port USB (ce qui est le cas dans la majorité des cas pour des scanners récents) et un backend USB qui fonctionne, je vous conseille vivement de l'utiliser prioritairement, la configuration étant plus facile dans ce cas. 

Si votre scanner n'a qu'une interface port parallèle et un contrôleur
propriétaire ou non standard, il se peut que vous n'ayez pas de
compatibilité. Si vous trouvez quelque part un pilote pour cette
interface port parallèle, allez voir le chapitre <xref
linkend="parport-general"/>.

</para> 
</sect2>

<sect2 id="IEEE1394">
<title>IEEE 1394 (<trademark>Firewire</trademark>, <trademark>i.Link</trademark>)</title>
<para>
Certains scanner IEEE 1394 sont compatibles au moment où j'écris ces lignes, notamment ceux fabriqués par Nikon et Epson. 

L'interface IEEE 1394 est prise en charge depuis les versions Linux basées sur la version 2.4 du noyau. 

Si votre noyau prend en charge l'interface IEEE 1394, veuillez vous
rendre au chapitre du fabriquant pour trouver les matériels compatibles
SANE <xref linkend="interfaces"/>, et lire les pages d'explications
relatives à votre matériel, s'il en existe.

</para>
</sect2>

<sect2 id="ossupport">
<title>Prise en charge par le système d'exploitation</title>
<para>Si vous ne disposez pas d'une interface USB, passez au chapitre 
<xref linkend="kernel"/>. Si votre équipement dispose d'un port 
parallèle, passez au chapitre <xref linkend="parport-general"/>.</para>
</sect2>

<sect2 id="libusb"> <title>Scanners USB et Libusb</title> <para> Ce
chapitre fut intitulé en son temps <quote>Prise en charge de l'interface
USB du scanner par le noyau</quote> (<quote>USB Scanner Kernel
Support</quote>), mais l'apparition de <ulink
url="http://libusb.sourceforge.net/">libusb</ulink> a permis de se
passer de la compatibilité avec le noyau. 

Pour plus d'informations, faites la commande <command>man
sane-usb</command>. 

Si vous souhaitez une prise en charge plus conventionnelle par le noyau
pour votre scanner USB, passez au chapitre <xref linkend="usb-kernel"/>. 

À ce jour, la plupart des distributions, dans leur forme stable,
proposent libusb (certaines l'installent même pas défaut). Ainsi, si
votre interface USB n'est pas prise en charge par votre noyau, il vous
suffira d'installer le package libusb pour mettre en service votre
matériel. 

Vous devez activer dans le noyau la prise en charge pour votre système
de fichier pour les périphériques USB, ce que la plupart des
distributions font automatiquement. 

Pour en être sûr, lancez la commande suivante&nbsp;:


</para>

<para>
<screen>$ cat /proc/filesystems</screen>
</para>

<para>

Vous devez obtenir, entre autres&nbsp;:

</para>

<screen>
nodev   usbdevfs
nodev   usbfs
</screen>

<para>

Il vous sera peut être demandé de monter usbdevfs pour l'activer et
consulter les fichiers spécifiques au périphérique, ce que vous pouvez
faire en faisant&nbsp;: <command>mount -t usbdevfs none
/proc/bus/usb</command>. 

N'essayez pas d'utiliser libusb alors que la prise en charge par le
noyau est active ou en cours de chargement. Vous ne devez les utiliser
que l'un après l'autre.

</para>

<para>

Vous obtiendrez le package libusb dans le format
<filename>.rpm</filename>, <filename>.tgz</filename> ou
<filename>.deb</filename> à partir de votre distribution Linux.

Si vous envisagez de compiler vous-même vos propres binaires SANE à
partir d'une source contenant la prise en charge libusb, vous aurez
aussi besoin d'installer le package

<filename>libusb-dev</filename>.

</para>

</sect2>
 
<sect2 id="kernel">
<title>La prise en charge de votre scanner par le noyau Linux</title>
<para>La prise en charge par le noyau est impérative pour les interfaces USB, SCSI et port parallèle (si vous n'utilisez pas libusb). 

Votre noyau doit déjà contenir tout ce qu'il faut pour une prise en charge correcte, le moyen de le savoir étant de lancer la commande <command>dmesg</command> et de vérifier que le driver en question est bien lancé au démarrage. 

Si vous ne le voyez pas apparaître, c'est que le driver doit être présent sous forme de module, mais pas nécessairement chargé. 

Pour le vérifier, lancez la commande suivante&nbsp;:</para>

<screen>

$  ls -R /lib/modules/X.XX/kernel/drivers
</screen>

<para>où 'X.XX' est le numéro de version de votre noyau. 

Voici un exemple de résultat obtenu pour un noyau prenant en charge un scanner USB (j'ai supprimé toutes les lignes inutiles pour rester concis):</para>

<para>
<screen>
./usb:
scanner.o
usbcore.o
</screen></para>

<para>

<emphasis>(un truc pour les débutants&nbsp;: si les infos de dmesg ou
dans le module ci-dessus défilent trop vite, complétez la commande avec
le 'less' (ou 'more' si vous n'en avez pas assez): <command>ls -R
/lib/modules/X.XX/kernel/drivers | less </command> ou alors enregistrez
les données en question dans un fichier de la façon suivante:

<command>ls -R /lib/modules/X.XX/kernel/drivers > fichier.txt</command>,
où 'fichier.txt' contiendra toutes les informations voulues, et sera
accessible en lançant la commande
<command>cat [fichier] | less</command>.)</emphasis>

</para>

<para>The following information is arranged on the basis of scanner interface type. 

Si votre noyau ne contient pas les éléments de prise en charge adéquats, il vous est toujours possible de le recompiler. 

Si la compilation d'un noyau ne vous est pas familière, dirigez-vous vers <ulink url="http://www.tldp.org/HOWTO/Kernel-HOWTO.html">Guide du noyau</ulink> (<foreignphrase>Kernel HOWTO</foreignphrase>) pour plus d'informations. 
</para>

<sect3 id="scsi-kernel">

        <title>Prise en charge de scanners SCSI par le noyau</title>
<para>
Si, en lançant <command>make config</command>, <command>make menuconfig</command> ou <command>make xconfig</command> etc., vous remarquez que vous disposez d'une interface SCSI, sachez qu'en plus de la prise en charge de votre adaptateur SCSI, vous devez aussi activer la prise en charge des drivers génériques SCSI. 

De tels drivers génériques sont souvent <command>/dev/sg0, /dev/sg1</command>.... 
A partir du moment où vous savez déjà si votre carte est prise en charge, après avoir consulté <ulink url="http://tldp.org/HOWTO/Hardware-HOWTO/scsi.html">la liste des contrôleurs SCSI pris en charge</ulink>, tout ce qu'il vous reste à faire, après avoir eu la confirmation que votre noyau prend en charge votre matériel et votre périphérique SCSI, est de charger le(s) module(s) approprié(s)&nbsp;:

</para>

<para><screen># modprobe NOM_DU_MODULE_DE_VOTRE_CARTE</screen></para>
<para><screen># modprobe sg</screen></para>

<para>

...en tant que root. Notez que certains soucis avec la prise en charge
de l'émulation ide-scsi (utilisée pour la prise en charge ATAPI-eide
CDRW) ont été remontés, empêchant l'accès au scanner&nbsp;; si votre scanner
est effectivement pris en charge et si vous n'arrivez pas à faire
fonctionner votre scanner, essayez de décharger le module
ide-scsi&nbsp;:

</para>

<para><screen>rmmod ide-scsi</screen></para>

<para>...ce problème m'a été remonté pour des noyaux aussi récents que la version 2.4.20+.</para>
</sect3>

<sect3 id="usb-kernel">
        <title>Noyau, USB et prise en charge de scanners USB</title>
<para>
Pour la prise en charge d'un scanner USB, vous devez disposer d'une prise en charge par le noyau du sous-système USB, que ce soit usb-ohci, usb-ehci, ou tout autre protocole de périphérique USB utilisé par votre système. 
La prise en charge de l'USB est incluse dans le noyau à partir des versions 2.2.

Pour de plus amples informations à propos de la prise en charge USB en général, référez-vous au <ulink url="http://www.linux-usb.org/">site du projet USB Linux</ulink>. 

Si vous souhaitez accéder à votre scanner par le noyau (au lieu 
d'utiliser libusb comme indiqué au chapitre <xref linkend="libusb"/>), aurez besoin d'activer la 'prise en charge de scanner USB', qui, si elle est présente, est visible par la commande <command>dmesg</command>, ou <command>lsmod</command> si le module est chargé. 

Si vous voulez savoir quels modules sont chargés, tapez ce qui
suit&nbsp;:


</para>

<para>
<screen># lsmod</screen></para>

<para>

Comme le montre le prompt ci-dessus, vous devez disposer des privilèges
root pour le faire. 

Le résultat de la commande devrait contenir cela (mais pas
seulement)&nbsp;:

</para>

<para><screen>cdrom                  29312   0  (autoclean) [sr_mod]
usb-ohci               17888   0  (unused)
usbcore                56768   0  [scanner ibmcam usbvideo usb-ohci]
scanner                 8704   0 </screen>
 </para>

 
<para>

Si <filename>scanner</filename> n'apparaît pas comme chargé, et si vous
savez que votre noyau contient un module de prise en charge de scanner
USB, essayez de le charger directement&nbsp;:

</para>
 
<para><screen># modprobe -v scanner</screen></para>

<para>... ce qui doit vous donner quelque chose du style&nbsp;:</para>

<para><screen>Using /lib/modules/2.4.20/kernel/drivers/usb/scanner.o</screen></para>

<para>En plaçant l'entrée <filename>scanner</filename> dans <filename>/etc/modules</filename> (notez que cela varie avec les distributions), le module en question sera automatiquement chargé au démarrage. 

Vous pouvez alors vérifier le chargement du module en consultant le syslog ou dans le journal de démarrage en faisant&nbsp;: <command>dmesg | less</command>). Vous devez trouver une ligne du style&nbsp;:
</para>

<para><screen>

May 16 23:17:25 K7 kernel: usb.c: registered new driver usbscanner
May 16 23:17:25 K7 kernel: scanner.c: 0.4.6:USB Scanner Driver
</screen></para>
</sect3>
</sect2>

<sect2 id="parport-general">   
<title>Scanners port parallèle</title>
<para>
Vous savez maintenant que la configuration de scanners port parallèle peut présenter certaines difficultés. 

Encore une fois, préférez toujours l'interface USB au port parallèle, si vous avez le choix. 
</para>

<sect3 id="parport-kernel">
<title>Prise en charge par le noyau du port parallèle</title>

<para>

Pour les noyaux de type 2.2 et 2.4, le pilote du port parallèle devra être intégré au noyau ou disponible comme module externe (les noyaux standards l'activent par défaut). 

Je vous conseille de lire les <ulink url="http://www.torque.net/linux-pp.html">informations générales sur la prise en charge du port parallèle par un noyau Linux</ulink> avant d'aller plus loin. 

Pour s'assurer que le module <filename>parport</filename> est chargé, consultez le fichier <filename>dmesg</filename> ou faites <command> lsmod </command> comme indiqué plus haut. 

En lançant la commande <command>dmesg | less</command> vous devriez obtenir, entre autres&nbsp;:

</para>

<para><screen>
Mar  3 08:00:25 K7 kernel: parport0: PC-style at 0x378 (0x778) [PCSPP,TRISTATE]
Mar  3 08:00:25 K7 kernel: parport0: irq 7 detected
</screen></para>

<para>Si vous compilez votre propre noyau, activez 'Parallel Port support.' 



Je vous conseille d'activer 'IEEE 1284 transfer modes,' et si vous disposez d'une architecture de type x86&nbsp;: 'PC-style hardware.'  
</para>

<para>
Si la commande modprobe retourne un message d'erreur quand vous essayez de charger le module, il vous faudra spécifier l'adresse de votre matériel lors du lancement de <command>modprobe</command>. 

Les adresses les plus usuelles sont 0x378 pour un système x86&nbsp;; 0x278 et 0x3BC pour d'autres ports intégrés ou de type ISA. 

Les ports parallèle PCI ont souvent des adresses bizarres. 

On peut activer plusieurs périphériques en utilisant soit le module parport_pc soit le module parport_arc, mais cela dépasse le périmètre de ce guide. 

ATTENTION&nbsp;: Soyez sûr de l'adresse que vous allez rentrer, sinon votre système deviendra instable, se plantera, ou votre machine implosera.
</para>

<para>
De préférence, réglez votre port parallèle sur le mode <quote>EPP</quote>, ou alors ECP/EPP. 

Le mode <quote>Bidirectionnel</quote> (aussi nommé <quote>BPP</quote> ou  <quote>PS/2</quote>) peut fonctionner, mais plus lentement. 

Le mode <quote>Unidirectionnnel</quote> n'est pas adapté au scannage. 

Ces réglages peuvent être effectués au moyen du BIOS, au moins sur les systèmes x86.</para>



<para>

Si votre scanner nécessite la prise en charge du SCSI, il vous faudra faire évoluer votre noyau pour la prise en charge du parport-SCSI. 

Vous vous aiderez des outils disponibles à l'adresse <ulink url="http://www.torque.net/parport/ppscsi.html">www.torque.net/parport/ppscsi.html</ulink>. Si besoin, vous devrez procéder à la manipulation suivante&nbsp;:
</para>
<para>
<itemizedlist>
        <listitem>
        <para>
        SCSI support
        </para>

        </listitem>
        <listitem>
        <para>
        SCSI generic support
        </para>
        </listitem>
        <listitem>
        <para>
        Prise en charge du module central du contrôleur de votre port parallèle SCSI ppSCSI (t348 pour le APA-348 et T348, t358 pour le APA-358 et T358, epsa2 pour le plus ancient Shuttle EPSA-2, epst pour le Shuttle EPST et APA-1350, onscsi pour le OnSpec 90c26, et sparcsi pour le SparCSI et ParaSCSI)
        </para>

        </listitem>
        </itemizedlist>
        </para>                                                         
<para>Une fois la compilation réalisée, il s'agit simplement de charger les bons modules. 
</para>
</sect3>
</sect2>
</sect1>

<sect1 id="dev-intro">
<title>Accéder et utiliser un scanner</title>
<para>
Le chapitre suivant concerne tous les types de scanners. 

Certains items spécifiques à tel ou tel modèle de scanner sont reportés en fin de chapitre.</para>

<sect2 id="devfsd">
<title>Système de fichiers des périphériques</title>
<para>
<ulink url="http://www.atnf.csiro.au/~rgooch/linux/docs/devfs.html">Devfs</ulink> ou le <quote>système de fichiers des périphériques</quote> n'est qu'en option pour les noyaux de version antérieure à 2.2. 

Si vous ne l'avez pas utilisé jusqu'à ce jour, je vous conseille de le prendre maintenant en compte. 

Il peut vous simplifier énormément la gestion du périphérique. 


Devfsd, le démon système de fichiers de périphérique, crée et supprime de façon dynamique sur votre système vos périphérique, sans qu'aucune intervention de l'utilisateur ne soit nécessaire. 

Vous saurez si votre système utilise devfsd si vous lancez la commande <command>ls -f /dev/</command> et si vous reconnaissez des liens similaires pointant vers un fichier de périphérique ou un <quote>noeud</quote>, inclus dans une arborescence logique de sous-répertoires à l'intérieur du fichier <filename>/dev</filename>. 

Vous pouvez aussi voir tourner devfsd en tapant dans une fenêtre de commande <command>ps -A</command> pour vérifier les programmes en fonctionnement. 

Ce démon n'utilise que très peu de mémoire. 

Si devfsd/devfs tourne correctement, vous pouvez sauter les paragraphes suivants, le processus quelque peu archaïque de création manuelle de noeuds de périphérique vous étant alors inutile. Dans ce cas, il vous suffira de sélectionner le bon raccourci dans le fichier <filename>/dev</filename>.

</para>


<para>Si vous voulez tester devfs, il vous faut activer le système de fichier /dev (<foreignphrase>'/dev file system'</foreignphrase>) et la fonction 'montage automatique au démarrage' dans le module de configuration du noyau 'Système de fichier (<foreignphrase>'File Systems'</foreignphrase>). 

Et oui, il vous faut absolument recompiler le noyau si vous n'en disposez pas déjà&nbsp;! 

ATTENTION&nbsp;: le seul et unique paquet compatible dont vous aurez besoin est 'devfsd'. 

ATTENTION&nbsp;: Si vous activez devicefs avec le montage automatique au démarrage sans avoir installé le démon devfs, votre système deviendra inbootable&nbsp;! </para>

<para>
Devfs ne rend pas obligatoire le changement des droits d'accès utilisateur au périphérique.</para>

<para>

Bien évidemment, ces commentaires sur devfs ne font que refléter l'opinion de votre humble serviteur et sont à prendre en tant que tels, notamment si vous êtes débutant et donc peu enclin à recompiler votre propre noyau.</para>


<para>
A partir des versions 2.6 du noyau, le démon devfs a été délaissé au profit d'un démon tournant dans l'espace utilisateur (i.&nbsp;e. hors du noyau) connu sous le nom de udev, devfs restant disponible en tant qu'option&nbsp;. 

Vous trouverez des informations sur udev <ulink url="http://www.kernel.org/pub/linux/utils/kernel/hotplug/udev-FAQ">ici</ulink> si tant est que vous vouliez jouer avec le feu?</para>
</sect2>

<sect2 id="dev-manual">
<title>Créer manuellement des périphériques</title>
<para>Si ni devfs ni devfsd ne tourne, voici ce que vous devrez faire, 
sauf si vous utilisez déjà libusb pour un scanner USB, auquel cas sautez ce paragraphe et allez au chapitre <xref linkend="SANE"/>. 

Il y a deux façons de créer manuellement un périphérique. La première est d'utiliser la commande <command>MAKEDEV</command>, l'autre est de créer à la main les n½uds de périphériques. 
</para>

<para>
Le script <command>MAKEDEV</command> est la méthode la plus simple. Il faut alors stocker le résultat dans le fichier <filename>/dev</filename> ou le répertoire habituel pour les binaires exécutables (<filename>/bin</filename>,<filename>/sbin</filename> et ainsi de suite). 

Je vous conseille de consulter le <command>man MAKEDEV</command>, notamment pour la partie concernant les options des commandes spécifiques aux périphériques, et de vérifier que les chiffres supérieurs et inférieurs sont corrects (référez-vous au prochain paragraphe sur ce sujet, notamment si la commande <command>MAKEDEV</command> ne fonctionne pas).</para>

<para>Un périphérique peut être créé en tant que bloc (comme un driver), que  fifo (<foreignphrase>file-in-file-out</foreignphrase>, comme dans un console) ou bien qu'une autre lettre représentant un autre matériel. 

Chaque périphérique est caractérisé par un chiffre inférieur et un chiffre supérieur, un couple de coordonnées qui indique au noyau ce qu'il est et où il se situe. 

Ces chiffres ne sont pas arbitraires.</para>

<sect3 id="scsi-manual-dev">
<title>Périphériques SCSI</title><para>
Si vous utilisez un noyau de la génération 2.4, il vous faudra devenir familier avec la procédure d'<ulink url="http://tldp.org/HOWTO/SCSI-2.4-HOWTO/mlproc.html">accès aux interfaces SCSI</ulink>, et quelle que soit votre version de noyau, il vous faudra lire le <command>man sane-scsi</command> avant de continuer dans ce guide.

Quand le système démarre, les fichiers de périphérique générique SCSI sont inspectés puis référencés dans un fichier <filename>/dev/sgN</filename>, où N est une valeur numérique à partir de zéro. 

Les chiffres supérieur et inférieur pour les périphériques SCSI sont 21 et 0,1,2,3... respectivement. 

Vous pouvez trouver quels sont les périphériques d'ores et déjà chargés en exécutant la commande<command>ls -l /dev/sg*</command>, ce qui doit vous donner un résultat du style&nbsp;:</para>

<para><screen>
crw-------   1 root   sys     21,  0 Jan 06  2003 /dev/sg0
crw-------   1 root   sys     21,  0 Jan 06  2003 /dev/sg1
crw-------   1 root   sys     21,  0 Jan 06  2003 /dev/sg2
crw-------   1 root   sys     21,  0 Jan 06  2003 /dev/sg3
crw-------   1 root   sys     21,  0 Jan 06  2003 /dev/sg4
crw-------   1 root   sys     21,  0 Jan 06  2003 /dev/sg5
</screen></para>

<para>
Vous aurez alors besoin de créer un fichier <filename>/dev/scanner</filename> pour établir un raccourci vers un périphérique existant (pour des raisons éclaircies plus bas). 

Par exemple, si votre scanner est connecté au premier bus scsi (et premier LUN et premier numéro) de votre périphérique d'accueil SCSI, vous devrez le lier au périphérique correspondant&nbsp;:
</para>

<para><screen>
#  ln -s /dev/sg0 /dev/scanner
</screen></para>
</sect3>

<sect3 id="usb-manual">
<title> Créer manuellement des périphériques USB</title>

<para>
Encore une fois, sautez ce chapitre si vous utilisez libusb. 

Les scanner USB ont un chiffre supérieur de 180 et un chiffre inférieur compris entre 48 et 63 (48, 49, etc., 63). 

Tout d'abord, consultez le fichier <filename>/dev</filename> pour voir dans quel répertoire votre distribution a stocké ses répertoires concernant les périphériques USB, certaines distributions stockant ces périphériques sous le nom  <filename>scanner0, scanner1...</filename>etc... dans le répertoire <filename>/dev/usb</filename>, ou en tant que <filename>usbscanner0, usbscanner1...</filename> et ainsi de suite, dans le répertoire racine <filename>/dev/</filename>. 

Si vous constatez dans le répertoire <filename>/dev/</filename> que le scanner a déjà été pris en compte, c'est que le boulot est déjà fait&nbsp;! 

Dans le cas contraire, il faudra le créer par vous-même. 

En tant que superutilisateur, créez un nom pour votre scanner, comme ceci&nbsp;:</para>

<para><screen># mknod /dev/usbscanner0 c 180 48
</screen></para>

<para>...ou si votre distribution présente un sous répertoire '/dev/usb':</para>

<para><screen># mknod /dev/usb/scanner0 c 180 48
</screen></para>
</sect3>

<sect3 id="parport-manual">
<title> Créer manuellement des périphériques Port Parallèle </title>
<para>
Suivez l'exemple ci-dessus pour créer le périphérique générique port parallèle&nbsp;:</para>

<para><screen>
crw-------    1 root     root      99,   0 Jun 24 13:47 parport0
crw-------    1 root     root      99,   1 Jun 24 13:47 parport1
crw-------    1 root     root      99,   2 Jun 24 13:47 parport2
crw-------    1 root     root      99,   3 Jun 24 13:47 parport3
crw-r-----    1 root     root       1,   4 Jan  1  1970 port
</screen></para>

<para>
Il vous faudra sûrement créer les répertoires <filename>/dev/port</filename> et/ou <filename>/dev/parport</filename>, suivant le pilote que vous utilisez&nbsp;: soyez donc prêts à recommencer cette étape si votre système vous y oblige.
</para>
</sect3>
</sect2>

<sect2 id="permissions">
<title>Groupes et Privilèges</title>
<para>
Il peut être intéressant d'être certain de pouvoir accéder à votre périphérique avec votre compte utilisateur une fois que tous les modules ont été chargés et les noeuds de périphériques créés. 

Le moyen le plus sûr de faire cela est de donner accès au scanner à un groupe spécifique d'utilisateurs. 

Sur mon système, les membres du groupe 'vidéo' sont autorisés à utiliser le scanner et les autres périphériques vidéo. 

Pour cela, il faut tout d'abord modifier les droits de propriété des périphériques dans le fichier <filename>/dev</filename> de la façon suivante&nbsp;(en tant que root):
</para>

<para><screen>
# chown root.video /dev/usb/scanner*
</screen></para>

<para>...où <command>root.video</command> représente les ayant droit, et regroupe les périphériques concernés. 

Evidemment, la commande spécifique variera en fonction de votre système et le type de périphérique (<filename>/dev/sg*</filename> pour les scanners SCSI, etc?). 

Il est important que vous modifiez les droits de propriété du n½ud de périphérique lui-même et non ceux du raccourcis&nbsp;; les droits de propriété des raccourcis sont modifiés uniquement en changeant les périphériques ou fichiers père vers lesquels ils pointent.

</para>

<para>Pour voir si votre compte utilisateur fait partie du groupe en question, tapez la commande <command>grep -e video /etc/group</command> en tant que root. 

Cela devrait vous quelque chose du genre&nbsp;:</para>

<para><screen>
video:x:44:
</screen></para>

<para>...où '44' est le numéro du groupe. 

Puisque rien ne suit la dernière colonne, on peut ajouter des membres du groupe, par exemple l'utilisateur 'jhs', en tapant la commande&nbsp;:</para>

<para><screen>
# adduser jhs  video</screen></para>

<para>Après cela, il suffit de spécifier les droits d'accès en lecture ou écriture pour les périphériques en question, comme ceci&nbsp;:</para>

<para><screen>
# chmod g+rw /dev/usb/scanner0</screen></para>

<para>...où  <command>g+rw</command> signifie ajouter les accès en lecture (<command>r</command>ead) et en écriture (<command>w</command>rite) pour le groupe (<command>g</command>roup). 

Pour plus d'information, reportez-vous à la documentation pour chmod (<command>man chmod</command> ou <command>info chmod</command>).</para>

</sect2>
</sect1>
<sect1 id="SANE">
<title>SANE</title>
<para>La dernière chose prérequise pour l'utilisation d'un scanner est les pilotes SANE, et éventuellement une interface SANE. 

Pour le pilote, il s'agit de drivers et d'outils d'accès primaires qui dialoguent avec le scanner. Pour ce qui est de l'interface, il s'agit d'une application graphique pour utiliser le scanner sous X. 

Seul le pilote est obligatoire pour accéder au scanner, mais une interface graphique est recommandée pour manipuler les images et les visualiser dans un environnement à fenêtres sans avoir à les imprimer.</para>

<sect2 id="getting-SANE">
<title>Obtenir SANE</title>

<para>
Vous pouvez obtenir l'ensemble des pilotes SANE à l'adresse <ulink url="http://www.sane-project.org/source.html"/>, où vous pourrez télécharger les binaires pour la majorité des distributions Linux, ainsi que les codes source. 

Si vous envisagez de compiler à partir des sources, c'est que vous savez probablement le faire, mais vous pourrez tout de même réactualiser vos connaissances en consultant le <ulink url="http://tldp.org/HOWTO/Software-Building-HOWTO.html">Guide de construction d'applications</ulink> (<foreignphrase>Software Building HOWTO</foreignphrase>). 

Faites bien attention à effacer d'éventuelles anciennes versions de SANE avant d'en installer une version nouvellement compilée. Veillez aussi à obtenir le code source de la version stable la plus récente avant de compiler.</para>


<para>
Ceux qui préfèrent installer des binaires, c'est-à-dire pour des distributions utilisant des rpm, téléchargeront les fichiers correspondant et les installeront comme d'habitude&nbsp;:</para> 

<para>
<screen># rpm -iVh sane-backends-VERSION.rpm</screen></para> 


<para>
Pour les utilisateur de Debian, il existe un paquet SANE stable (Woody), en phase de test (Sarge) et instable (Sid). Il suffit alors de faire <command>apt-get install sane</command>, quelle que soit la version que vous utilisez.</para>

<para>
Ceux qui préfèrent compiler la dernière version de SANE à partir des sources pourront les obtenir à partir de <ulink url="ftp://ftp.mostang.com/pub/sane/">ftp.mostang.com/pub/sane</ulink>. 

Il existe une documentation plus approfondie sur la compilation des sources SANE et la façon de refaire fonctionner un scanner SCSI après un plantage, au lien <ulink url="http://www.xs4all.nl/~ljm/SANE/howto.html">Guide de Laurent-jan écrit à l'origine par Steve Sheriff</ulink> (les graphiques sont aussi intéressants).

</para>
</sect2>

<sect2 id="config-SANE">
<title>Configurer SANE</title>
<sect3 id="mfgr">
<title>Les pilotes SANE</title>

<para>

Quel que soit votre mode d'installation de SANE, SANE sera capable
d'identifier les pilotes<footnote><para>

NDT&nbsp;: dans la terminologie SANE, on parle de

<foreignphrase>backend</foreignphrase>, ce qui correspont plutôt à un
moteur et qui se traduit litéralement par <quote>dorsal</quote>. Nous
avons adopté ici la traduction pilote qui semble plus appropriée.

</para></footnote> nécessaires à l'utilisation de votre matériel lorsque 
vous
invoquerez <command>scanimage</command> ou toute autre interface. 

Si aucun périphérique n'est détecté quand vous lancez la commande 
<command>scanimage -L</command> ou votre interface, allez sur <xref linkend="troubleshooting"/> pour plus d'information. </para>
</sect3>

<sect3 id="networked">
<title>Réseau</title>
<para>
Si vous souhaitez partager votre scanner sur un réseau ou avec une machine à distance, il vous faut éditer le fichier <filename>saned.conf</filename> dans le répertoire configuration de votre <emphasis>serveur</emphasis> (c'est-à-dire le PC équipé du scanner), ou bien le fichier <filename>/etc/sane.d</filename> ou encore <filename>/usr/local/etc/sane.d</filename>. 

Habituellement, il s'agit de remplacer une entrée de type 'scan-client.somedomain.firm' par l'adresse du client qui souhaite utiliser votre scanner. 

Si vous le souhaitez, vous pouvez utiliser une adresse IP.
</para>

<para>
Il vous faudra lancer le démon SANE, ainsi que inetd ou xined sur le serveur. 

Veuillez vous rapporter à <command>man saned</command> pour effectuer les bons réglages dans inetd.conf ou xined.conf. 

De plus, il vous faudra ajouter le port 6566 au fichier <filename>/etc/services</filename>&nbsp;:
</para>

<para><screen>
sane 6566/tcp 
</screen></para>
<para>
Sur le PC client, (celui qui n'a pas de scanner), il vous faudra éditer le fichier net.conf pour y ajouter le nom du serveur, i.e., 'scan-server.somedomain.firm.'
</para>

<para>

Pour la (les) machine(s) client(s), vérifiez bien que l'entrée <quote>net</quote> n'est pas commentée dans le fichier <filename>dll.conf</filename>.
</para>
</sect3>

<sect3 id="v4l">
<title>Utiliser SANE avec un périphérique Video4linux</title>
<para>
Quand on parle de périphériques Video4linux, il s'agit de webcams, d'appareils numériques et de périphériques de capture vidéo. 

SANE peut tous les faire fonctionner. 

Afin que SANE puisse les utiliser, recherchez le fichier <filename>v4l.conf</filename> dans le répertoire de configuration (<filename>/etc/sane.d</filename> ou <filename>/usr/local/etc/sane.d</filename>). 

A l'ouverture de ce fichier, vous obtiendrez quelque chose du genre&nbsp;: 

</para>

<para>
<screen># In order to use the v4linux backend you have to give the device
# You can enable multiple lines if
# you really have multible <emphasis>[sic]</emphasis> v4l devices.
#
/dev/bttv0
/dev/video0
/dev/video1
/dev/video2
/dev/video3</screen>
</para>

<para>La première ligne de l'écran vous décrit tout ce que vous devez savoir&nbsp;: rappelez-vous en lors de la lecture du chapitre concernant les tests matériels.
 
Quel que soit le matériel que vous utilisez, assurez-vous que votre périphérique est non commenté (i.e., le signe # est bien absent devant ou en-dessous de la ligne concernée). 

Il vous faudra évidemment être sous root pour ce faire. 

De même, assurez-vous que la ligne concernant votre périphérique dans le fichier <filename>dll.conf</filename> n'est pas commentée non plus.
</para>
</sect3>

</sect2>
</sect1>

<sect1 id="testing">
<title>Tester votre Scanner</title>

<para>
Maintenant que vous avez réalisé tout ce que était demandé plus haut, vous pouvez tester votre scanner. 

Dans ce chapitre, nous supposons que votre scanner est allumé, et branché à votre PC sur la bonne interface. 

Si vous avez un scanner SCSI ou USB, lancez la commande suivante&nbsp;: 
</para>

<para>
<screen>$ sane-find-scanner</screen></para>

<para>...ce qui doit vous trouver et identifier votre scanner, parmi une liste de périphériques possibles.
 
Si cela ne fonctionne pas, essayez 


<command>scanimage --list-devices</command> 

ce qui devrait vous donner plus d'informations (il se peut que vous ayez besoin de la faire deux fois). 

Notez que sane-find-scanner est un utilitaire séparé, qui ne vous garantit pas la compatibilité avec SANE&nbsp;: il s'agit juste de rechercher les périphériques qui s'identifient comme des scanners.
</para>

<para>Ensuite, il vous faut tester la capture d'image de votre scanner. 

Vous pouvez soit utiliser une des interfaces listées au chapitre <xref 
linkend="frontends"/>, soit lancer une ligne de commande comme ceci&nbsp;:
</para>

<para>
<screen>$ scanimage -d backend:/dev/scanner --format pnm > outfile.pnm</screen>
</para>

<para>Si vous utilisez un pilote EPSON, par exemple, la commande doit avoir cette tête&nbsp;:</para>

<para>
<screen>$ scanimage -d epson:/dev/scanner --format pnm > outfile.pnm</screen></para>

<para>
Si vous avez plus d'un scanner, et que vous vous voulez sélectionner celui que vous souhaitez utiliser, il vous faudra ajouter l'option <command>-d</command>. 

Par exemple, si vous utilisez un scanner Epson et un autre Mustek, il vous suffira d'utiliser les options "-d epson" ou "-d mustek". 

Le chemin complet vous sera demandé si votre pilote supporte plus d'un scanner. 

Bien évidemment, la commande <command>/dev/scanner</command> doit être adaptée au périphérique que vous utilisez (et <filename>/dev/video0</filename> si vous utilisez un périphérique v4l). 


Le commutateur <option>--format</option> peut être au format pnm ou tiff (pnm par défaut). 

Pour des options un peu plus ardues mais bien utiles&nbsp;, allez voir sur <command>man scanimage</command>. 


Pnm signifie 'portable anymap'&nbsp;: c'est un format d'image courant pour les fichiers graphiques sous Linux, qui peut être converti en presque n'importe quel format d'image avec <ulink url="http://www.imagemagick.org/">Imagemagick</ulink> ou <ulink url="http://netpbm.sourceforge.net/">netpbm</ulink>.

</para>
</sect1>

<sect1 id="frontends">
<title>Interfaces SANE</title>

<para>
Maintenant que votre matériel fonctionne, il vous faut installer une interface d'acquisition adaptée à l'environnement X11, ce qui vous permettra de visualiser vos acquisitions. 

Mon interface favorite est aussi élégante que fonctionnelle&nbsp;: <ulink url="http://www.xsane.org">xsane</ulink>. 

Elle est basée sur GTK+, peut sauvegarder les images sous de multiples formats, permet d'envoyer les images acquises vers une imprimante, et sert d'interface à <ulink url="http://www.gimp.org">GIMP</ulink>. 

Cela permet d'accéder à toutes les fonctionnalités de votre scanner.</para>

<para> GIMP, ou Programme GNU de Manipulation d'Images (<foreignphrase>Image Manipulation Program</foreignphrase>), est une application de manipulation d'images exceptionnelle, qui vous intéressera sûrement si vous êtes habitués à des applications de type <trademark>Photoshop</trademark>. 

Le module xsane est disponible sous forme de package indépendant, suivant votre distribution. 

Après avoir lancé GIMP, cliquez sur 'Fichier,' puis 'Acquisition' et enfin 'Xsane:device dialog' pour accéder à votre scanner.

</para>

<para>
Une autre interface très recommendable est <ulink url="http://www.kde.org/apps/kooka/">Kooka</ulink> de l'<ulink url="http://www.kde.org/">environnemnt Bureau KDE</ulink>. 

Son interface est intuitive, et s'intègre tout à fait dans les autres applications KDE. Elle permet en outre de simplifier le traitement de grandes banques d'images.</para>

<para>
Xscanimage est une application d'acquisition d'images pour X11, plus simple mais encore performante. 

Suivant votre distribution, cette interface sera couplée ou non avec des pilotes SANE. Voyez <command>man xscanimage</command> pour plus d'informations.</para> 


<para>

Vous pourrez obtenir une liste exhaustive des interfaces SANE sur <ulink url="http://www.sane-project.org/sane-frontends.html">la page des interfaces SANE</ulink>.</para>
</sect1>

<sect1 id="troubleshooting">
<title>Dépannages</title>
<sect2 id="initial-hints">
<title>Mon scanner n'est pas reconnu par scanimage ou xsane</title>

<para>
Si vous êtes certains d'avoir tout fait correctement jusqu'à maintenant, alors tous les modules concernés sont chargés, tous les fichiers de configuration actifs comme dit plus haut, et vous savez que votre matériel est supporté. Maintenant, vérifiez vos droits d'accès. 

Pour accéder à votre scanner, vous devez posséder les droits en lecture et écriture. 

Revenez au chapitre <xref linkend="permissions"/> pour plus 
d'informations. 

Si ce n'est pas un problème de droit d'accès, ouvrez le répertoire <filename class="directory">/etc/sane.d/</filename> (ou <filename>/usr/local/etc/sane.d</filename>) et éditez le fichier <filename>dll.conf</filename>, en décommentant tous les pilotes ou autres protocoles (i.e. v4l) dont vous n'avez pas l'utilité. </para>

<para>Si cela ne fonctionne toujours pas, à partir du répertoire contenant les fichiers de configuration SANE, ouvrez le fichier qui porte le nom du pilote de votre scanner.  

Vous y trouverez en particulier deux entrées, concernant d'une part le type d'interface (scsi ou usb), et le nom de votre périphérique d'autre part. 

Si vous possédez un scanner USB, il vous faudra commenter la ligne SCSI (faites # devant la ligne en question) et décommenter la ligne USB. 

Il vous faudra peut-être changer aussi le nom du périphérique, suivant votre distribution (i.e. <filename>/dev/usbscanner0</filename> peut devenir <filename>/dev/usb/usbscanner0</filename>). 

Comme vous l'aurez constaté, il existe d'autres lignes concernant les options possibles de votre scanner suivant son modèle&nbsp;: si votre scanner ne fonctionne pas suivant vos directives, jetez-y un oeil, ainsi qu'à la documentation accompagnant votre périphérique. Allez voir <command>man sane-scsi</command> ou <command>sane-usb</command>, ou toute autre commande concernant le fabricant de votre scanner (comme <command>sane-plustek</command>, <command>sane-qcam</command>, <command>sane-ricoh</command>, <command>sane-sharp</command>, <command>sane-snapscan</command>, <command>sane-umax</command> etc?). 

Pour une liste complète, essayez <command>apropos sane</command>. 

Les protocoles et fabricants disponibles peuvent dépendre de votre version de SANE.</para>

<para>
Si tout cela ne vous permet pas de faire fonctionner votre scanner, 
reportez-vous au chapitre <xref linkend="lists"/>. 

Si besoin, consultez aussi la <ulink url="http://www.meier-geinitz.de/sane/sts/">page de dépannage de SANE</ulink>, même si cette dernière est en cours de développement au moment où sont écrites ces lignes.</para>
</sect2>

<sect2 id="usb-hard">
<title>Je ne suis pas sûr que mon port USB fonctionne</title>

<para>
Présumant que vous disposez des supports usbdevfs et /proc filesystem, lancez la commande suivante&nbsp;: <command>cat /proc/bus/usb/devices</command>. 

Cela devrait vous indiquer le statut de votre bus USB et des matériels qui y sont connectés, et vous aider à régler votre problème. 

Si votre scanner est bien supporté, et s'il est listé, vous saurez que le problème provient d'autre chose.</para>

</sect2>
<sect2 id="backend-config">

<title>

scanimage ou l'interface que j'utilise ne reconnaît pas le bon scanner

</title>

<para>Tout d'abord, cherchez votre fichier de configuration, normalement rangé à l'endroit habituel&nbsp;: <filename>/etc/sane.d</filename> ou <filename>/usr/local/etc/sane.d</filename>. 

En général, si vous avez installé SANE à partir de votre distribution ou d'un binaire obtenu sur la page de SANE, vous le trouverez dans le répertoire <filename class="directory">/etc</filename>, alors que si vous l'avez compilé à partir des sources, vous le trouverez dans <filename>/usr/local/etc/sane.d</filename>. 

Copiez-le alors dans ce répertoire-là (<command>cd</command>). 

Dans le chapitre <xref linkend="interfaces"/>, je vous ai orientés vers 
la <ulink url="http://www.sane-project.org/sane-mfgs.html">liste des matériels supportés par SANE</ulink> hardware. 

Vous y trouverez, parmi la liste des fabricants, la liste des pilotes SANE pour tout modèle, ainsi que les supports disponibles. 

Dans le fichier <filename>/etc/sane.d</filename> ou  <filename>/usr/local/etc/sane.d</filename>, vous trouverez des fichiers nommés à peu près de la même façon pour tous les pilotes. 

Sélectionnez le fichier <filename>dll.conf</filename>. 

Il vous donnera la liste des protocoles et des pilotes. 

Vérifiez que le pilotes de votre scanner n'est pas commenté.

Si tel est le cas, il vous faudra, en tant que root, effacer '#.' 

Si votre problème n'est toujours pas résolu, revenez au paragraphe <xref 
linkend="lists"/></para>

</sect2>

<sect2 id="parport-root">
<title>Je ne peux accéder à mon scanner port parallèle qu'en tant que root</title>

<para>
Le driver SANE de votre scanner accède normalement directement au port parallèle (via <filename>/dev/port</filename>). 

Cela ne fonctionne que sous root pour des raisons de sécurité. 

Consultez <ulink url="http://www.linuxprinting.org/download/digitalimage/Scanning-as-Normal-User-on-Wierd-Scanner-Mini-HOWTO.txt">ce Petit Guide</ulink> écrit par Till Kamppeter pour des explications traitant de ce problème.
</para>

</sect2>

<sect2 id="lists">
<title>J'ai un scanner <trademark>Acme Whizzbang</trademark>, ou d'un autre modèle, et vous n'en avez pas parlé</title>
<para>
Consultez <ulink url="http://www.sane-project.org/mailing-lists.html"> la mailing list et irc channel </ulink> sur le site web de SANE. 

Lisez aussi la <ulink url="http://www.xs4all.nl/~ljm/SANE-faq.html">FAQ SANE</ulink> qui traite des questions spécifiques à certaines marques.
</para>
</sect2>
</sect1>

<sect1 id="gfdpl">

<title>License Libre GNU</title>

<para>
Version 1.2, Novembre 2002
</para>

<para>

<!-- insérer la GPL version française -->

</para>

</sect1>

<!-- Section1: exemples: END -->

</article>

<!--Conservez ces lignes à la fin de ce document
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-namecase-general:t
sgml-general-insert-case:lower
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:nil
sgml-parent-document:nil
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
-->

Site hébergé sur un Cloud Public IKOULA Ikoula