Print Service Unavailable: Bad file descriptor

I am trying to setup a HP printer but whenever I go to the System Settings it says “Print Service Unavailable” and “Bad file descriptor”. I remember clicking on “Allow users to cancel jobs (not just their own)” and after that it gave me an error. I launched systemsettings5 using the terminal and this was the output (systemsettings5 didn’t crash):

libkcups: CUPS-Get-Printers last error: 1282 Bad file descriptor
libkcups: Create-Printer-Subscriptions last error: 1282 Bad file descriptor
libkcups: Request failed 1282 -1
libkcups: CUPS-Get-Printers last error: 1282 Bad file descriptor
libkcups: -1 last error: 1280 Connection refused
libkcups: IPP_INTERNAL_ERROR: clearing cookies and reconnecting
libkcups: Failed to reconnect Invalid argument
libkcups: -1 last error: 1280 Connection refused
libkcups: IPP_INTERNAL_ERROR: clearing cookies and reconnecting
libkcups: Failed to reconnect Invalid argument
libkcups: -1 last error: 1280 Connection refused
libkcups: IPP_INTERNAL_ERROR: clearing cookies and reconnecting
libkcups: Failed to reconnect Invalid argument

btw i use manjaro

6 Likes

Nevermind, I fixed it myself…
I removed the /etc/cups/cupsd.conf file and replaced it with /etc/cups/cupsd.conf.default. Then I restarted the CUPS service using sudo systemctl restart --now org.cups.cupsd.service.

3 Likes

I have the same error, your solution only works until I restart.

The same issue happened to me after installing the update. Reboot did not fix. I am not savvy enough tho to move files around as you did. hopefully, they fix with a new update.

solved it:
sudo systemctl start cups.service (to start the service once)
and
sudo systemctl enable cups.service (to permanently enable the service after reboot aka autostart)

18 Likes

Have the same issue here after the update. I tried the steps above (removing cupsd.conf and using sudo systemctl restart --now org.cups.cupsd.service .) but it returns
Failed to restart org.cups.cupsd.service…service: Unit org.cups.cupsd.service…service not found.

Found what I had to do, is the first post at the change log.

My guess is that I had that error because the services was already stopped.

1 Like

Same here.
Seems disabled is the default but the error in system settings is not as human readable as the update thread.
:slight_smile:

1 Like

I also had this issue, thanks this fixed the issue for me… quick and easy :slight_smile:

This worked for me, thanks! The recent updates appear to have stopped my printer services.

1 Like

This worked for me…

systemctl enable cups.service

and

systemctl start cups.service
5 Likes

This should be the accepted answer! Thanks a lot!

I tried that but it gave me the following:

~ >>> systemctl enable cups.service                                         
~ >>> systemctl start cups.service                                          
for cups.service failed because the control process exited with error code.
"systemctl status cups.service" and "journalctl -xe" for details.

So I did what it said:

~ >>> systemctl status cups.service                                   

● cups.service - CUPS Scheduler
     Loaded: loaded (/usr/lib/systemd/system/cups.service; enabled; vendor >
     Active: inactive (dead) (Result: exit-code) since Sun 2020-11-29 15:21>
TriggeredBy: ● cups.path
             ● cups.socket
       Docs: man:cupsd(8)
    Process: 11896 ExecStart=/usr/bin/cupsd -l (code=exited, status=1/FAILU>
   Main PID: 11896 (code=exited, status=1/FAILURE)
Nov 29 15:21:36 ALU systemd[1]: cups.service: Scheduled restart job, restar>
Nov 29 15:21:36 ALU systemd[1]: Stopped CUPS Scheduler.
Nov 29 15:21:36 ALU systemd[1]: Dependency failed for CUPS Scheduler.
Nov 29 15:21:36 ALU systemd[1]: cups.service: Job cups.service/start failed>

Then…

 ~ >>> journalctl -xe
                                                  
░░  
░░ The job identifier is 4394.
Nov 29 15:21:36 ALU systemd[1]: cups.socket: Start request repeated too qui>
Nov 29 15:21:36 ALU systemd[1]: cups.socket: Failed with result 'start-limi>
░░ Subject: Unit failed
░░ Defined-By: systemd
░░ Support: https://forum.manjaro.org/c/support
░░  
░░ The unit cups.socket has entered the 'failed' state with result 'start-l>
Nov 29 15:21:36 ALU systemd[1]: Failed to listen on CUPS Scheduler.
░░ Subject: A start job for unit cups.socket has failed
░░ Defined-By: systemd
░░ Support: https://forum.manjaro.org/c/support
░░  
░░ A start job for unit cups.socket has finished with a failure.
░░  
░░ The job identifier is 4394 and the job result is failed.
Nov 29 15:21:36 ALU systemd[1]: Dependency failed for CUPS Scheduler.
░░ Subject: A start job for unit cups.service has failed
░░ Defined-By: systemd
░░ Support: https://forum.manjaro.org/c/support
░░  
░░ A start job for unit cups.service has finished with a failure.
░░  
░░ The job identifier is 4294 and the job result is dependency.
Nov 29 15:21:36 ALU systemd[1]: cups.service: Job cups.service/start failed>

But I can’t really make anything out of it.
Also, what does the author of this post mean by saying:

Thank you, it works ! Great.

Thanks, just love this community, works every time!

Thanks huebi! It fixed the problem perfectly.

1 Like

The main problem is the renaming of cupsd to cups.
If the print service is set up with cupsd this needs to be disabled

sudo systemctl disable --now cupsd

and now enable cups

sudo systemctl enable --now cups

2 Likes

Thanks, this helped me resolve the issue.

Thanks!
If this is true, then the line in the wiki has to be changed:
https://wiki.manjaro.org/index.php?title=Printing#Enabling_Printing_Capabilities

@Error Please change the “solution flag”.

1 Like

Thank youuuu!

1 Like