On Thu, 26 Sep 2013, Robert Heller wrote:
OK, this is what you need to do:
Create a file named /lib/udev/rules.d/90-local.rules containing this line:
SUBSYSTEMS=="usb", ATTRS{idVendor}=="03f0", ATTRS{idProduct}=="5611", GROUP="scanner", MODE="0660"
(This means: on the USB subsystem, for a device with vendor id 03f0 (HP), and product id 5611 (Photosmart C3180), change its group to 'scanner', and its mode to 0660.)
then execute this command (probably not needed, but can't hurt):
udevadm control --reload-rules
make sure there is a group named 'scanner' and that you are a member of it (yes, you have to logout/login again to get the group update).
unplug and re plug in the device. The device file fill now be in group scanner with group rw permission and anyone in the scanner group can run hp-scan and access the scanner (note it probably won't be /dev/bus/usb/001/006, but something else (/dev/bus/usb/001/007 probably and /dev/bus/usb/001/006 will vanish).
That did the trick. I used lp instead of scanner because I'd already made myself a member of lp. Thanks.
I don't know if this will bork things if you plan to use this thing as a printer under CentOS (I am not sure what user the CUPS daemon runs as). If necessary, you might need to tweek the rules file to be compatible with CUPS or add the UID used by the CUPS daemon to 'scanner'.
Printing works fine. The only issue I've noticed is that if I leave paper in the all-in-one, it wants to copy, not just scan. I'm not sure whether that is a change. It's been an OS ago since I wanted to scan.