Scanner unter Linux betreiben
Zum Betrieb von Scannern unter Linux gibt es das Paket SANE (Scanner Access Now Easy).
SANE ist das Grundmodul zum Betrieb jedweder Scanner unter Linux.
Homepage: http://www.sane-project.org/
Im folgenden eine kurze Anleitung zur Installation eines Mustek-Parallelportscanners 1200 CP (Nachbau: Medion LT 9350).
Vieles dieser Anleitung ist aber modellunabhängig, daher kann ein Teil der Anleitung auch allgemein zum Thema Scanner verwendet werden.
Hinweis zu SANE: SANE ist unterteilt in ein Paket sane-backends für die Scanner-Treiber und ein Paket sane-frontends für Anwendungen zum Scannen.
Fertige Pakete nutzen: Wer eine halbwegs aktuelle Distribution einsetzt, kann die Punkte 1-2 überspringen. Statt Compilieren sollte man mit der Paketverwaltung der Distribution einfach das Paket "sane-backends" installieren.
Distributionswerkzeuge zum konfigurieren: Einige Distributionen bieten Werkzeuge zum Einrichten des Scanners. Bei Suse z. B. unter Yast2 / Hardware / Scanner.
Im zweiten Teil des Howtos sind auch ein paar Tipps zu USB-Scannern zu finden.
1) Download Sourcen
Der Download der Sourcen erfolgt über die Homepage.
Das Paket "sane-backends" enthält die Scannertreiber und das Kommandozeilenprogramm "scanimage". "sane-frontends" enthält eine einfache Scan-GUI "xscanimage". Hier gibt es jedoch bessere Alternativen, siehe auch unten. Das Paket scheint außerdem nicht mehr gepflegt zu werden.
Nach dem Download das Paket nach /usr/src kopieren und mit "tar zxvf sane*" entpacken.
2) SANE übersetzen
Code:
cd /usr/src/sane-backends-1.xyz
./configure --prefix=/usr --sysconfdir=/etc
make
make install
Die Werte für prefix und sysconfdir sind abhängig von der Distribution. Man kann auch ohne starten, dann wird als Default für alles /usr/local verwendet.
Bei Parallelport-Scannern muss zusätzlich der Parameter enable-parport-directio beim configure angegeben werden, sonst wird der Scanner später nicht erkannt.
Code:
./configure --prefix=/usr --sysconfdir=/etc --enable-parport-directio
Alternativ kann man auch "libieee1284" und "libieee1284-devel" installieren (siehe rpmseek.com). Wenn dieses Paket installiert ist, kann der Parameter "enable-parport-directio" entfallen.
3) Konfigurationsdateien anpassen
3.1) /etc/sane.d/mustek_pp.conf bzw. /usr/local/etc/sane.d/mustek_pp.conf
Hier muss der Scanner konfiguriert werden. Bei meinem Scanner habe ich folgende Werte angegeben:
Code:
scanner LT9350 0x378 cis1200+
option top_adjust 0
option bw 127
Hinweis auf sane ab 1.0.14: Es gibt eine "Autoprobefunktion", die automatisch die zu verwendende Schnittstelle sucht. Der Eintrag sieht dann so aus:
Code:
scanner mustek-cis1200 * cis1200
Bei anderen Modellen von Mustek sind den Kommentaren der Beispieldatei die Konfiguration zu entnehmen. Bei Mustek-Modellen mit anderen Schnittstellen (USB, SCSI) bzw. Scannern anderer Firmen sind andere Dateien anzupassen.
In einem vom User yasuo gemeldeten Fall bei einem Scanexpress 6000p half folgende Änderung:
Code:
# scanner 6000P 0x378 ccd300
ersetzen durch:
scanner 6000P parport0 ccd300
3.2) /etc/sane.d/dll.conf bzw. /usr/local/etc/sane.d/dll.conf
Hier muss der Treiber "mustek_pp" aktiviert werden. Hierzu einfach das vorgestellte Kommentarzeichen "#" löschen, also "#mustek_pp" => "mustek_pp".
Alle anderen Zeile können mit einem Kommentar versehen werden, das bringt bessere Zugriffszeiten, da weniger Scannermodelle beim Start getestet werden müssen.
Dies ist übrigens eine beliebte Fehlerquelle. Bei Installation einer neuen SANE-Version wird häufig in dieser Datei vor dem eigenen Modell wieder ein Kommentarzeichen eingefügt.
4) Geht mein Scanner ?
Nun als "root" anmelden und mit "scanimage -L" testen, ob der Scanner geht. Es sollte eine Zeile angezeigt werden wie
"device `mustek_pp:LT9350' is a Mustek 1200CP flatbed scanner"
Das Login als "root" ist bei Parallelport-Scannern leider erforderlich. Weiter unten werden noch 2 Alternativen genannt.
5) Scanner GUIS
5.1) Sane-Frontends
Unter obiger Adresse gibt es auch das Paket "sane-frontends". Enthalten ist das für einfache Scan-Arbeiten ausreichende "xsanimage". Enthalten ist auch ein Plugin für Gimp, so dass direkt aus GIMP gescannt werden kann.
5.2) Kooka
Seite KDE 3.0x ist kooka (inkl. libkscan) serienmäßig enthalten
5.3) XSANE
Sehr leistungsfähige GTK-Anwendung, Download unter
http://www.xsane.org/
Funktionen (u. a.): Drucken, Preview, Faxen, E-Mail, ...
5.4) OpenOffice
In OpenOffice kann über SANE gescannt werden (Menü Einfügen/Bild/Scannen).
5.5) Gimp
Gimp selbst kann nicht scannen, die Funktion kann jedoch über ein Plugin z. B. von xsane nachgerüstet werden.
Hierzu muss im Verzeichnis "~/.gimp-x.y/plug-ins" (x.p=Gimp-Version) ein entsprechender Link angelegt werden. Beispiel xsane:
Code:
cd ~/.gimp-x.y/plug-ins
ln -s /usr/bin/xane-gimp xane-gimp
Danach kann über Datei/Holen/xsane direkt eingescannt werden.
6) OCR
6.1) Gocr
Download unter http://jocr.sourceforge.net/download.html
gocr ist ein Kommandozeilentool. Es kann jedoch über Kooka benutzt werden.
Siehe auch 10.2), Scannen in virtuellen Maschinen.
6.2) Ocropus
Neues OCR-System von Google.
http://code.google.com/p/ocropus/
7) Scannen als USER
Ohne weitere Konfigurationsarbeiten ist ein Login als "root" erforderlich bei Parallelport-Scannern. Mir sind 2 alternative Lösungen bekannt:
7.1) SANE.D
sane.d ist ein Netzwerk-Demon, der es Usern erlaubt, auf Scanner jedweder Art zuzugreifen. Eine Anleitung ist zu finden unter:
http://penguin-breeder.org/sane/saned/
7.2) SUDO
sudo ermöglicht das Starten von Anwendungen mit root-Rechten ohne root-Login.
Download als rpm-Paket unter:
http://rpmfind.net/linux/rpm2html/search.php?query=sudo
In der Datei /etc/sudoers müssen die zu startenden Anwendungen eingetragen sein. Beispiel:
Code:
username ALL=NOPASSWD:/usr/bin/kooka
Für Username ist der Name einzutragen, unter dem man sich anmeldet. Danach kann über "sudo kooka" der Start von Kooka mit root-Rechten ohne erforderliches root-Login stattfinden.
8) SANE-Pakete erstellen
Falls Sane als Binärpaket in der Paketverwaltung notiert ist, kann man die Version der Distribution auf folgendem Weg durch die selbst übersetzte Version ersetzen (Bsp. RPM):
- Login als root
- SANE wie oben beschrieben entpacken, übersetzen
- Installierte Version deinstallieren: "rpm -e sane-backends --nodeps"
- Statt "make install" das selbst übersetzte Paket mit "checkinstall" installieren.
- Danach sind alle notwendigen Abhängigkeiten der Pakete wieder hergestellt.
Checkinstall erstellt aus selbst übersetzten Sourcen ein RPM-Paket (auch Debian Pakete!). Es wird statt "make install" ausgeführt. Die Bedienung ist selbsterklärend. Einfach "checkinstall" aufrufen, alles weitere wird abgefragt.
Downloadquellen:
http://rpmfind.net/linux/rpm2html/se...mit=Search+...
http://asic-linux.com.mx/~izto/checkinstall/
9) Andere Mustek Scanner
9.1) Mustek Paragon 600 II N (Tip von klaus_harrer)
Standard Sane installieren und in der Datei "/etc/sane_d/mustek.conf" folgenden Eintrag ändern:
Im Abschnitt 600 II N
Gleich die erste Zeile auf
von "#0x2eb" auf "0x3ab" setzen, wichtig ist das ihr # weglasst.
9.2) Weitere Modelle
"man sane-mustek_pp" bringt eine Liste unterstützter Modelle.
10) Scannen im Netzwerk
Ein interessanter Aspekt ist das Scannen über das Netzwerk.
Hierzu wird am Linux-Server der Scanner angeschlossen und mit Sane eingerichtet.
Dann muss der Sane-Netzwerk-Dienst "saned" eingerichtet werden (siehe 7.1).
Auf den Windows Clients muss jetzt ein Sane-Treiber installiert werden. Zum Beispiel SaneTwain (http://sanetwain.ozuzo.net/), das einen Standard-Scan-Dialog für Windows Anwendungen realisiert. Damit können alle Windows-Anwendungen mit Scanfunktion auf den Scanner, der am Linux-Server hängt, zugreifen.
10.2) Scannen in virtuellen Maschinen
Z. B. im Bereich OCR sind die Linux-Alternativen nicht besonders leistungsfähig.
Aber hier gibt es eine einfache Lösung. Der eigene Linux-PC ist sozusagen der Server, an dem der Scanner mit sane/saned eingerichtet wird. Der Windows Client wird durch eine virtuelle Maschine mit Qemu/Windows realisiert.
Die virtuelle Maschine wird mit Netzwerkzugriff (-user-net -smb ...) gestartet.
Die Einrichtung ist also genau wie unter 10.1).
Im virtuellen Qemu-PC kann dann ein OCR-Programm installiert werden, bei PC-Zeitungen sind regelmäßig Vollversionen zu finden, außerdem ist zumeist auf der Treiber-CD des Scanners so ein Programm zu finden.
Die Einrichtung wird im Qemu Howto näher beschrieben: http://www.linuxforen.de/forums/showthread.php?t=141201
11) Scanner-Buttons nutzen
Das Programm "scanbuttond" ermöglicht die Nutzung der Scanner-Buttons. Also auf Knopfdruck scannen und z. B. direkt drucken, mailen, Bildbearbeitung starten.
Homepage: http://scanbuttond.sourceforge.net/
12) Alternativen zu Sane (Treiber und Software)
Falls der Scanner von Sane nicht unterstützt wird, gibt es das kostenpflichtige VueScan als Alternative.
http://hamrick.com/vsm.html
Epson-Treiber: http://www.avasys.jp/lx-bin2/linux_e/scan/DL1.do
HP-Officejet: http://hplipopensource.com
Kodak: http://scantwain.wiki.sourceforge.net/, http://www.pro-linux.de/news/2009/13926.html
13) Links
13.1) Liste unterstützter Modelle:
Aktuelle Version: http://www.sane-project.org/sane-backends.html
Entwicklungsversion: http://www.sane-project.org/lists/sa...-external.html
13.2) Weitere Howtos
http://www.pl-berichte.de/t_hardware/pscanner.html (Parallelport-Scanner)
http://tldp.org/HOWTO/Scanner-HOWTO/index.html
Änderungen:
03.12.03: Anpassung an sane 1.0.13
22.02.04: Links aktualisiert
25.09.04: Links aktualisiert, quiteinsane entfernt
07.08.05: Aktualisiert, Ergänzungen (11, Netzwerk-Scanner), Teil 2 (USB-Scanner)
11.04.06: Scanexpress 6000p (Tipp von yasuo)
30.04.06: Links aktualisiert
05.08.06: Hinweis Paket <=> selbst übersetzen
19.08.06: Aktualisiert
12.01.07: Links aktualisiert
20.03.07: Scanbuttond
24.03.08: Links aktualisiert, VueScan, Ocropus
04.04.09: Links aktualisiert
12.04.09: Links für Scannertreiber der Hersteller (HP, Epson, Kodak usw.)
Lesezeichen