PDA

View Full Version : Printer not enabled, reason: /usr/lib/cups/backend/hp failed


kaza
12th October 2009, 01:51
Hello,

I suddenly discovered my HP Deskjet 6943 USB printer stopped
working (in a usual way). I'm running FC11. When I opened
System->Administration->Printing
Clicking RMB on the printer icon I saw that the "Enable" box isn't
checked. I checked it but after few seconds it became unchecked
by itself. Investigating it, I saw a message that the reason for
the printer not being enabled:

/usr/lib/cups/backend/hp failed

I periodically get updates of various components and I think
that I updated (among many other things) some packages
related to printing few days before I discovered this problem
(I print very infrequently, maybe once a month).


When I attempted to send a text file directly to the printer
as root by "cat some_file > /dev/usblp0" I've got few pages
wasted on text printed with LF but without CR so it seems the hardware
of the printer and its connection to the PC works.

Any ideas how to solve this problem?

TIA,
kaza

falko
12th October 2009, 14:55
So your printer worked before?
Did you somehow update the system before the printer stopped working? Have you tried to disable SELinux?

kaza
12th October 2009, 22:55
So your printer worked before?
Did you somehow update the system before the printer stopped working? Have you tried to disable SELinux?

Hi Falco, thanks for the help,

Yes, I did (I think) some updates related to printing,
although I'm not sure what exactly did I update.
I usually keep the printer off and disconnected and when
I turned it on and connected, indeed I've got some SELinux
messages about it not allowing some actions. (Strangely, it did
nothing in the past).
I did what I did the previous times I had to allow some particular
operations: I appended the raw SELinux messages
to a file with previously gathered ones, and (as a root)
run:

audit2allow -M local < selinus_blocking_messages
semodule -i local.pp

I had to repeat this process 3 times, each time for different action
the SELinux blocked until SELinux blocking messages stopped appearing.
Currently, the contents of "local.te" file are:

module local 1.0;

require {
type unlabeled_t;
type var_lib_t;
type mount_t;
type hplip_t;
class file { read getattr open };
class filesystem mount;
}

#============= hplip_t ==============
allow hplip_t var_lib_t:file { read getattr open };

#============= mount_t ==============
allow mount_t unlabeled_t:filesystem mount;


I'm worried by what I directly understand from the error reason message:
that the "hp" backup of the USB printer failed.
Would a real failure of the USB backend allow me sending
(as a root) some simple text to the printer by "cat some_file > /dev/usblp0" ?
The printer couls print some text so at least the hardware isn't totally
failed.

TIA for any help,
kaza

falko
13th October 2009, 16:20
Have you tried to completely disable SELinux just to check if it's working then?

kaza
14th October 2009, 07:12
Hi Falco,

Yes, I disabled SELinux and stil the same USB problem oersists.