[gelöst] saned masked nach Hardware-Ausfall

Einrichten des Druckers und des Drucksystems, Scannerkonfiguration und Software zum Scannen und Faxen.
mitscherdinger
Beiträge: 224
Registriert: 08.02.2006 00:57:42

Re: saned masked nach Hardware-Ausfall

Beitrag von mitscherdinger » 04.11.2020 00:47:49

Neuer Versuch:
##############################
Auf dem Server:

Code: Alles auswählen

scanimage -L
Ausgabe journalctl -f auf Server:

Code: Alles auswählen

systemd[1]: Started Session 10 of user root.
systemd[1]: Started Scanner Service ([::1]:44212).
saned[1791]: saned (AF-indep+IPv6+systemd) from sane-backends 1.0.27 starting up
saned[1791]: check_host: access by remote host: ::1
saned[1791]: init: access granted to root@::1
saned[1791]: saned exiting
systemd[1]: saned@19-::1:6566-::1:44212.service: Succeeded.
Ausgabe auf den scanimage-Befehl:

Code: Alles auswählen

device `plustek:libusb:001:003' is a Canon CanoScan N1240U/LiDE30 flatbed scanner
##############################
Auf dem Client:

Code: Alles auswählen

scanimage -L
Ausgabe journalctl -f auf Server:

Code: Alles auswählen

systemd[1]: Started Scanner Service (192.168.1.2:49820).
saned[1797]: saned (AF-indep+IPv6+systemd) from sane-backends 1.0.27 starting up
saned[1797]: check_host: access by remote host: ::ffff:192.168.1.2
saned[1797]: init: access granted to mitsch@::ffff:192.168.1.2
saned[1797]: saned exiting
systemd[1]: saned@20-192.168.1.1:6566-192.168.1.2:49820.service: Succeeded.
Gleichzeitg aber Fehlerausgabe auf dem Client:

Code: Alles auswählen

No scanners were identified. If you were expecting something different,
check that the scanner is plugged in, turned on and detected by the
sane-find-scanner tool (if appropriate). Please read the documentation
which came with this software (README, FAQ, manpages).
Das bedeutet: Der Client fragt an, der Server erlaubt, aber der Client erstellt trotzdem keine Verbindung. Das ergibt keinen Sinn.

smiler
Beiträge: 82
Registriert: 31.03.2004 21:26:06

Re: saned masked nach Hardware-Ausfall

Beitrag von smiler » 04.11.2020 11:16:11

Hallo,

ich hatte (lustigerweise) gestern uch einen Kampf auszufechten mit meinem Scanner. Als ich mich endlich durchgerungen hatte, ihn vom lokalen USB Anschluss an den "Server" zu hängen, um ihn für alle verfügbar zu machen die mit in der Wohnug hausen...

Ich habe es jetzt hinbekommen, durchblicke die ganze Geschicht aber nur so halb, ausserdem muss ich immer noch nach längerer Pause, den Stecker am Scanner ziehen, weil er sich zwar schlafen legt, aber nicht sauber aufwacht...aber egal (für den Moment)

Es war bei mir ein Rechteproblem. Und zwar läuft der saned unter dem User saned, und der braucht ja dann (irgendwie Zugriff auf das Device). Startest DU den scanner (scanimage -L) lokal als root ist es kein Problem. aber über das Netzwerk schlägt es dann gnadenlos zu.
Irgendwie werden der Scanner-Geraetedatei unter /etc nicht die richtigen rechte zugewiesen, warum auch immer...

Du musst mal schauen, als was der Scanner eingebunden wird:

Code: Alles auswählen

root@gandalf:~# scanimage -L
device `snapscan:libusb:005:010' is a AGFA SNAPSCAN e20 flatbed scanner
root@gandalf:~# groups saned
saned : saned scanner
root@gandalf:~# ls -l /dev/bus/usb/005/010
crw-rw-r--+ 1 root root 189, 521 Nov  4 11:05 /dev/bus/usb/005/010
root@gandalf:~# getfacl !$
getfacl /dev/bus/usb/005/010
getfacl: Removing leading '/' from absolute path names
# file: dev/bus/usb/005/010
# owner: root
# group: root
user::rw-
group::rw-
group:scanner:rw-
mask::rw-
other::r--

