LinuxCommandLibrary

cupsreject

Stop accepting new jobs for a printer

TLDR

Reject print jobs to the specified destinations

$ cupsreject [destination1 destination2 ...]
copy

Specify a different server
$ cupsreject -h [server] [destination1 destination2 ...]
copy

Specify a reason string ("Reason Unknown" by default)
$ cupsreject -r [reason] [destination1 destination2 ...]
copy

SYNOPSIS

cupreject [--help] [--hold] [--release-hold] [-E] [-U username] [-m ipp-message] [-r reject-reason] destination[s]

PARAMETERS

--help
    Display command usage information

--hold
    Hold existing jobs instead of rejecting new ones

--release-hold
    Release held jobs on the destination

-E
    Force encryption when connecting to server

-U username
    Specify alternate username for the request

-m ipp-message
    Set an IPP status message on the destination

-r reject-reason
    Set custom reject reason message

DESCRIPTION

The cupreject command stops specified printers or printer classes from accepting new print jobs in the CUPS printing system. When invoked, it sets the printer's accepting-jobs attribute to false, effectively rejecting incoming jobs until cupsaccept is run to re-enable the queue.

This is useful for maintenance, troubleshooting, or temporarily halting printing on specific queues. Jobs submitted while rejected are held or discarded based on configuration, but no new jobs are processed. The command supports multiple printers and can include a custom reject reason displayed to users via lpstat.

By default, it targets local CUPS server but options allow remote connections, IPP messages, and encryption. It modifies the printer configuration dynamically, typically in /etc/cups/printers.conf or via the CUPS API. Administrative privileges are required, usually root or lpadmin group membership.

In production environments, combine with cupsdisable for full printer pausing, as cupreject only affects job acceptance, not the printer state itself.

CAVEATS

Requires root privileges or lpadmin group membership. Does not pause the printer itself; use cupsdisable for that. Changes are not persistent across CUPS restarts unless saved in config.

EXAMPLES

cupreject -r "Out of paper" LaserJet
cupreject --hold HPLaser
Rejects jobs on LaserJet with reason; holds on HPLaser.

FILES

Modifies /etc/cups/printers.conf or runtime state via cupsd.conf directives.

HISTORY

Introduced with CUPS 1.0 in 1999 by Easy Software Products (Michael Sweet). Evolved with CUPS 2.x for systemd integration and IPP enhancements. Maintained by OpenPrinting project post-Apple acquisition.

SEE ALSO

Copied to clipboard