2

I've upgraded to ubuntu 12.04, and I now want to run "iscan" (I've updated the packages like I did before). When I run iscan as a regular user, it says:

"COuld not send command to scanner".

But when I run "sudo iscan", everything is ok, the window of iscan is opened.

How can I fix this to run iscan without being root ?

Thank you,

PS: I'm in the "scanner" group

Pierre
  • 101
  • unpacking using ALIEN and a .RPM may be the issue? This might be solved using a .DEB file from http://linux.avasys.jp/drivers/iscan/2.28.1/ which is the most recent. – Ringtail Sep 23 '12 at 16:03
  • As of 2019 this has stopped working for me too. I can use my scanner (Epson SX535WD with skanlite but iscan fails with the above message. However, sudo iscan also fails, the adduser answer fails to help too. – pbhj Jan 17 '19 at 22:55

2 Answers2

1

I know this might be very late, but I just encountered the same issue, with my EPSON scanner. The problem is multifaceted.

The sane package has changed a lot. The lib location is changed.

You need to use dpkg -L to check if your package installed the libs into wrong places. For example /usr/lib/sane. If this is true, cd to that location then:

# ln -sfr /usr/lib/sane/libsane-epkowa* /usr/lib/x86_64-linux-gnu/sane

Since the po's scanner still working under root, he should not had this problem.

the new ubuntu updated the scanner policy.

Now a user need to be in saned and scanner group to use scanner. However, just add yourself to those group is not enough. Your scanner has to be properly owned by the scanner group. Otherwise, even you change the device permission to mode 777, it still need root to use scanner. Here is how you can automatically change the scanner's group during hotplugin.

Create a rule for the device

/etc/udev/rules.d $ cat 80-scanner.rules 
# change device EPSON owner group
ATTRS{manufacturer}=="EPSON", DRIVERS=="usb", SUBSYSTEMS=="usb", ATTRS{idVendor}=="04b8", ATTRS{idProduct}=="0142", GROUP="scanner"

Test the rule

use udevadm control –reload to load your rule. use lsusb to find your device /dev path to check if your rule is functioning, test with the follow command:

# udevadm test $(udevadm info -q path -n /dev/bus/usb/<bus>/<device>) 2>&1 | grep -i group --color

If your rule is correct you should see the group changed to scanner from root.

Finally, disconnect your scanner and reconnect it. Then try follow commands without sudo

$ sane-find-scanner
$ scanimage -L

Your scanner should functioning correctly

Wang
  • 635
1

Maybe just add yourself to the saned group aswell.

sudo adduser [YOU] saned
sudo adduser [YOU] scanner 
grtz
  • 61