You are not logged in.
I have 2 usb printers. An old hp deskjet and a new samsung ML-1640.The first works fine with hplip dirver. For the second I have installed the official Samsund driver via AUR. But CUPS don't see it. It is recognized by the kernel. I see /dev/usb/lp0 device created (root.lp rw-rw---) but still nothing in CUPS .
After searching similar problems on the net I have found a hint that changing permissions on the lp0 device can solve the problem. So chmod +rw lp0 and it WORKS.
But evidently after turn off, turn on of the printer lp0 will have its default permissions again. I tried to find the cause of the problem by comparing the system behavour with my printers. I found that it's identical. The devices are created with the same permissions.
I found also that changing the group of the device to nobody or owner to daemon have the same effect as chmod +rw (it works).
Anybody have an idea why this happen and how to fix it definitively ?
Last edited by artiom (2009-02-10 10:44:43)
Offline
Nobody here understands how CUPS works?
I see by ps -ef command a print task owned by daemon (and I suppose nobody group). I think that this print process try to access /dev/usb/lpx device. The same thing when I print to HP printer...
Last edited by artiom (2009-02-10 10:44:23)
Offline
I have added my udev rules so the lpx devices were created with daemon owner. Now it works, but I am not sure that it's a good idea.
And I still didn't understand why with the same permission CUPS prints on HP and not on SAMSUNG.
Offline
Have you tried using the instructions from linux printer database?
http://www.openprinting.org/show_printe … ng-ML-1640
Offline
Of cause I did. I can print when I change the permissions on the corresponding lp device.
Offline
Most printers of that class **do need** a slight udev tweak for making them work. Is not wrong to set a +rw on /dev/lp0, but if I were you, I would set a 0660@/dev/lp0 only if it matches your printer.
Maybe something like:
ACTION=="add", SUBSYSTEM=="usb", SYSFS{manofacturer}=="Samsung", MODE="0660", GROUP="lp"
Might help. Obviosly, you need to tweak that rule to your own needs, and **don't forget** to add yourself to the lp group.
Last edited by kjon (2009-02-10 13:08:20)
They say that if you play a Win cd backward you hear satanic messages. That's nothing! 'cause if you play it forwards, it installs windows.
Offline
Ok, thanks. It's better than to treat all printers like this. But I rather apply daemon owner on my lp0. I find it better than MODE=0666 (cause 0660 will not work in my case). And I am already in lp group.
Why they do need this udev tweak? I didn't find anything special in its detection by udev and hal.
Offline
The udev rule is just for setting the correct permissions for the device. For instance, my multifunctional and my laser printer both needs a little of love to make them work (read, right permissions.)
They say that if you play a Win cd backward you hear satanic messages. That's nothing! 'cause if you play it forwards, it installs windows.
Offline
I know, but what is incorrect in root.lp rw-rw--- ?
Offline
Nothing. Is up to the device. For me is pretty sane to have 0660 on a device, but my printer won't do its job unless it's set to 0666. So, in those cases it might be a driver issue. Nothing else comes into my mind.
They say that if you play a Win cd backward you hear satanic messages. That's nothing! 'cause if you play it forwards, it installs windows.
Offline