5 Installation eines Druckers
5.4 Installation des Scanners des Multi-Funktions-Druckers
5.4.1 Installationsversuch des Scanner-Treibers i386 unter der arm-Architektur
Allerdings funktioniert das scannen noch nicht. Genannte Befehle finden alle den Scanner nicht.
Als root findet jedoch „brsaneconfig3 -d“ den Drucker .
Devices on network
0 mfc795cw "MFC-795CW" I:192.168.xxx.xxx
ping
test mfc795cw
ping 192.168.xxx.xxx -w 10
Eingerichtet wurde der Scanner mit:
brsaneconfig3 -a name=mfc795cw model=MFC-795CW ip=192.168.xxx.xxx
sudo brsaneconfig3 -a name=mfc795cw model=MFC-795CW ip=192.168.xxx.xxx
Aus diesem Verhalten könnte vermutet werden, dass es sich um ein Problem mit den Rechte handele. Dies konnte nicht auf Anhieb gelöst werden.
Also wurden die letzen Schritte manuell im richtigen root-Account (also nicht mit sudo) noch einmal versucht durchzuführen. Als user (ohne sudo) funktionierten die Schritte nicht sei hier anzumerken.
root@cubietruck:# dpkg -i brscan3-0.2.13-1.i386.deb
root@cubietruck:# dpkg -i brscan-skey-0.2.4-1.i386.deb
root@cubietruck:/home/username/INSTALL# brsaneconfig3 -p
Der Test ergab, es ging noch nicht.
root@cubietruck:/home/username/INSTALL# brsaneconfig3 -a name=mfc795cw model=MFC-795CW ip=192.168.xxx.xxx
root@cubietruck:/home/dieterd/INSTALL# brsaneconfig3 -p
test mfc795cw
Und jetzt wird der Scanner mit dem Befehl angezeigt. Aber unter xsane immer noch Fehlanzeige.
Anbei noch einmal die Ausgaben von der Installation betreffend Brother Druckertreiber für den Scanner:
root@cubietruck:# bash linux-brprinter-installer-2.0.0-1
Input model name ->mfc-795cw
You are going to install following packages.
mfc795cwlpr-1.1.3-1.i386.deb
mfc795cwcupswrapper-1.1.3-1.i386.deb
brscan3-0.2.13-1.i386.deb
brscan-skey-0.2.4-1.i386.deb
OK? [y/N] ->y
…. hier weggelassen …....
You are going to install following packages.
brscan3-0.2.13-1.i386.deb
dpkg -i --force-all brscan3-0.2.13-1.i386.deb
(Reading database ... 91838 files and directories currently installed.)
Preparing to unpack brscan3-0.2.13-1.i386.deb ...
Unpacking brscan3 (0.2.13-1) over (0.2.13-1) ...
Setting up brscan3 (0.2.13-1) ...
You are going to install following packages.
brscan-skey-0.2.4-1.i386.deb
dpkg -i --force-all brscan-skey-0.2.4-1.i386.deb
(Reading database ... 91838 files and directories currently installed.)
Preparing to unpack brscan-skey-0.2.4-1.i386.deb ...
Unpacking brscan-skey (0.2.4-1) over (0.2.4-1) ...
Setting up brscan-skey (0.2.4-1) ...
brsaneconfig3 -a name=MFC-795CW model=MFC-795CW ip=192.168.xxx.xxx
Hit Enter/Return key.
Die Ausgaben zeigen, dass zwar der Scanner von Brother installiert wurde, aber nicht gefunden wird von den Scannprogrammen.
dieterd@cubietruck:~/INSTALL/Brother795$ scanimage -L
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).
$ cat /usr/local/Brother/sane/brsanenetdevice3.cfg
DEVICE=MFC-795CW , "MFC-795CW" , 0x4f9:0x22c , IP-ADDRESS=192.168.xxx.xxx
$ brsaneconfig3 -a name="MFC-795CW" model="MFC-795CW" ip=192.168.xxx.xxx
"MFC-795CW" is already registered.
$ sudo ping 192.168.xxx.xxx
PING 192.168.xxx.xxx (192.168.xxx.xxx) 56(84) bytes of data.
64 bytes from 192.168.xxx.xxx: icmp_seq=1 ttl=255 time=1043 ms
$ sudo service saned restart
Failed to restart saned.service: Unit saned.service is masked.
Kein positives Ergebnis.
Hier ist nichts eingetragen, wie auch beim Netbook, wo der Scanner funktioniert.
Aus kubuntuforums.net:
For network scanning you need to have your local subnet in /etc/sane.d/net.conf like this:
# localhost
192.168.1.0/24
Einen solchen Eintrag habe ich auf dem Netbook auch nicht, wo alles funktioniert.
$ sudo systemctl status saned
[sudo] password for marc:
•saned.service
Loaded: masked (/dev/null)
Active: inactive (dead)
Einen solchen Eintrag habe ich auf dem Netbook auch nicht, wo alles funktioniert.
Analog vom Netbook übernommen funktioniert hier nicht:
$ scanimage -d "brother3:net1;dev0"
scanimage: open of device brother3:net1;dev0 failed: Invalid argument
$ ls /etc/systemd/system | grep saned
Einen solchen Eintrag habe ich auf dem Netbook auch nicht, wo alles funktioniert.
Mittlerweile generierte ich noch einen alten HP-Scanner für die Verwendung und installierte dessen Treiber, die unter Linux verfügbar waren.
$ sudo apt-get install sane-hp
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Unable to locate package sane-hp
dieterd@cubietruck:~/INSTALL/Brother795$ sudo apt-cache show sane-hp
N: Unable to locate package sane-hp
E: No packages found
dieterd@cubietruck:~/INSTALL/Brother795$ sudo apt-cache search sane-hp
libsane-hpaio - HP SANE backend for multi-function peripherals
dieterd@cubietruck:~/INSTALL/Brother795$
$ sudo apt-get install libsane-hpaio
Recommended packages:
hplip
Need to get 4,001 kB of archives.
After this operation, 7,504 kB of additional disk space will be used.
$ scanimage -L
device `hp5590:libusb:001:005' is a HP 4500C/5550C Workgroup scanner
Der HP-Scanner am USB-Anschluss funktioniert das Scannen ohne Probleme auf anhieb.
$ sudo apt-get install hplip
Need to get 8,614 kB of archives.
After this operation, 17.5 MB of additional disk space will be used.
$ sudo apt-get install libsane-extras
Need to get 70.9 kB of archives.
After this operation, 215 kB of additional disk space will be used.
Texterkennung ergänzt:
$ sudo apt-get install gocr
Need to get 188 kB of archives.
After this operation, 364 kB of additional disk space will be used.
$ sudo modprobe -c | grep sane
alias nfct_helper_sane nf_conntrack_sane
Das ist auch auf beiden Rechnern identisch.
Das ist auch auf beiden Rechnern ähnlich.
Noch nicht geprüft:
$ sudo adduser saned scanner
$ groups
dieterd dialout sudo audio video plugdev netdev
Es gibt dort keine Gruppe scanner.
$ cat /etc/group
$ getent group
$ getent passwd group (Gibt auch die berechtigten Pfade aus)
$ id dieterd
sane und scanner vorhanden, aber dieterd nicht verknüpft.
$ id dieterd
$ sudo adduser saned scanner
Ist schon vorhanden.
$ sudo adduser dieterd scanner
Dieses wurde ergänzt wie auch folgende Ausgabe zeigt:
$ id dieterd
uid=1000(dieterd) gid=1000(dieterd) groups=1000(dieterd),20(dialout),27(sudo),29(audio),44(video),46(plugdev),108(netdev),117(scanner)
$ groups
$ id -Gn
Hier fehlt noch scanner in der Liste;
Dies ist nur vorhanden, wenn rebootet oder erneut eingeloggt wurde. Eine Shell aufgerufen mit „su -l <user>“ zeigt die Gruppe scanner in der Liste. Also hat es funktioniert, aber eine Neustart ist notwendig.
sudo mkdir /srv/brscan-skey
/opt/brother/scanner/brscan-skey/brscan-skey-0.2.4-0.cfg
bash /opt/brother/scanner/brscan-skey/script/scantoimage-0.2.4-1.sh
dieterd@cubietruck:~/INSTALL/Brother795$ sh: 1: gimp: not found
$ sudo apt-get install gimp
Need to get 15.5 MB/15.6 MB of archives.
After this operation, 70.3 MB of additional disk space will be used.
Do you want to continue? [Y/n] y
$ sudo systemctl --user start brscan-skey.service
Failed to get D-Bus connection: Connection refused
$ sudo systemctl start brscan-skey.service
Failed to start brscan-skey.service: Unit brscan-skey.service failed to load: No such file or directory.
sudo /etc/init.d/dbus restart
Das gibt einen Absturz in die Konsole.
Befehle um Statusausgaben der Busse zu bekommen:
$ systemctl --user
$ systemctl --system
$ busctl --user
$ busctl --system
$ systemctl status
sudo apt-get install strace
Need to get 236 kB of archives.
After this operation, 468 kB of additional disk space will be used.
strace -o strace.out -f scanimage -T
SANE_DEBUG_DLL=3 scanimage -L
cat /lib/udev/rules.d/60-libsane.rules | less
So etwas ist nicht vorhanden:
- 80-libsane.rules contains :
# Brother DCP-J752DW / added by gui
ATTRS{idVendor}=="04f9", ATTRS{idProduct}=="02e4", MODE="0660",
GROUP="lp", ENV{libsane_matched}="yes"
Auf beiden Rechnern ist identisch, dass keine solchen Angaben in der libsane.rules vorliegen.
Nun scheint eine Spur gefunden:
SANE_DEBUG_DLL=3 scanimage -L
[dll] add_backend: `hpaio' is already there
[dll] add_backend: adding backend `brother3'
[dll] load: searching backend `brother3' in `/usr/lib/arm-linux-gnueabihf/sane:/usr/lib/sane'
[dll] load: dlopen()ing `/usr/lib/sane/libsane-brother3.so.1'
[dll] load: dlopen() failed (/usr/lib/sane/libsane-brother3.so.1: cannot open shared object file: No such file or directory)
Auf dem funktionierenden Notebook gibt es auch einen „segmention fault“
qemu-i386-static /usr/lib/sane/libsane-brother3.so
qemu: uncaught target signal 11 (Segmentation fault) - core dumped
Segmentation fault
busctl --system | grep D
NAME PID PROCESS USER CONNECTION UNIT SESSION CONNECTION-NAME
org.freedesktop.DBus - - - - -
Hier ist alles leer im Vergleich zu dem Rechner mit funktionierenden Scanner.
$ brscan-skey -l
MFC-795CW : brother3:net1;dev0 : 192.168.43.128 Active
qemu: uncaught target signal 11 (Segmentation fault) - core dumped
dieterd@cubietruck:~$ brscan-skey -l
dieterd@cubietruck:~$ brscan-skey -l
sudo systemctl start dbus
dieterd@cubietruck:~$ man systemd
dieterd@cubietruck:~$ scanimage -L
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).
systemctl --failed
UNIT LOAD ACTIVE SUB DESCRIPTION
• lprng.service loaded failed failed LSB: Start lpd to allow print
• systemd-modules-load.service loaded failed failed Load Kernel Modules
LOAD = Reflects whether the unit definition was properly loaded.
ACTIVE = The high-level unit activation state, i.e. generalization of SUB.
SUB = The low-level unit activation state, values depend on unit type.
2 loaded units listed. Pass --all to see loaded but inactive units, too.
To show all installed unit files use 'systemctl list-unit-files'.
dieterd@cubietruck:~$ dpkg -l | grep lprng
rc lprng 3.8.B-2 armhf lpr/lpd printer spooling system
dieterd@cubietruck:~$ sudo apt-get -purge lprng
[sudo] password for dieterd:
E: Command line option 'p' [from -purge] is not known.
dieterd@cubietruck:~$ sudo apt-get --purge lprng
E: Command line option --purge is not understood
dieterd@cubietruck:~$ sudo apt-get install lprng
Reading package lists... Done
Building dependency tree
Reading state information... Done
Suggested packages:
magicfilter lprng-doc
The following packages will be REMOVED:
cups cups-bsd cups-client hplip printer-driver-hpcups
The following NEW packages will be installed:
lprng
0 upgraded, 1 newly installed, 5 to remove and 0 not upgraded.
Need to get 0 B/1,114 kB of archives.
After this operation, 1,454 kB disk space will be freed.
Do you want to continue? [Y/n] n
Abort.
dieterd@cubietruck:~$ sudo apt-get purge lprng
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages will be REMOVED:
lprng*
0 upgraded, 0 newly installed, 1 to remove and 0 not upgraded.
After this operation, 0 B of additional disk space will be used.
Do you want to continue? [Y/n] y
(Reading database ... 95221 files and directories currently installed.)
Removing lprng (3.8.B-2) ...
Purging configuration files for lprng (3.8.B-2) ...
dieterd@cubietruck:~$
systemctl --failed
UNIT LOAD ACTIVE SUB DESCRIPTION
• lprng.service not-found failed failed lprng.service
• systemd-modules-load.service loaded failed failed Load Kernel Modules
LOAD = Reflects whether the unit definition was properly loaded.
ACTIVE = The high-level unit activation state, i.e. generalization of SUB.
SUB = The low-level unit activation state, values depend on unit type.
2 loaded units listed. Pass --all to see loaded but inactive units, too.
To show all installed unit files use 'systemctl list-unit-files'.
cat /etc/services | grep 6566
sane-port 6566/tcp sane saned # SANE network scanner daemon
Befehl um eine Anwendung mit X11-Oberfläche als root zu starten.
$ sudo apt-get install gksu
Need to get 330 kB of archives.
After this operation, 2,211 kB of additional disk space will be used.
erstelle die Datei 55-libsane.rules
gksudo gedit /etc/udev/rules.d/55-libsane.rules
mit dem Inhalt
SYSFS{idVendor=="04f9", MODE="0666", GROUP="scanner", ENV{libsane_matched}="yes"
ATTBS{idVendor=="04f9", MODE="0666", GROUP="scanner", ENV{libsane_matched}="yes"
ldconfig
Ende Mai 2016, also etwas mehr als ein Monat später, zeigte sich nach einem „sudo apt-get update“ und „sudo apt-get upgrade“, dass einige Treiber und vor allem qemu in einer neuen Version vorlag.
The following packages will be upgraded:
imagemagick imagemagick-6.q16 imagemagick-common libarchive13 libexpat1 libidn11
libmagick++-6.q16-5 libmagickcore-6.q16-2 libmagickwand-6.q16-2 libpoppler-glib8 libpoppler-qt4-4
libpoppler46 librsvg2-2 librsvg2-common libssl-dev libssl1.0.0 libtasn1-6 linux-dtb-next-sunxi
linux-firmware-image-next-sunxi linux-headers-next-sunxi linux-image-next-sunxi
linux-jessie-root-next-cubietruck openssl poppler-utils qemu qemu-system qemu-system-arm
qemu-system-common qemu-system-mips qemu-system-misc qemu-system-ppc qemu-system-sparc
qemu-system-x86 qemu-user qemu-user-static qemu-utils
36 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Need to get 52.8 MB of archives.
After this operation, 1,093 kB of additional disk space will be used.
Somit dürfte es sich lohnen nach diesem Update zu testen, ob der Scanner nun funktioniert und ob der Drucker noch läuft. Das Ergebnis war, weiterhin negativ, also keine Änderung.
Versuch zu ergänzen:
sudo kwrite /lib/udev/rules.d/60-libsane.rules
# Brother not USB but Network generally
ATTRS{idVendor}=="04f9", ENV{libsane_matched}="yes" , MODE="0666"
sudo service saned
[ ok ] saned disabled; edit /etc/default/saned.
Defaults for the saned initscript, from sane-utils
# To enable under systemd please read README.Debian
# Set to yes to start saned under SysV
# set to yes 13.05.16 and not working;
RUN=no
# Set to the user saned should run as
RUN_AS_USER=saned
sudo systemctl start saned
Failed to start saned.service: Unit saned.service is masked.
sudo service saned start
Failed to start saned.service: Unit saned.service is masked.
Vorher
[ok] saned disabled; edit /etc/default/saned.
Nach Ruckänderung der /etc/default/saned blieb es geändert.