Skip to end of metadata
Go to start of metadata

Info

Sane (und sein grafischer Begleiter Xsane) bilden stellen einen Scanner Server und ein Scannprogramm für die grafische Oberfläche dar.
Mit Sane ist es möglich auch übers Netzwerk einen Scanner zu benutzen (ja auch von Windows aus (wink)

SANE - "Scanner Access Now Easy" ist eine Scanner API für Unix. Das wohl hervoragendste Merkmal dieser API ist die möglichkeit den Scanner im Netzwerk bereitzustellen!
Aber eins nach dem andren:

Einrichtung

/etc/sane.d/saned.conf

localhost
127.0.0.1

nun sollte man den Scanner selbst Konfigurieren. Für den Agfa Snapscan e26 benötigt man zB noch die Firmware-Datei

/etc/sane.d/snapscan.conf

firmware /lib/firmware/[^snape26.bin]
/dev/usbscanner bus=usb
 
# Agfa Snapscan e26
usb 0x06bd 0x2097

da wir lokal scannen wollen, sollte folgendes eingestellt werden:

/etc/sane.d/dll.conf

snapscan

alle nichtbenötigten Scannertreiber können deaktiviert werden damit die Suche nicht unnötig lange dauert!

ein anschließendes

$ scanimage -L

sollte dann folgendes zB auspucken

device `snapscan:libusb:004:005' is a AGFA SNAPSCAN e26 flatbed scanner

mit

$ scanimage -T

lassen sich bei Problemen auch besser Fehler verifizieren, so zB wenn keine Firmware geladen werden kann

Client/Server Einrichtung

Server

der Server wird im Prinzip wie ein Standalone Gerät eingerichtet. Zusätzlich erhält die Datei saned.conf noch zB folgende Zeile:

192.168.1.0/24

die letzte Zeile bedeutet, dass alle Rechner aus dem Bereich 192.168.1.0-192.168.1.255 auf den saned zugreifen dürfen. Dies ist die CIDR schreibweise und kürz eigentlich nur folgende info ab: Netzadresse 192.168.1.0 mit Subnetmask 255.255.255.0 (24bits gesetzt)

Nun muss sane auch automatisch gestartet werden um auf Anfragen reagieren zu können. Hierzu bedienen wir und (gemäß der man-page) inetd oder xinetd. Also bitte dort lesen (wink)

$ nmap -p 6566 localhost

respektive der Scan vom Client aus sollte folgendes Ergebnis liefern:

PORT STATE SERVICE
6566/tcp open unknown

wenn nicht ist vermutlich noch ne Firewallregel aktiviert (siehe auch iptables) oder Berechtigungen sind verkeht (siehe Abschnitt "Troubleshooting")

Client

hier muss für sane lediglich folgendes eingestellt werden:

/etc/sane.d/dll.conf

net

/etc/sane.d/net.conf

192.168.1.22 #IP-Adresse des saned-Servers

ein

scanimage -L

sollte auch hier entsprechendes Resultat liefern und den Scanner vom Server anzeigen

device `net:192.168.1.22:snapscan:libusb:001:002' is a AGFA SNAPSCAN e26 flatbed scanner

happy (remote) scanning

troubleshooting

debug-Mode lässt sich mit

saned -d

aktivieren. inetd oder xinetd sollten hierfür zunächst deaktivert werden da sie sonst ggf den Port blockieren.

scanimage findet kein remote scanner

wenn der Port zwar geöffnet, der Scanner am Client aber nicht gefunden wird hat der saned Benutzer vermutlich keine passenden Rechte im System.
Workaround: starten des Dienstes als root, dann klappts!
leider war an dieser Stelle das Logfile nicht sonderlich Hilfreich, denn in beiden Fällen (Erfolg und Misserfolg) erschienen folgende Zeilen im Log:

Sep  3 15:07:34 localhost saned[6026]: saned (AF-indep+IPv6) from sane-backends 1.0.15 ready
Sep  3 15:07:34 localhost saned[6026]: check_host: access by remote host: 192.168.1.99
Sep  3 15:07:34 localhost saned[6026]: init: access granted to marcel@192.168.1.99
Sep  3 15:07:34 localhost saned[6026]: quit: exiting

Dieses Problem mit USB Scannern findet in der Meldung vom 3.7.2006 auf der Sane Homepage erwähnung und es wird geraten die README Datei zu lesen. Kurzum: das ist ein Fall für udev.

Links

Das Sane Projekt ist unter http://www.sane-project.org zu Hause. Eine Liste der vielen möglichen Fontends findets sich ebenfalls dort unter http://www.sane-project.org/sane-frontends.html

  • No labels