root@gandalf:~# cat /etc/udev/rules.d/65-libsane.rules 
ENV{libsane_matched}=="yes", RUN+="/bin/setfacl -m g:scanner:rw $env{DEVNAME}"
root@gandalf:~# 
Bei "getfacl" war bei die"scanner" Gruppe nicht ohne die darunter stehende udev rule nichts eingetragen. Ich habe diese Rule nach längerem googlen gefunden und sie scheint das zu tun, was sie soll. nach dem erstellen der rule sollte ein "udevadm control -R" die rules neu einlesen und dann sollte es gehen. Ich bekomme zwar immer mal wieder eine Fehlermeldung im journald:

Code: Alles auswählen

Nov 04 10:55:17 gandalf systemd-udevd[10754]: Process '/bin/setfacl -m g:scanner:rw ' failed with exit code 2.
das konnte ich aber noch nicht lokalisieren, warum dass so ist, was auch daran liegt, dass ich die ergoogelte syntax der udev rule nicht ganz durchblicke.

Gibt bestimmt noch Optimierungspotential, an der Geschichte. Evtl. sollte man mal einen Bug bei diesem Package melden damit das ins Paket rein kommt.

in Folgendem Bugeintrag ist das problem auch beschrieben:
Debian Bugreport970113
Dort ist die udev rule etwas anders (so wie ich sie kenne und verstehen) und auch sie passt die rechte an (etwas anders, aber sie funktioniert auch). Als Gruppe würde ich aber scanner anstelle von saned nehmen, weil die ist glaube ich dafür da, um den Scanner-Zugriff auf dem System zu regeln. Kommt aber am Ende auf das gleiche hinaus.

smiler

mitscherdinger
Beiträge: 224
Registriert: 08.02.2006 00:57:42

Re: saned masked nach Hardware-Ausfall

Beitrag von mitscherdinger » 04.11.2020 13:11:11

Debian Bugreport950646 zeigt, dass das Problem angeblich inzwischen behoben ist - allerdings erst bei den sane-backends 1.0.31-2, einer Version, die in "testing" aktuell ist. Gemeldet wurde aber die "stable"-Version 1.0.27-3.2 der sane-utils. Also selbst fummeln. Mal sehen, ob ich das hinbekomme.

mitscherdinger
Beiträge: 224
Registriert: 08.02.2006 00:57:42

Re: saned masked nach Hardware-Ausfall

Beitrag von mitscherdinger » 04.11.2020 14:00:16

In Debian Bugreport950646 heißt es:
[…]it seems that the scanners usb vendor id and product id should be inside /usr/lib/udev/hwdb.d/20-sane.hwdb, and should get matched to libsane_matched=yes by udev[…]
was ich nicht eintragen kann, da es in "stable" die Datei noch nicht gibt. (Mal ganz abgesehen davon, dass ich eine "Musterzeile" brauche, um das korrekt eingeben zu können…) Alternativ wird angeboten:
A workaround might be to change the user running saned in the systemd-unit file, or add the saned user to a group that could access the usb devices.
Also probiere ich es jetzt auch mal mit der Rechtevergabe des Scanners beim Einstecken mit einer udev-Regel und erstelle eine Datei namens /etc/udev/rules.d/65-scanner.rules mit dem Inhalt
SUBSYSTEM=="usb", ATTR{idVendor}=="04a9", ATTR{idProduct}=="220e",
OWNER="saned", GROUP="saned", MODE="0666"
Reboot. Client findet Scanner! Läuft! Danke!

smiler
Beiträge: 82
Registriert: 31.03.2004 21:26:06

Re: saned masked nach Hardware-Ausfall

Beitrag von smiler » 04.11.2020 14:04:07

Gut zu hören,

kleiner Tip:

anstelle von
...
Reboot.
...
kann man auch ein
udevadm control -R

machen, damit liest man die udev regeln neu ein.

Antworten