Modifica la politica di errore della stampante predefinita CUPS


9

Eseguo la stampa CUPS su numerosi server di applicazioni Linux multiutente. I sistemi sono RHEL o CentOS versione 4, 5 o 6. All'avvio di EL5, il server di stampa CUPS imposta automaticamente un criterio di errore che sostanzialmente disabilita la stampante in caso di errore o interruzione (disconnessione del cavo USB, errore di rete, inceppamento della carta, ecc. ). Questa è la ErrorPolicydirettiva nella stanza della stampante nel /etc/cups/printers.conffile.

<Printer backupZ4>
Info backupZ4
DeviceURI socket://backupZ4:9100
State Idle
Accepting Yes
Shared Yes
JobSheets none none
QuotaPeriod 0
PageLimit 0
KLimit 0
OpPolicy default
ErrorPolicy stop-printer
</Printer>

Normalmente cambio questo campo in ErrorPolicy retry-jobmanualmente nel file di configurazione o quando creo la stampante dalla riga di comando:

lpadmin -p backupZ4 -v socket://backupZ4:9100 -o printer-error-policy=retry-job -E 

Quando altri utenti o fornitori gestiscono il sistema di stampa, spesso dimenticano questa modifica, il che comporta la disabilitazione delle stampanti a seguito di un inceppamento della carta o di altri blip che devono essere corretti con a cupsenable.

Mi piacerebbe sapere come rendere retry-jobErrorPolicy predefinito in CUPS contro stop-printer.

Risposte:


8

C'è una richiesta di funzione che è stata chiusa con risoluzione a CUPS 1.3 proprio per questo comportamento. Link al tracker bug CUPS: http://www.cups.org/str.php?L1871

Non ho trovato documentazione per supportare questo comportamento nella documentazione online di CUPS, ma la documentazione nel tarball di origine CUPS 1.5.2 che ho scaricato indica che una dichiarazione globale "ErrorPolicy" funzionerebbe dal file di configurazione cupsd.conf.

Estratto dalla documentazione di cupsd.conf in Ubuntu CUPS 1.5.2:

CUPS 1.3 / Mac OS X 10.5

ErrorPolicy

  Esempi

     * ErrorPolicy abort-job
     * ErrorPolicy retry-job
     * ErrorPolicy stop-printer

  Descrizione

   La direttiva ErrorPolicy definisce i criteri predefiniti utilizzati quando a
   il back-end non è in grado di inviare un lavoro di stampa alla stampante.

   Sono supportati i seguenti valori:

     * abort-job: interrompe il lavoro e procede con il lavoro successivo nella coda
     * retry-job - Riprova il lavoro dopo aver atteso per N secondi; the cupsd.conf
       La direttiva JobRetryInterval controlla il valore di N
     * retry-this-job - Riprova il lavoro corrente immediatamente e indefinitamente.
     * stop-printer - Arresta la stampante e conserva il lavoro per la stampa futura;
       Questo è il valore predefinito

(Nota: la documentazione sul copyright di Apple Inc. e riformattata è leggibile.)


Sì, questo finalmente si è fatto strada in RHEL / CentOS. Sono stato in grado di apportare il cambiamento a livello globale. Si noti che ciò non sovrascrive le impostazioni nelle stampanti esistenti. Una rapida ricerca / sostituzione o sed si occupa di questo.
ewwhite

Qualche idea sul perché l'unica opzione per le classi di stampanti sia riprovare questo lavoro nell'interfaccia web di CUPS? CUPS 2.1 / Ubuntu 16.04. Le stampanti in quelle classi possono avere tutti i criteri di errore, ma la classe farà solo un nuovo tentativo?
Gnudiff

Farai meglio a farla come una domanda a sé stante. Non ho più toccato CUPS dalla fine del 2013.
Magellan,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.