[[tutoriel:utiliser_un_scanner_en_reseau]]
Piste: » utiliser_un_scanner_en_reseau
Utiliser un Scanner en réseau
Cette documentation détaille la méthode d'installation d'un scanner en réseau en utilisant la ligne de commande.
On propose l'utilisation du logiciel xSane qui est une interface graphique pour scanner.
Pré-requis
- Votre scanner fonctionne sur la machine (sous ubuntu que nous appellerons serveur) sur laquelle il est connecté.
- Être un administrateur système (par défaut sur l'utilisateur principal, sinon voir cette page).
Installation
L'installation se passe en deux temps.
Sur le serveur
Il faut installer les paquets netkit-inetd et sane-utils, nécessaires au bon fonctionnement de la mise en réseau.
sudo aptitude install netkit-inetd sane-utils
Il faut ensuite éditer le fichier /etc/sane.d/saned.conf.
sudo nano /etc/sane.d/saned.conf
Et y ajouter la ou les adresses IP ou le nom des machines qui se serviront du scanner. Il est aussi possible d'y indiquer un réseau complet en donnant son adresse suivi du nombre de bits de son masque de sous-réseau :
192.168.0.5 #ip_machine - On autorise que la machine 192.168.0.5 192.168.0.0/24 #adresse_reseau/bits_masque - On autorise tout le réseau 192.168.0.*
Nous devons ensuite régler le programme qui gérera le serveur de scanner. Sous Ubuntu, ce programme est par défaut inetd, mais vous pouvez le remplacer par xinetd
Le nom du port
Pour commencer, il est vital de determiner quel est le nom du port logiciel qui va être utilisé. En effet, ce nom peut changer suivant les cas.
Faîtes un :
cat /etc/services|grep san
Cette commande vous renverra toutes les lignes du fichier de définition des services contenant "san". Normalement la ligne de saned est dedans. Elle doit normalement correspondre au numero 6566.
sane-port 6566/tcp sane saned # SANE network scanner daemon
Avec inetd
Éditez le fichier /etc/inetd.conf.
sudo nano /etc/inetd.conf
et y ajouter :
saned stream tcp nowait saned /usr/sbin/saned saned
Le premier terme de la ligne précédente renvoie au nom du port, qe nous avons déterminé au dessus. La concordance est très importante.
Pour finir, redémarrez les services en tapant dans un terminal :
sudo /etc/init.d/inetd restart
Avec xinetd
Créez le fichier /etc/xinetd.d/sane-port et y mettre :
service sane-port
{
id = saned-stream
socket_type = stream
server = /usr/sbin/saned
protocol = tcp
user = saned
wait = no
}
Encore une fois, la concordance avec le nom du port est très importante !
Dans le cas d'un scanner sur port parallèle utiliser « user = root » et « group = root ».
Pour finir, redémarrez le service xinetd en tapant dans terminal :
sudo /etc/init.d/xinetd restart
Groupe scanner
Enfin il ne reste plus qu'a ajouter l'utilisateur saned au groupe scanner, afin qu'il puisse utiliser les scanners.
Une manière d'effectuer cela pourrait être :
sudo adduser saned scanner
Sur le client
Éditez le fichier /etc/sane.d/net.conf et y ajouter l'adresse IP ou le nom du serveur, par exemple :
192.168.0.111
ou
linuxbox.local
Puis installez le paquet xsane et lancez xSane (commande xsane), qui est le logiciel qui vous permettra d'accéder au scanner distant.
Sur un client Windows®
Il existe une version de Sane pour Windows. Vous pouvez l'utiliser en lieu et place des pilotes classiques de votre scanner. Vous pouvez donc l'utiliser, que votre scanner soit en réseau soit en local ; et vous pouvez même monter le serveur de scanner sur Windows, ce qui est quand même un comble !
Vous pouvez soit utiliser Sane pour Windows, soit Sanetwain (l'une ou l'autre méthode au choix).
L'archive zip de Sane se trouve sur un de ces miroirs : http://www.xsane.org/xsane-download.html. Le logiciel s'installe en copiant le dossier Sane à la racine de « C:\ ».
Ici, on veut installer un client Sane. Donc, il faut éditer le fichier C:\sane\etc\sane.d\net.conf, et ajouter l'adresse IP du serveur. Il faut également éditer le fichier C:\sane\etc\sane.d\dll.conf et mettre une ligne "net". Vous remarquerez que c'est à peu près la même démarche que sous Linux. L'avantage de cette méthode, c'est que vous pouvez configurer un client, puis copier le dossier « C:\Sane » sur les autres postes Windows et cela fonctionnera !
SaneTwain s'installe avec un installeur standard.
http://sanetwain.ozuzo.net/setup127.exe
Il va créer un dossier de programme classique. Installez-le. Dans la boite de dialogue qui va s'ouvrir, mettez l'adresse IP du serveur dans « hostname ».
Utilisation et configuration
Désinstallation
Notes
- N'oubliez pas d'ouvrir le port 6566 en TCP sur le serveur, si vous y avez installé un pare-feu.
- Faire l'installation des paquets « hpoj » pour pouvoir installer le scanner avec la commande
sudo /etc/init.d/hpoj setup. - Assurez-vous que l'utilisateur de saned possède les droits sur le périphérique. Sinon, ajoutez-le au groupe « scanner ».
- Bien vérifier que le fichier /etc/services (sur le serveur) dans la section :
# # Services added for the Debian GNU/Linux distribution #
contienne la ligne
sane-port 6566/tcp sane saned # SANE network scanner daemon
et qu'elle commence bien par « sane-port » (et non par « sane »), comme cela peut être le cas si votre système est le fruit de mises à jour depuis des distributions anciennes. Sinon, éditez le fichier, ou utilisez le numero du port directement (ça marche avec inetd, mais avec xinetd ?)
- Vérifier que le paquet sane-utils est bien installé sur le serveur.
- Chez moi, l'utilisateur saned avait « /bin/false » comme shell (donc pas de shell). J'ai remplacé par « /bin/sh » dans « /etc/passwd », et depuis plus de problèmes avec xinet.d.
- Pour ma part j'ai du mettre root root à la place de sane saned dans /etc/services
—-
Contributeurs : yeffries,tshirtman, Fabien26, Ner0lph, stephaneguedon, claudiux
