sane-usb(5) SANE Scanner Access Now Easy sane-usb(5) BEZEICHNUNG sane-usb - USB-Konfigurationstipps fur SANE BESCHREIBUNG Diese Handbuchseite enthalt Informationen daruber, wie auf Scanner mit einer USB-Schnittstelle zugegriffen werden kann. Sie konzentriert sich auf zwei Hauptthemen: Erkennen des Scanners durch den Betriebssystemkernel und dessen Verwendung mit SANE. Diese Seite ist fur die meisten USB-Backends und -Scanner anwendbar, da sie die generische sanei_usb-Schnittstelle benutzen. Es gibt allerdings eine Ausnahme: USB-Scanner, die durch das Backend sane-microtek2(5) unterstutzt werden, benotigen einen besonderen USB-Kerneltreiber. SCHNELLSTART Dies ist ein kurzer, HOWTO-artiger Abschnitt. Fur die vollstandigen Details lesen Sie die folgenden Abschnitte. Das Ziel dieses Abschnitts ist es, dafur zu sorgen, dass sane-find-scanner(1) den Scanner erkennt. Fuhren Sie sane-find-scanner(1) aus. Falls es Ihren Scanner mit den korrekten Lieferanten- und Produktkennungen auflistet, ist alles erledigt. Siehe den Abschnitt SANE-PROBLEME fur Details dazu, wie Sie weiter verfahren. sane-find-scanner(1) listet Ihren Scanner nicht auf? Funktioniert es als Root? Falls ja, gibt es ein Berechtigungsproblem. Siehe den Abschnitt LIBUSB fur Details. Auch als Root wird nichts gefunden? Prufen Sie, ob Ihr Kernel USB unterstutzt und ob Libusb installiert ist (siehe Abschnitt LIBUSB). USB-ZUGRIFFSMETHODEN Fur den Zugriff auf USB-Gerate wird die USB-Bibliothek Libusb verwendet. Es gab mal eine andere Methode zum Zugriff auf USB-Gerate: den Kernel-Scanner-Treiber. Die Kernel-Scanner-Treiber-Methode ist veraltet und sollte nicht mehr verwendet werden. Sie kann jederzeit von SANE entfernt werden. Unter Linux wurde der Kernel-Scanner-Treiber in der 2.6.*-Kernel-Serie entfernt. Diese Handbuchseite dokumentiert nur den Zugriff mit Libusb. LIBUSB SANE kann nur Libusb 0.1.6 oder neuer verwenden. Sie muss zur Bauzeit installiert sein. Moderne Linux-Distributionen und andere Betriebssysteme kommen mit Libusb. Libusb kann nur auf Ihren Scanner zugreifen, falls er nicht vom Kernel-Scanner-Treiber belegt ist. Falls Sie Libusb verwenden mochten, entladen Sie den Kerneltreiber (z.B. >>rmmod scanner<< unter Linux) oder deaktivieren Sie den Treiber beim Kompilieren eines neuen Kernels. Fur Linux muss Ihr Kernel das USB-Dateisystem (usbfs) unterstutzen. Bei Kerneln alter als 2.4.19 ersetzen Sie >>usbfs<< durch >>usbdevfs<<, da sich der Name geandert hat. Das Dateisystem muss eingehangt sein. Dies erfolgt beim Systemstart automatisch, falls /etc/fstab eine Zeile der folgenden Form enthalt: none /proc/bus/usb usbfs defaults 0 0 Die Berechtigungen fur die von Libusb verwandten Gerate mussen fur den Benutzerzugriff angepasst werden. Andernfalls kann nur Root auf SANE-Gerate zugreifen. Fur Linux befinden sich die Gerate in /proc/bus/usb/ oder in /dev/bus/usb, falls Sie Udev verwenden. Dies sind Verzeichnisse, die z.B. >>001<< (der Name des Busses) heissen und Dateien >>001<<, >>002<< usw. (die Geratedateien) enthalten. Die richtige Geratedatei kann durch Ausfuhren von scanimage -L: als root herausgefunden werden. Das Setzen von Berechtigungen mittels chmod(1) ist allerdings nicht dauerhaft. Diese werden nach einem Neustart oder nach dem erneuten Anstecken des Scanners zuruckgesetzt. Normalerweise wird udev(7) oder bei alteren Distributionen das Hotplug-Hilfswerkzeug verwendet, um dynamisches Setzen der Zugriffsberechtigungen zu unterstutzen. SANE enthalt im Verzeichnis tools/udev und tools/hotplug Udev- und Hotplug-Skripte. Diese konnen zum Setzen von Berechtigungen verwendet werden, siehe /usr/share/doc/sane/README.linux, tools/README und die README im Verzeichnis tools/hotplug fur weitere Details. Fur die BSDs heissen die von Libusb verwendeten Geratedateien /dev/ugen*. Verwenden Sie chmod(1), um die geeigneten Berechtigungen anzuwenden. SANE-PROBLEME Dieser Abschnitt nimmt an, dass Ihr Scanner durch sane-find-scanner(1) erkannt wurde. Es ist sinnlos, fortzufahren, falls dies nicht der Fall ist. Wahrend sane-find-scanner(1) in der Lage ist, einen USB-Scanner zu erkennen, wird das eigentliche Scannen nur funktionieren, falls Ihr Scanner von einem SANE-Backend unterstutzt wird. Information uber den Grad der Unterstutzung konnen Sie auf der SANE-Webseite (http://www.sane-project.org/) und in den einzelnen Backend-Handbuchseiten finden. Die Backends konnen USB-Scanner automatisch mittels Zeilen der Form >>usb<< in Konfigurationsdateien erkennen. Diese Methode erlaubt es Ihnen, Scanner uber den USB-Lieferanten und Produktnummern zu identifizieren. Die Syntax fur die Festlegung von Scannern auf diese Art lautet: usb LIEFERANT PRODUKT Hierbei ist LIEFERANT die USB-Lieferantenkennung und PRODUKT die USB-Produktkennung des Scanners. Beide Kennungen sind nichtnegative dezimale oder hexadezimale Ganzzahlen. Die korrekten Werte fur diese Felder konnen durch die Ausfuhrung von sane-find-scanner(1), dem Nachschauen im Syslog (z.B. /var/log/messages oder unter Linux durch Ausfuhren des Befehls cat /proc/bus/usb/devices ermittelt werden. Eine Konfigurationszeile konnte beispielsweise folgendermassen aussehen: usb 0x055f 0x0006 Dies hatte den Effekt, dass alle USB-Gerate im System mit einer Lieferantenkennung 0x55f und einer Produktkennung 0x0006 untersucht und vom Backend erkannt wurden. Falls Ihr Scanner nicht automatisch erkannt wird, konnte es notwendig sein, dass Sie die geeignete Backend-Konfigurationsdatei bearbeiten, bevor Sie SANE erstmalig verwenden. Fur eine detaillierte Beschreibung der Konfigurationsdatei jedes Backends lesen Sie bitte die relevante Handbuchseite des Backends (z.B. sane-mustek_usb(5) fur Mustek USB-Scanner). Legen Sie keinen symbolischen Link von /dev/scanner auf das USB-Gerat an, da dieser Link von den SCSI-Backends verwendet wird. Der Scanner konnte verwirrt werden, wenn er SCSI-Befehle empfangt. UMGEBUNGSVARIABLEN SANE_DEBUG_SANEI_USB Falls die Bibliothek mit Debug-Unterstutzung kompiliert wurde, steuert diese Umgebungsvariable die Debug-Stufe fur das USB-E/A-Subsystem. Beispielsweise bewirkt ein Wert von 128 die Anzeige samtlicher Debug-Ausgaben. Kleinere Werte reduzieren die Ausfuhrlichkeit. Werte grosser als 4 ermoglichen das Libusb-Debugging (falls verfugbar). Beispiel: export SANE_DEBUG_SANEI_USB=4. SANE_USB_WORKAROUND Falls Ihr Scanner nicht funktioniert, wenn er in einen USB3-Port eingesteckt wird, versuchen Sie, die Umgebungsvariable SANE_USB_WORKAROUND auf 1 zu setzen. Dies kann Probleme umgehen, die mit bestimmten Kernelversionen auftreten. Beispiel: export SANE_USB_WORKAROUND=1. SANE_XEROX_USB_HALT_WORKAROUND Falls Ihr alter (vor 2010) Xerox-, Samsung, HP-Scanner nur einmal erkannt wird und nachfolgende Verwendung das Neustecken des Kabels benotigen versuchen Sie, die Umgebungsvariable SANE_XEROX_USB_HALT_WORKAROUND auf 1 zu setzen. Dies kann Probleme umgehen, die mit bestimmten USB-Controllern auftreten. Beispiel: export SANE_XEROX_USB_HALT_WORKAROUND=1. SIEHE AUCH sane(7), sane-find-scanner(1), sane-"backendname"(5), sane-scsi(5) AUTOR Henning Meier-Geinitz UBERSETZUNG Die deutsche Ubersetzung dieser Handbuchseite wurde von Mario Blattermann und Helge Kreutzmann erstellt. Diese Ubersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 oder neuer bezuglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG ubernommen. Wenn Sie Fehler in der Ubersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-Mail an die Mailingliste der Ubersetzer . 14. Juli 2008 sane-usb(5)