ubuntuusers.de

warum dauert 'scanimage _L' sehr lange bis zur Antwort?

Status: Ungelöst | Ubuntu-Version: Xubuntu 22.04 (Jammy Jellyfish)
Antworten |

Ubu-tester

Anmeldungsdatum:
7. Januar 2011

Beiträge: 2262

Wohnort: NDS

moin,

warum dauert 'scanimage _L' und andere Befehle mit 'scanimage' so lange bis eine Antwort erscheint? Ebenso ist es über 'xsane' bis dieser den Scanner erkennt. Habe diese Erscheinung bei mehreren Linux Varianten. Als Scanner habe ich ein Brother 'DCP-J1200W'. Kann man das beschleunigen?

shiro

Anmeldungsdatum:
20. Juli 2020

Beiträge: 1214

Hallo Ubu-tester,

mit "scanimage -L" und "xsane" werden erst mal alle bekannten Scanner auf Existenz abgeklappert. Dies dauert speziell dann etwas länger, wenn einige Scanner nicht eingeschaltet sind (warten auf Timeout). Wenn du dies nicht möchtest, kannst du ja "simple-scan" verwenden. Hier kann man den zu verwendenden Scanner erzwingen. Der vergleichbare Aufruf bei "xsane" verbindet nur zum gewählten Scanner nach dem Device-Scan.

Beispiel mit einem Netzwerk-Scanner "M2070W" von Samsung, der unter 192.168.178.95 zu erreichen ist:

simple-scan "Samsung:M2070Serieson192.168.178.95"

Über "simple-scan" kannst du auch einen Device-Scan erzwingen, indem du auf die kleine Refresh-Schaltfläche rechts neben dem vorgeschlagenen Gerät drückst. Das dauert dann aber genau so lange wie bei "scanimage -L" und "xsane". Den Device-Namen kannst du feststellen, wenn du dir die ".drc" Dateien im Verzeichnis "~./sane/xsane/" anschaust.

Mit "scanimage" kannst du den Devide-Scan auch überspringen. Der Device-Name ist dann aber anders (der obige Scanner heißt dann z.B. "smfp:net;192.168.146.95")

scanimage -d "smfp:net;192.168.146.95" --format=pdf -o x.pdf

Ubu-tester

(Themenstarter)

Anmeldungsdatum:
7. Januar 2011

Beiträge: 2262

Wohnort: NDS

Hallo shiro,

mein Scanner hängt an einer USB-Schnittstelle, da finde ich keine IP4-Adresse in den Files.

Ubunux

Avatar von Ubunux

Anmeldungsdatum:
12. Juni 2006

Beiträge: 17195

Schau die die Ausgabe von scanimage an.

bei mir sieht das so aus :

