Probably you will just have to check the Enabled property for your CUPS printer in your Print Settings. If you're using Debian 8.6, Cinnamon 2.2.16 (Linux) do this from your GUI start menu: Click Administration | Print Settings,Ĭlick Unlock (and give it your admin password),įor Ubuntu 16.04: Click System Settings | Printers, Overall, there is no need to mess around with bash scripts, cron jobs, lpadmin, cupsenable or sudo in order to re-activate CUPS queues going down erratically.Ī bunch of the solutions here didn't work for me, (e.g. A good configuration for desktop printers and/or home users. You can intentionally delay printing simply by switching off the printer. The job does not get lost when the printer is turned off. Intervals between connection attempts are 30 seconds. You want to let cupsd try indefinitely to connect to the device? Good, try this: beh:/1/0/30/socket://192.168.1.111:9100 If the job still fails, it is discarded, but the queue is not disabled.
This retries the job 3 times with 5 second delays between the attempts. This would retry a job 20 times in two minute intervals, and disable the queue only when still not succeeding. beh is a wrapper which can be applied to any CUPS backend.Īssuming your print queue currently has defined a backend of socket://192.168.1.111:9100, and it behaves in the way you don't like (being disabled by cupsd from time to time due to network connection problems). (Set it from a commandline with lpadmin -p printername -o printer-error-policy=retry-this-job).įor older versions of CUPS I'd recommend to have a look at beh, the CUPS BackEnd Handler. This setting would be noted in the nf file. This is still the default, unless you define otherwise as per above mentioned alternatives It also was default + only possible behaviour for all queues in previous versions of CUPS (the one you do want to get rid of as per your question).Īdditionally, you can set individual ErrorPolicies to each separate print queue. Stop current print queue and keep the job for future printing. Retry current job immediately and indefinitely. Retry this job after waiting for N seconds (where N is determined by nf's "JobRetryInterval" directive). Abort this job and proceed with next job in same queue You have 3 choices to tag to each queue individually: ErrorPolicy abort-job It's default setting is selected in nf, and determines how cupsd should handle print queues which do not behave as expected. More recent versions of CUPS (version 1.2 and above) come with a builtin functionality that could help here. Your problem could be tackled in different ways, depending on the version of CUPS you're running.