• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

[gelöst] Cannon Scanner wird nicht unter Leap 15.1 erkannt

stroot

Member
Habe mir den Scanner „Cannon CanoScan 9000F Mark II“ zugelegt. Nach der Installation erkennt die Scanner-Software anscheinend das Gerät nicht. Bei der Scanner-Software Scanlite kommt die Fehlermeldung „Error during device I/O“. Bei der Software XSANE lautet die Meldung „Fehler beim Lesen: Fehler während Geräte I/O“. Habe das Ganze auch mit Leap 42.3 auf einer anderen Festplatte versucht: gleiches Ergebnis.

Die Geräteerkennung ergab Folgendes:

Scanner Cinfiguration

1. Zeile
[*]Driver: Not Configured
Scanner: Canon CanoScan USB scanner (vendor=0x04a9 [Canon], product=0x190d [CanoScan]) at libusb:001:007

2. Zeile
[*]Driver: pixma
Scanner: CANON Canoscan 9000F Mark II at pixma:04A9190D

Unter „Scanner Model and Driver Selection“ habe ich folgenden Treiber ausgewählt (für 1. Zeile und auch für 2. Zeile ausprobiert):

[*]Canon CanoScan 9000F Mark II : (Package sane-backends) Driver pixma should provide complete functionality. (USB-ID 0x04a9:0x190d) [Full flatbed support up to 4800DPI (Note: flatbed does not have 9600DPI capability). Full TPU support (negatives, slides and infrared) up to 9600DPI.

Wer weiß hier Rat?
 

gorgonz

Hacker
ich bin nicht sicher, ob ich wirklich was Brauchbares für dich habe. Hab vor ca 14 Tagen ein CANON MF8550cdn unter 15.1 installiert, Musste zu diesem Zweck erst ein Installationspaket von CANON holen/installieren und konnte dann brauchbare Konfigurationsdateien finden.
 

josef-wien

Ultimate Guru
Laut http://www.sane-project.org/sane-mfgs.html#Z-CANON wird der Scanner voll unterstützt.

Gibt es einen Unterschied bei
Code:
scanimage -L
als root und als normaler Benutzer?

Hardware-Defekt?
 
OP
S

stroot

Member
Gibt es einen Unterschied bei

Code: Alles auswählen

scanimage -L

als root und als normaler Benutzer?

scanimage -L eingegeben in der bash ergibt:
[*]device `pixma:04A9190D' is a CANON Canoscan 9000F Mark II multi-function peripheral

Ich kann nicht zwischen root und user auswählen. Oder was meinst du damit?
 

manzek

Hacker
stroot schrieb:
Ich kann nicht zwischen root und user auswählen. Oder was meinst du damit?

Es gibt bei openSUSE zwei verschiedene Arten, die Konsole aufzurufen. Bei der ersten landet man direkt am Prompt, bei der zweiten (die mit dem roten Symbol) muss zunächst das Root-Passwort eingegeben werden. Alle Befehle in dieser Konsole werden als root eingegeben.
Bei der ersten Variante werden alle Befehle als User ausgeführt, der angemeldet ist. Will man trotzdem hier einen Befehl als root ausführen, kommt der Befehl sudo ins Spiel... :D
 

tomm.fa

Administrator
Teammitglied
Da ich das gleiche Modell hier habe, kann ich (falls ich es schaffe) mal am Wochenende schauen wie die Einrichtung und Funktion mit den freien und proprietären Treibern ausschaut. Ich selbst verwende VueScan.
 

tomm.fa

Administrator
Teammitglied
tomm.fa schrieb:
Da ich das gleiche Modell hier habe, kann ich (falls ich es schaffe) mal am Wochenende schauen wie die Einrichtung und Funktion mit den freien und proprietären Treibern ausschaut. Ich selbst verwende VueScan.
Bin jetzt auch dazu gekommen, nur den Treiber von SANE (pixma) verwendet und alles funktioniert ohne Probleme.



stroot schrieb:
Habe mir den Scanner „Cannon CanoScan 9000F Mark II“ zugelegt. Nach der Installation erkennt die Scanner-Software anscheinend das Gerät nicht. Bei der Scanner-Software Scanlite kommt die Fehlermeldung „Error during device I/O“. Bei der Software XSANE lautet die Meldung „Fehler beim Lesen: Fehler während Geräte I/O“. Habe das Ganze auch mit Leap 42.3 auf einer anderen Festplatte versucht: gleiches Ergebnis.
Die Kabelverbindungen sind alle in Ordnung, Originalkabel in Verwendung, Buchsen alle heile, über USB3- oder USB2-Buchse angeschlossen, Neu- oder Gebrauchtgerät?




stroot schrieb:
Die Geräteerkennung ergab Folgendes:

Scanner Cinfiguration

1. Zeile
[*]Driver: Not Configured
Scanner: Canon CanoScan USB scanner (vendor=0x04a9 [Canon], product=0x190d [CanoScan]) at libusb:001:007

2. Zeile
[*]Driver: pixma
Scanner: CANON Canoscan 9000F Mark II at pixma:04A9190D
Passt. Die zweite Zeile auswählen und einfach unten rechts im Fenster auf „Ok“ klicken.




stroot schrieb:
Unter „Scanner Model and Driver Selection“ habe ich folgenden Treiber ausgewählt (für 1. Zeile und auch für 2. Zeile ausprobiert):

[*]Canon CanoScan 9000F Mark II : (Package sane-backends) Driver pixma should provide complete functionality. (USB-ID 0x04a9:0x190d) [Full flatbed support up to 4800DPI (Note: flatbed does not have 9600DPI capability). Full TPU support (negatives, slides and infrared) up to 9600DPI.
Passt ebenfalls.




stroot schrieb:
scanimage -L eingegeben in der bash ergibt:
[*]device `pixma:04A9190D' is a CANON Canoscan 9000F Mark II multi-function peripheral
Passt ebenfalls. Meine Ausgabe (als Nutzer):
Code:
scanimage -L
device `pixma:04A9190D' is a CANON Canoscan 9000F Mark II multi-function peripheral
Code:
lsusb
Bus 004 Device 004: ID 04a9:190d Canon, Inc. CanoScan 9000F Mark II
Bus 004 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 010 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 009 Device 002: ID 1bcf:0005 Sunplus Innovation Technology Inc. Optical Mouse
Bus 009 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 008 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 007 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 003 Device 004: ID 05e3:0743 Genesys Logic, Inc. SDXC and microSDXC CardReader
Bus 003 Device 003: ID 05e3:0612 Genesys Logic, Inc. Hub
Bus 003 Device 002: ID 0bda:0411 Realtek Semiconductor Corp. 
Bus 003 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 002 Device 003: ID 05e3:0610 Genesys Logic, Inc. 4-port hub
Bus 002 Device 002: ID 0bda:5411 Realtek Semiconductor Corp. 
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 003: ID 413c:2110 Dell Computer Corp. 
Bus 001 Device 002: ID 413c:1010 Dell Computer Corp. 
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 006 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Code:
zypper se -si sane
Repository-Daten werden geladen...
Installierte Pakete werden gelesen...

S  | Name                     | Typ   | Version            | Arch   | Repository        
---+--------------------------+-------+--------------------+--------+-------------------
i+ | libKF5Sane5              | Paket | 18.12.3-lp151.1.1  | x86_64 | Haupt-Repository  
i+ | libksane-lang            | Paket | 18.12.3-lp151.1.1  | noarch | Haupt-Repository  
i+ | sane-backends            | Paket | 1.0.27-lp151.132.1 | x86_64 | Grafikrepositorium
i+ | sane-backends-32bit      | Paket | 1.0.27-lp151.5.3   | x86_64 | Haupt-Repository  
i+ | sane-backends-autoconfig | Paket | 1.0.27-lp151.132.1 | x86_64 | Grafikrepositorium
i+ | xsane                    | Paket | 0.999-lp151.2.3    | x86_64 | Haupt-Repository



Ergibt
Code:
journalctl -k | grep -Ei scan
(als Root/su ausgeführt) was auffälliges?
 
OP
S

stroot

Member
tomm.fa schrieb:

Die Kabelverbindungen sind alle in Ordnung, Originalkabel in Verwendung, Buchsen alle heile, über USB3- oder USB2-Buchse angeschlossen, Neu- oder Gebrauchtgerät?
Da ich die gleichen Schritte wie von tomm.fa beschrieben gemacht hatte, habe ich nochmals alle Kabelverbindungen/USB-Schnittstellen überprüft. Leider war der Fehler immer noch da. Ich habe dann an einer Windows-Maschine den Scanner-Treiber installiert, um zu sehen, ob der Scanner funktioniert. Siehe da, auch hier funktionierte der Sanner nicht. Hatte das Gerät gebraucht gekauft. Dumm gelaufen.
Jedenfalls Dank an Alle für die Hilfe!

Gruß stroot
 

spoensche

Moderator
Teammitglied
Wegen deinem User Problem:

Ist dein Benutzer Mitglied der Gruppe scanner?

Kannst du in einem Terminal mit

Code:
groups

herausfinden.

Du kannst mit Sane noch nicht über Netzwerk scannen, oder?

Wenn ja, dann benötigst du ein Sane Plugin, dass die Scangearmp2 Sourcen verwendet. Das Problem hatte ich mit meinem Pixma auch.

Siehe dazu: https://github.com/Ordissimo/scangearmp2.git
 

tomm.fa

Administrator
Teammitglied
spoensche schrieb:
Wegen deinem User Problem:

Ist dein Benutzer Mitglied der Gruppe scanner?

Kannst du in einem Terminal mit

Code:
groups

herausfinden.
Sollte nichts zur Sache tun, auch ich bin nicht in der Gruppe „scanner“, existiert hier auch nicht. Selbst in der Gruppe „lp“ (ja ich weiß, ist ein Scanner), was gelegentlich hilft, muss man nicht sein.
 

spoensche

Moderator
Teammitglied
tomm.fa schrieb:
Sollte nichts zur Sache tun, auch ich bin nicht in der Gruppe „scanner“, existiert hier auch nicht. Selbst in der Gruppe „lp“ (ja ich weiß, ist ein Scanner), was gelegentlich hilft, muss man nicht sein.

Ich kenne Distributionsübergreifend und seit ewig die Gruppe scanner. Ohne diese Gruppe kannst du sonst nur als root scannen. Steht aauch glaub ich so in den Man Pages von Sane.
 

josef-wien

Ultimate Guru
Auch hier gibt es durchaus distributionsspezifische Lösungen. Welche Gruppe einem Scanner zugeordnet wird und welche zusätzlichen Gruppen gegebenenfalls über ACL zugeordnet werden, wird durch eine udev-Regel definiert. Zusätzlich kann der Benutzer durch udev-acl bzw. uaccess über ACL für das Gerät berechtigt werden (und dann spielen die dem Gerät zugeordneten Gruppen keine Rolle). Mit
Code:
getfacl /dev/bus/usb/XXX/YYY
kann man die eigene Situation ermitteln.
 

spoensche

Moderator
Teammitglied
josef-wien schrieb:
Auch hier gibt es durchaus distributionsspezifische Lösungen. Welche Gruppe einem Scanner zugeordnet wird und welche zusätzlichen Gruppen gegebenenfalls über ACL zugeordnet werden, wird durch eine udev-Regel definiert. Zusätzlich kann der Benutzer durch udev-acl bzw. uaccess über ACL für das Gerät berechtigt werden (und dann spielen die dem Gerät zugeordneten Gruppen keine Rolle). Mit
Code:
getfacl /dev/bus/usb/XXX/YYY
kann man die eigene Situation ermitteln.

Dateisystem ACL's auf Gerätedateien? Wird nicht funktionieren, weil du u.a keine Extended Attributes auf Gerätedateien hast und es ein Feature von Dateisystemen ist.
 

josef-wien

Ultimate Guru
spoensche schrieb:
Dateisystem ACL's auf Gerätedateien? Wird nicht funktionieren, weil du u.a keine Extended Attributes auf Gerätedateien hast und es ein Feature von Dateisystemen ist.
Das fällt unter "fake news".

Die Realität:
Code:
getfacl /dev/bus/usb/003/002
getfacl: Entferne führende '/' von absoluten Pfadnamen
# file: dev/bus/usb/003/002
# owner: root
# group: scanner
user::rw-
user:josef:rw-
group::rw-
group:lp:rw-
mask::rw-
other::r--
 

spoensche

Moderator
Teammitglied
Mit getfacl auslesen, gibt die default Werte zurück. Versuch mal auf die Gerätedatei ACL mit setfacl zu setzen.

Mit FakeNews wollen wir es nicht übertreiben. Auch ich liege mal falsch, na und. Bin eben ein Mensch.

Nebenbei siehst du auch, dass es die Gruppe scanner gibt. Die gibts ja nicht so ohne Grund.
 

susejunky

Moderator
Teammitglied
Hallo spoensche,
spoensche schrieb:
... Nebenbei siehst du auch, dass es die Gruppe scanner gibt.
Code:
# cat /etc/os-release
NAME="openSUSE Tumbleweed"
# VERSION="20200325"
ID="opensuse-tumbleweed"
ID_LIKE="opensuse suse"
VERSION_ID="20200325"
PRETTY_NAME="openSUSE Tumbleweed"
ANSI_COLOR="0;32"
CPE_NAME="cpe:/o:opensuse:tumbleweed:20200325"
BUG_REPORT_URL="https://bugs.opensuse.org"
HOME_URL="https://www.opensuse.org/"
LOGO="distributor-logo"
#

Code:
# cat /etc/group | grep scan
#

Um meinen Canon CanoScan LiDE 700F (genesys-backend) nutzen zu können, musste ich meinen Benutzer in die Gruppe lp aufnehmen.

NACHTRAG:

Auch in meinen openSUSE Leap 15.1 und 15.0 Systemen gibt es keine Gruppe scanner. Unter openSUSE Leap 15.0 musste der Benutzer allerdings noch nicht Mitglied der Gruppe lp sein, um den Scanner nutzen zu können. Das war erst unter openSUSE Leap 15.1 erforderlich.

Viele Grüße

susejunky
 

manzek

Hacker
susejunky schrieb:
Auch in meinen openSUSE Leap 15.1 und 15.0 Systemen gibt es keine Gruppe scanner. Unter openSUSE Leap 15.0 musste der Benutzer allerdings noch nicht Mitglied der Gruppe lp sein, um den Scanner nutzen zu können. Das war erst unter openSUSE Leap 15.1 erforderlich.

Das scheint aber nicht generell überall gleich zu sein, denn ich bin mit meinem Standarduser lediglich in der Gruppe users. Und mein Scanner in einem Brother MFC8880-DN geht trotzdem.

Code:
user:~ # id user
uid=1000(user) gid=100(users) Gruppen=100(users)

Code:
user:~ # uname -r
4.12.14-lp151.28.44-default
 

josef-wien

Ultimate Guru
spoensche schrieb:
dass es die Gruppe scanner gibt
Bei mir ist es so, und es wird auch die Gruppe lp zugeordnet:
Code:
tail -3 /lib/udev/rules.d/60-libsane.rules
ENV{libsane_matched}=="yes", MODE="664", GROUP="scanner", RUN+="/usr/bin/setfacl -m group:lp:rw $env{DEVNAME}"

LABEL="libsane_rules_end

Bei openSUSE ist es nicht so, denn das Paket sane-backends von 15.1 enthält:
Code:
tail -3 /tmp/rpm_entpackt/etc/udev/rules.d/55-libsane.rules
ENV{libsane_matched}=="yes", MODE="664", GROUP="lp"

LABEL="libsane_rules_end"
manzek schrieb:
Das scheint aber nicht generell überall gleich zu sein
Es gibt also immer noch Fälle, bei denen es mit uaccess nicht funktioniert, aber mangels openSUSE kann ich dazu nichts beitragen.
_______


spoensche schrieb:
Versuch mal auf die Gerätedatei ACL mit setfacl zu setzen.
Bei mir funktioniert:
Code:
setfacl -m u:nobody:rw /dev/bus/usb/003/002
Wenn es bei Dir nicht so ist, kann ich dabei nicht helfen.
 
Oben