scanimage -L
device `genesys:libusb:001:006' is a Canon LiDE 110 flatbed scanner

dann scanne ich so:

simple-scan genesys:libusb:001:006

shiro

Anmeldungsdatum:
20. Juli 2020

Beiträge: 1214

mein Scanner hängt an einer USB-Schnittstelle, da finde ich keine IP4-Adresse in den Files.

Ob USB oder NET spielt doch keine Rolle. Du weißt doch am besten, wie du deinen Scanner konfiguriert hast.

Den Device-Namen kannst du feststellen, wenn du dir die ".drc" Dateien im Verzeichnis "~/.sane/xsane/" anschaust.

Also poste mal im Codeblock die Ausgabe von

ls -sh ~/.sane/xsane

PS: Ok, Ubunux war schneller.

Ubunux

Avatar von Ubunux

Anmeldungsdatum:
12. Juni 2006

Beiträge: 17195

Wobei mir

ls -sh ~/.sane/xsane

nicht wirklich hilft, denn:

insgesamt 24K
4,0K batch-lists  4,0K Canon:LiDE110.drc  8,0K xsane.mdf  8,0K xsane.rc

Ubu-tester

(Themenstarter)

Anmeldungsdatum:
7. Januar 2011

Beiträge: 2262

Wohnort: NDS

ls -sh ~/.sane/xsane ergibt:

insgesamt 24K
4,0K  batch-lists                   8,0K  xsane.mdf
4,0K 'Brother:DCP-J1200W(USB).drc'  8,0K  xsane.rc

scanimage -L ergibt:

device `escl:http://localhost:60000' is a Brother DCP-J1200W (USB) platen scanner
device `airscan:e0:Brother DCP-J1200W (USB)' is a eSCL Brother DCP-J1200W (USB) ip=127.0.0.1

shiro

Anmeldungsdatum:
20. Juli 2020

Beiträge: 1214

@Ubunux:

... nicht wirklich hilft, denn: ... 4,0K Canon:LiDE110.drc

Na das Ergebnis ist doch hilfreich. Somit kannst du neben der von dir beschriebenen Lösung auch wie folgt scannen:

$ # entweder
$ simple-scan "genesys:libusb:001:006"
$ # oder
$ simple-scan "Canon:LiDE110"

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

@Ubu-tester:
Deine Listings besagen, dass du

$ # entweder
$ simple-scan 'escl:http://localhost:60000'
$ # oder
$ simple-scan 'Brother:DCP-J1200W(USB)'

zum Scannen nutzen kannst ohne den Geräte-Scan abzuwarten.

Ubunux

Avatar von Ubunux

Anmeldungsdatum:
12. Juni 2006

Beiträge: 17195

shiro schrieb:

Na das Ergebnis ist doch hilfreich. Somit kannst du neben der von dir beschriebenen Lösung auch wie folgt scannen:

$ # entweder
$ simple-scan "genesys:libusb:001:006"
$ # oder
$ simple-scan "Canon:LiDE110"

Wäre schön gewesen, hätte ich vielleicht dazu schreiben sollen: alle möglichen Schreibweisen von "Canon:LiDE110" mit simple-scan funktionieren nicht.

shiro

Anmeldungsdatum:
20. Juli 2020

Beiträge: 1214

alle möglichen Schreibweisen von "Canon:LiDE110" mit simple-scan funktionieren nicht.

Oops ...

Ich muss mich entschuldigen. Bei mir funktioniert diese Aufrufart (.drc Filename) nur bei einem Scanner und bei den anderen nicht. Bei einem "simple-scan -d" bekomme ich da nach einem "sane_open (...) → SANE_STATUS_INVAL".

Bitte daher die 2. von mir beschriebene Variante (mit .drc Filename) nicht verwenden. Bei den unter "scanimage -L" ausgegebenen IDs funktionieren allerdings auch die nicht, die mit 'airscan:...' beginnen. Da muss ich wohl der Sache noch etwas auf den Grund gehen.

Ubunux

Avatar von Ubunux

Anmeldungsdatum:
12. Juni 2006

Beiträge: 17195

Alles gut. Durch dich bin ich ja erst darauf gekommen, dass man das etwas beschleunigen kann. Weil ich nach dem ersten vergeblichen Versuch auch in diese .drc Datei geschaut habe, bin ich stutzig geworden und habe mir scanimage -L angesehen und bin so dann zur Lösung für mich gekommen.

Nachrag: Zitate aus der manpage von scanimage

-d dev, --device-name=dev specifies the device to access and must be followed by a SANE device-name like ‘epson:/dev/sg0' or ‘hp:/dev/usbscanner0'. A (partial) list of available devices can be obtained with the --list-devices option (see below). If no device-name is specified explicitly, scanimage reads a device-name from the environment variable SANE_DEFAULT_DEVICE. If this variable is not set, scanimage will attempt to open the first avail‐ able device.

→ L, --list-devices

requests a (partial) list of devices that are available. The list may not be complete since some devices may be available, but are not listed in any of the configuration files (which are typically stored in directory /etc/sane.d). This is particularly the case when accessing scan‐ ners through the network. If a device is not listed in a configuration file, the only way to access it is by its full device name. You may need to consult your system administrator to find out the names of such devices.

Antworten |